To see your stuff show here, enable Compatibility Server Reports in PPSSPP.
Click on a version, game, or report message to show similar entries. Hover over version to see platform info, and hover over a game title to see region and version info.
Game title |
Version |
Latest Report |
Message |
eFootball Chelito 19 |
v1.6.3 |
2025-05-16 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 01770000:00000b10 HWX T N Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 MatUp:7
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10184000:0d207002 Tex Fog Flat FragUber StenToAlpha StenKeep TFuncMod AlphaTest !=
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0d207002 Tex Fog Flat FragUber StenToAlpha StenKeep TFuncMod AlphaTest !=
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
flat in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) == int(u_alphacolorref >> 0x18u)) DISCARD;
fragColor0 = vec4(v.rgb, 0.0);
}
vs: 40000000:00000f28 HWX C T N RevN Flat Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000f28 HWX C T N RevN Flat Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10980000:0000038e Tex FragUber Depal TClampST TFuncRepl
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10980000:0000038e Tex FragUber Depal TClampST TFuncRepl
precision highp int;
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec4 u_texclamp;
uniform vec2 u_texclampoff;
uniform sampler2D pal;
uniform uint u_depal_mask_shift_off_fmt;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y));
vec2 uv = fixedcoord.xy;
vec2 uv_round;
vec2 tsize = vec2(textureSize(tex, 0).xy);
vec2 fraction;
bool bilinear = (u_depal_mask_shift_off_fmt >> 0x2Fu) != 0x0u;
if (bilinear) {
uv_round = uv * tsize - vec2(0.5, 0.5);
fraction = fract(uv_round);
uv_round = (uv_round - fraction + vec2(0.5, 0.5)) / tsize;
} else {
uv_round = uv;
}
highp vec4 t = texture(tex, uv_round);
highp vec4 t1 = textureOffset(tex, uv_round, ivec2(1, 0));
highp vec4 t2 = textureOffset(tex, uv_round, ivec2(0, 1));
highp vec4 t3 = textureOffset(tex, uv_round, ivec2(1, 1));
uint depalMask = (u_depal_mask_shift_off_fmt & 0xFFu);
uint depalShift = (u_depal_mask_shift_off_fmt >> 0x8u) & 0xFFu;
uint depalOffset = ((u_depal_mask_shift_off_fmt >> 0x10u) & 0xFFu) << 0x4u;
uint depalFmt = (u_depal_mask_shift_off_fmt >> 0x18u) & 0x3u;
uvec4 col; uint index0; uint index1; uint index2; uint index3;
switch (int(depalFmt)) {
case 0:
col = uvec4(t.rgb * vec3(31.99, 63.99, 31.99), 0);
index0 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgb * vec3(31.99, 63.99, 31.99), 0);
index1 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgb * vec3(31.99, 63.99, 31.99), 0);
index2 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgb * vec3(31.99, 63.99, 31.99), 0);
index3 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
}
break;
case 1:
col = uvec4(t.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index0 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index1 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index2 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index3 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
}
break;
case 2:
col = uvec4(t.rgba * 15.99);
index0 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 15.99);
index1 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t2.rgba * 15.99);
index2 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t3.rgba * 15.99);
index3 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
}
break;
case 3:
col = uvec4(t.rgba * 255.99);
index0 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 255.99);
index1 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t2.rgba * 255.99);
index2 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t3.rgba * 255.99);
index3 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
}
break;
};
index0 = ((index0 >> depalShift) & depalMask) | depalOffset;
t = texelFetch(pal, ivec2(index0, 0), 0);
if (bilinear && !(index0 == i |
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182992:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:2 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182992:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:2 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182992:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:2 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182992:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:2 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000012 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000012 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000920 HWX T Cull
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182982:00000000 FragUber ReplaceBlend_2A:6_B:10_Eq:0
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182982:00000000 FragUber ReplaceBlend_2A:6_B:10_Eq:0
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:01000012 Tex FragUber StenToAlpha StenUniform TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:01000012 Tex FragUber StenToAlpha StenUniform TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 00000000:00000020 Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000020 Cull
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10191d83:0000d002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest > TestDiscardToZero
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10191d83:0000d002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest > TestDiscardToZero
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) <= int(u_alphacolorref >> 0x18u)) v.a = 0.0;
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
layout(binding = 0) uniform mediump sampler2D sampler0;
in vec4 v_texcoord1;
in vec4 v_texcoord4;
in vec4 v_texcoord0;
in vec4 v_texcoord5;
in vec4 v_texcoord2;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoord3;
in vec4 v_texcoord6;
float contrast4(float x)
{
return clamp(0.865999996662139892578125 + (1.25 * (x - 0.865999996662139892578125)), 0.0500000007450580596923828125, 1.730000019073486328125);
}
void main()
{
vec3 c10 = texture(sampler0, v_texcoord1.xy).xyz;
vec3 c01 = texture(sampler0, v_texcoord4.xy).xyz;
vec3 c11 = texture(sampler0, v_texcoord0.xy).xyz;
vec3 c21 = texture(sampler0, v_texcoord5.xy).xyz;
vec3 c12 = texture(sampler0, v_texcoord2.xy).xyz;
vec3 dt = vec3(1.0);
float k1 = dot(abs(c01 - c21), dt);
float k2 = dot(abs(c10 - c12), dt);
vec3 color = ((((c10 + c12) * k1) + ((c01 + c21) * k2)) + (c11 * 0.001000000047497451305389404296875)) / vec3((2.0 * (k1 + k2)) + 0.001000000047497451305389404296875);
float x = sqrt(dot(color, color));
color.x = pow(color.x + 0.001000000047497451305389404296875, 1.2000000476837158203125);
color.y = pow(color.y + 0.001000000047497451305389404296875, 1.2000000476837158203125);
color.z = pow(color.z + 0.001000000047497451305389404296875, 1.2000000476837158203125);
float param = x;
vec3 _142 = (normalize(color * vec3(1.0)) * contrast4(param)) * 1.0;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.x = _142.x;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.y = _142.y;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.z = _142.z;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.w = 1.0;
}
vs: postshader
#version 320 es
uniform mediump vec2 u_texelDelta;
in mediump vec4 a_position;
out mediump vec4 v_texcoord0;
in mediump vec2 a_texcoord0;
out mediump vec4 v_texcoord1;
out mediump vec4 v_texcoord2;
out mediump vec4 v_texcoord4;
out mediump vec4 v_texcoord5;
out mediump vec4 v_texcoord3;
out mediump vec4 v_texcoord6;
mediump float scaleoffset;
void main()
{
scaleoffset = 0.800000011920928955078125;
mediump float x = u_texelDelta.x * scaleoffset;
mediump float y = u_texelDelta.y * scaleoffset;
gl_Position = a_position;
v_texcoord0 = a_texcoord0.xyxy;
v_texcoord1 = v_texcoord0;
v_texcoord2 = v_texcoord0;
v_texcoord4 = v_texcoord0;
v_texcoord5 = v_texcoord0;
v_texcoord1.y -= y;
v_texcoord2.y += y;
v_texcoord4.x -= x;
v_texcoord5.x += x;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
layout(binding = 0) uniform mediump sampler2D sampler0;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
void main()
{
vec3 screen = pow(texture(sampler0, v_texcoord0).xyz, vec3(2.21000003814697265625));
screen = pow(mat3(vec3(0.980000019073486328125, 0.039999999105930328369140625, 0.00999999977648258209228515625), vec3(0.20000000298023223876953125, 0.795000016689300537109375, 0.00999999977648258209228515625), vec3(-0.180000007152557373046875, 0.16500000655651092529296875, 0.980000019073486328125)) * screen, vec3(0.4545454680919647216796875));
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor = vec4(screen, 1.0);
}
vs: postshader
#version 320 es
out mediump vec2 v_texcoord0;
in mediump vec2 a_texcoord0;
in mediump vec4 a_position;
void main()
{
v_texcoord0 = a_texcoord0;
gl_Position = a_position;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: thin3d
#version 320 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
vec3 hsv = rgb2hsv(Color0.xyz);
hsv.x += TintSaturation.x;
hsv.y *= TintSaturation.y;
oColor0 = vec4(hsv2rgb(hsv), Color0.w);
oTexCoord0 = TexCoord0;
} |
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000000 FragUber ReplaceBlend_3A:6_B:7_Eq:0
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000000 FragUber ReplaceBlend_3A:6_B:7_Eq:0
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 181c2806:00000000 FragUber WriteMask ReplaceBlend_6A:0_B:10_Eq:0 (fetch)
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 181c2806:00000000 FragUber WriteMask ReplaceBlend_6A:0_B:10_Eq:0 (fetch)
precision highp int;
uniform vec3 u_blendFixB;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
inout vec4 fragColor0;
void main() {
lowp vec4 destColor = fragColor0;
vec4 v = v_color0;
v.rgb = v.rgb * destColor.rgb + destColor.rgb * u_blendFixB;
fragColor0 = v;
highp uint v32 = packUnorm4x8(fragColor0);
highp uint d32 = packUnorm4x8(destColor);
v32 = (v32 & u_colorWriteMask & 0x00FFFFFFu) | (d32 & (~u_colorWriteMask | 0xFF000000u));
fragColor0 = unpackUnorm4x8(v32);
}
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000920 HWX T Cull
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:00000002 Tex FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000002 Tex FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 00000000:00000002 THR
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000002 THR
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:01000012 Tex FragUber StenToAlpha StenUniform TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:01000012 Tex FragUber StenToAlpha StenUniform TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000920 HWX T Cull
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10980000:00000002 Tex FragUber Depal TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10980000:00000002 Tex FragUber Depal TFuncMod
precision highp int;
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform sampler2D pal;
uniform uint u_depal_mask_shift_off_fmt;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec2 uv = v_texcoord.xy;
vec2 uv_round;
vec2 tsize = vec2(textureSize(tex, 0).xy);
vec2 fraction;
bool bilinear = (u_depal_mask_shift_off_fmt >> 0x2Fu) != 0x0u;
if (bilinear) {
uv_round = uv * tsize - vec2(0.5, 0.5);
fraction = fract(uv_round);
uv_round = (uv_round - fraction + vec2(0.5, 0.5)) / tsize;
} else {
uv_round = uv;
}
highp vec4 t = texture(tex, uv_round);
highp vec4 t1 = textureOffset(tex, uv_round, ivec2(1, 0));
highp vec4 t2 = textureOffset(tex, uv_round, ivec2(0, 1));
highp vec4 t3 = textureOffset(tex, uv_round, ivec2(1, 1));
uint depalMask = (u_depal_mask_shift_off_fmt & 0xFFu);
uint depalShift = (u_depal_mask_shift_off_fmt >> 0x8u) & 0xFFu;
uint depalOffset = ((u_depal_mask_shift_off_fmt >> 0x10u) & 0xFFu) << 0x4u;
uint depalFmt = (u_depal_mask_shift_off_fmt >> 0x18u) & 0x3u;
uvec4 col; uint index0; uint index1; uint index2; uint index3;
switch (int(depalFmt)) {
case 0:
col = uvec4(t.rgb * vec3(31.99, 63.99, 31.99), 0);
index0 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgb * vec3(31.99, 63.99, 31.99), 0);
index1 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgb * vec3(31.99, 63.99, 31.99), 0);
index2 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgb * vec3(31.99, 63.99, 31.99), 0);
index3 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
}
break;
case 1:
col = uvec4(t.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index0 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index1 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index2 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index3 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
}
break;
case 2:
col = uvec4(t.rgba * 15.99);
index0 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 15.99);
index1 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t2.rgba * 15.99);
index2 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t3.rgba * 15.99);
index3 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
}
break;
case 3:
col = uvec4(t.rgba * 255.99);
index0 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 255.99);
index1 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t2.rgba * 255.99);
index2 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t3.rgba * 255.99);
index3 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
}
break;
};
index0 = ((index0 >> depalShift) & depalMask) | depalOffset;
t = texelFetch(pal, ivec2(index0, 0), 0);
if (bilinear && !(index0 == index1 && index1 == index2 && index2 == index3)) {
index1 = ((index1 >> depalShift) & depalMask) | depalOffset;
index2 = ((index2 >> depalShift) & depalMask) | depalOffset;
index3 = ((index3 >> depalShift) & depalMask) | depalOffset;
t1 = texelFetch(pal, |
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:00000012 Tex FragUber TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000012 Tex FragUber TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 00000000:00000020 Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000020 Cull
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10184000:00400000 TexProj Flat FragUber
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00400000 TexProj Flat FragUber
flat in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 40000000:00000d28 HWX C T RevN Flat Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000d28 HWX C T RevN Flat Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, -1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:0001d000 FragUber AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:0001d000 FragUber AlphaTest0 >
uniform uint u_alphacolorref;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 181c0000:00000000 FragUber WriteMask (fetch)
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 181c0000:00000000 FragUber WriteMask (fetch)
precision highp int;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
inout vec4 fragColor0;
void main() {
lowp vec4 destColor = fragColor0;
vec4 v = v_color0;
fragColor0 = v;
highp uint v32 = packUnorm4x8(fragColor0);
highp uint d32 = packUnorm4x8(destColor);
v32 = (v32 & u_colorWriteMask & 0x00FFFFFFu) | (d32 & (~u_colorWriteMask | 0xFF000000u));
fragColor0 = unpackUnorm4x8(v32);
}
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000920 HWX T Cull
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 189c002e:0000038e Tex FragUber Depal WriteMask TClampST ReplaceBlend_6A:0_B:0_Eq:5 TFuncRepl (fetch)
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 189c002e:0000038e Tex FragUber Depal WriteMask TClampST ReplaceBlend_6A:0_B:0_Eq:5 TFuncRepl (fetch)
precision highp int;
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec4 u_texclamp;
uniform vec2 u_texclampoff;
uniform sampler2D pal;
uniform uint u_depal_mask_shift_off_fmt;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
lowp vec4 destColor = fragColor0;
vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y));
vec2 uv = fixedcoord.xy;
vec2 uv_round;
vec2 tsize = vec2(textureSize(tex, 0).xy);
vec2 fraction;
bool bilinear = (u_depal_mask_shift_off_fmt >> 0x2Fu) != 0x0u;
if (bilinear) {
uv_round = uv * tsize - vec2(0.5, 0.5);
fraction = fract(uv_round);
uv_round = (uv_round - fraction + vec2(0.5, 0.5)) / tsize;
} else {
uv_round = uv;
}
highp vec4 t = texture(tex, uv_round);
highp vec4 t1 = textureOffset(tex, uv_round, ivec2(1, 0));
highp vec4 t2 = textureOffset(tex, uv_round, ivec2(0, 1));
highp vec4 t3 = textureOffset(tex, uv_round, ivec2(1, 1));
uint depalMask = (u_depal_mask_shift_off_fmt & 0xFFu);
uint depalShift = (u_depal_mask_shift_off_fmt >> 0x8u) & 0xFFu;
uint depalOffset = ((u_depal_mask_shift_off_fmt >> 0x10u) & 0xFFu) << 0x4u;
uint depalFmt = (u_depal_mask_shift_off_fmt >> 0x18u) & 0x3u;
uvec4 col; uint index0; uint index1; uint index2; uint index3;
switch (int(depalFmt)) {
case 0:
col = uvec4(t.rgb * vec3(31.99, 63.99, 31.99), 0);
index0 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgb * vec3(31.99, 63.99, 31.99), 0);
index1 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgb * vec3(31.99, 63.99, 31.99), 0);
index2 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgb * vec3(31.99, 63.99, 31.99), 0);
index3 = (col.b << 0xBu) | (col.g << 0x5u) | (col.r);
}
break;
case 1:
col = uvec4(t.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index0 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index1 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t2.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index2 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
col = uvec4(t3.rgba * vec4(31.99, 31.99, 31.99, 1.0));
index3 = (col.a << 0xFu) | (col.b << 0xAu) | (col.g << 0x5u) | (col.r);
}
break;
case 2:
col = uvec4(t.rgba * 15.99);
index0 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 15.99);
index1 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t2.rgba * 15.99);
index2 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
col = uvec4(t3.rgba * 15.99);
index3 = (col.a << 0xCu) | (col.b << 0x8u) | (col.g << 0x4u) | (col.r);
}
break;
case 3:
col = uvec4(t.rgba * 255.99);
index0 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
if (bilinear) {
col = uvec4(t1.rgba * 255.99);
index1 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t2.rgba * 255.99);
index2 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
col = uvec4(t3.rgba * 255.99);
index3 = (col.a << 0x18u) | (col.b << 0x10u) | (col.g << 0x8u) | (col.r);
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10184000:0d007002 Tex Flat FragUber StenToAlpha StenKeep TFuncMod AlphaTest !=
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0d007002 Tex Flat FragUber StenToAlpha StenKeep TFuncMod AlphaTest !=
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
flat in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb *= u_texNoAlphaMul.y;
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) == int(u_alphacolorref >> 0x18u)) DISCARD;
fragColor0 = vec4(v.rgb, 0.0);
}
vs: 40000000:0000000a THR C Flat
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:0000000a THR C Flat
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 181c2806:00000000 FragUber WriteMask ReplaceBlend_6A:0_B:10_Eq:0 (fetch)
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 181c2806:00000000 FragUber WriteMask ReplaceBlend_6A:0_B:10_Eq:0 (fetch)
precision highp int;
uniform vec3 u_blendFixB;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
inout vec4 fragColor0;
void main() {
lowp vec4 destColor = fragColor0;
vec4 v = v_color0;
v.rgb = v.rgb * destColor.rgb + destColor.rgb * u_blendFixB;
fragColor0 = v;
highp uint v32 = packUnorm4x8(fragColor0);
highp uint d32 = packUnorm4x8(destColor);
v32 = (v32 & u_colorWriteMask & 0x00FFFFFFu) | (d32 & (~u_colorWriteMask | 0xFF000000u));
fragColor0 = unpackUnorm4x8(v32);
}
vs: 00000000:00000002 THR
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000002 THR
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:00000012 Tex FragUber TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000012 Tex FragUber TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000920 HWX T Cull
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 181c0000:00000000 FragUber WriteMask (fetch)
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 181c0000:00000000 FragUber WriteMask (fetch)
precision highp int;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
inout vec4 fragColor0;
void main() {
lowp vec4 destColor = fragColor0;
vec4 v = v_color0;
fragColor0 = v;
highp uint v32 = packUnorm4x8(fragColor0);
highp uint d32 = packUnorm4x8(destColor);
v32 = (v32 & u_colorWriteMask & 0x00FFFFFFu) | (d32 & (~u_colorWriteMask | 0xFF000000u));
fragColor0 = unpackUnorm4x8(v32);
}
vs: 00000000:00000002 THR
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000002 THR
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000382 Tex FragUber TClampST ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000382 Tex FragUber TClampST ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec4 u_texclamp;
uniform vec2 u_texclampoff;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y));
vec4 t = texture(tex, fixedcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:00000012 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncAdd
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:00000012 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncAdd
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:00000020 Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000020 Cull
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:001fd002 Tex FragUber TFuncMod AlphaTest0 > ColorTest0 !=
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:001fd002 Tex FragUber TFuncMod AlphaTest0 > ColorTest0 !=
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
uvec3 unpackUVec3(highp uint x) {
return uvec3(x & 0xFFu, (x >> 0x8u) & 0xFFu, (x >> 0x10u) & 0xFFu);
}
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
if (v.a < 0.002) DISCARD;
if (v.r < 0.002 && v.g < 0.002 && v.b < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10195d83:0060d002 Tex TexProj Fog Flat FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest > TestDiscardToZero
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10195d83:0060d002 Tex TexProj Fog Flat FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest > TestDiscardToZero
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
flat in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
void main() {
vec4 t = textureProj(tex, v_texcoord);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) <= int(u_alphacolorref >> 0x18u)) v.a = 0.0;
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 40000000:00010020 TexProjPos UVMtx Flat Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00010020 TexProjPos UVMtx Flat Cull
in vec4 position;
in highp float fog;
in vec3 texcoord;
in lowp vec4 color0;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = texcoord;
v_color0 = color0;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:00000000 FragUber
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000000 FragUber
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10181d83:0000d002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10181d83:0000d002 Tex FragUber ReplaceBlend_3A:6_B:7_Eq:0 TFuncMod AlphaTest >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) <= int(u_alphacolorref >> 0x18u)) DISCARD;
v.rgb = v.rgb * splat3(v.a * 2.0);
v.a *= 2.0;
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb *= u_texNoAlphaMul.y;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10180000:00000002 Tex FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000002 Tex FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: thin3d
#version 320 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0) * oColor0; }
vs: thin3d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
vec3 hsv = rgb2hsv(Color0.xyz);
hsv.x += TintSaturation.x;
hsv.y *= TintSaturation.y;
oColor0 = vec4(hsv2rgb(hsv), Color0.w);
oTexCoord0 = TexCoord0;
} |
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10184000:0040001e Tex TexProj Flat FragUber TFuncUnk
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0040001e Tex TexProj Flat FragUber TFuncUnk
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
flat in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = textureProj(tex, v_texcoord);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = vec4(p.rgb + t.rgb, p.a * t.a);
v.rgb *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 40000000:00010d28 HWX C T RevN TexProjPos UVMtx Flat Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00010d28 HWX C T RevN TexProjPos UVMtx Flat Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mediump mat4 u_texmtx;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, -1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = mul(vec4(position, 1.0), u_texmtx).xyz * vec3(u_uvscaleoffset.xy, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 00000000:00000001 Clear
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000001 Clear
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 00000000:00040d28 HWX C T RevN Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00040d28 HWX C T RevN Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, -1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 10182982:00000000 FragUber ReplaceBlend_2A:6_B:10_Eq:0
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10182982:00000000 FragUber ReplaceBlend_2A:6_B:10_Eq:0
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
v.rgb = v.rgb * splat3(v.a * 2.0);
fragColor0 = v;
}
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000928 HWX C T Cull
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(0.0, 0.0, 1.0, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-05-16 |
Error in shader program link: info:
fs: 00000000:00000001 Clear
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000001 Clear
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
eFootball Chelito 19 |
v1.6.3 |
2025-05-15 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00000000:00200002 Tex Fog TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 00000000:00000014 Fog Tex
#version 100
precision highp float;
attribute vec4 position;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = position.w;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
eFootball Chelito 19 |
v1.6.3 |
2025-05-15 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00004000:0021d022 Tex TexAlpha Fog Flat TFuncMod AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 40000000:00000014 Fog Tex Flat
#version 100
precision highp float;
attribute vec4 position;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = position.w;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
eFootball Asia 2023 |
v1.18.1 |
2025-05-15 |
Error in shader program link: info: Variable u_texelDelta has unmatched precision qualifier in different shaders
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
bvec4 _and_(bvec4 A, bvec4 B)
{
return bvec4(A.x && B.x, A.y && B.y, A.z && B.z, A.w && B.w);
}
vec4 df(vec4 A, vec4 B)
{
return abs(A - B);
}
bvec4 close(vec4 A, vec4 B)
{
vec4 param = A;
vec4 param_1 = B;
return lessThan(df(param, param_1), vec4(15.0));
}
bvec4 _or_(bvec4 A, bvec4 B)
{
return bvec4(A.x || B.x, A.y || B.y, A.z || B.z, A.w || B.w);
}
vec4 weighted_distance(vec4 a, vec4 b, vec4 c, vec4 d, vec4 e, vec4 f, vec4 g, vec4 h)
{
vec4 param = a;
vec4 param_1 = b;
vec4 param_2 = a;
vec4 param_3 = c;
vec4 param_4 = d;
vec4 param_5 = e;
vec4 param_6 = d;
vec4 param_7 = f;
vec4 param_8 = g;
vec4 param_9 = h;
return (((df(param, param_1) + df(param_2, param_3)) + df(param_4, param_5)) + df(param_6, param_7)) + (df(param_8, param_9) * 4.0);
}
vec3 processxBR(vec3 color)
{
vec2 pS = vec2(1.0) / u_texelDelta;
vec2 fp = fract(v_texcoord0 * pS);
vec2 TexCoord_0 = v_texcoord0 - (fp * u_pixelDelta);
vec2 dx = vec2(u_texelDelta.x, 0.0);
vec2 dy = vec2(0.0, u_texelDelta.y);
vec2 y2 = dy + dy;
vec2 x2 = dx + dx;
vec3 A = texture(sampler0, (TexCoord_0 - dx) - dy).xyz;
vec3 B = texture(sampler0, TexCoord_0 - dy).xyz;
vec3 C = texture(sampler0, (TexCoord_0 + dx) - dy).xyz;
vec3 D = texture(sampler0, TexCoord_0 - dx).xyz;
vec3 E = texture(sampler0, TexCoord_0).xyz;
vec3 F = texture(sampler0, TexCoord_0 + dx).xyz;
vec3 G = texture(sampler0, (TexCoord_0 - dx) + dy).xyz;
vec3 H = texture(sampler0, TexCoord_0 + dy).xyz;
vec3 I = texture(sampler0, (TexCoord_0 + dx) + dy).xyz;
vec3 A1 = texture(sampler0, (TexCoord_0 - dx) - y2).xyz;
vec3 C1 = texture(sampler0, (TexCoord_0 + dx) - y2).xyz;
vec3 A0 = texture(sampler0, (TexCoord_0 - x2) - dy).xyz;
vec3 G0 = texture(sampler0, (TexCoord_0 - x2) + dy).xyz;
vec3 C4 = texture(sampler0, (TexCoord_0 + x2) - dy).xyz;
vec3 I4 = texture(sampler0, (TexCoord_0 + x2) + dy).xyz;
vec3 G5 = texture(sampler0, (TexCoord_0 - dx) + y2).xyz;
vec3 I5 = texture(sampler0, (TexCoord_0 + dx) + y2).xyz;
vec3 B1 = texture(sampler0, TexCoord_0 - y2).xyz;
vec3 D0 = texture(sampler0, TexCoord_0 - x2).xyz;
vec3 H5 = texture(sampler0, TexCoord_0 + y2).xyz;
vec3 F4 = texture(sampler0, TexCoord_0 + x2).xyz;
vec4 b = vec4(dot(B, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(D, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(H, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(F, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 c = vec4(dot(C, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(A, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(G, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(I, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 d = vec4(b.y, b.z, b.w, b.x);
vec4 e = vec4(dot(E, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 f = vec4(b.w, b.x, b.y, b.z);
vec4 g = vec4(c.z, c.w, c.x, c.y);
vec4 h = vec4(b.z, b.w, b.x, b.y);
vec4 i = vec4(c.w, c.x, c.y, c.z);
vec4 i4 = vec4(dot(I4, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(C1, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)) |
eFootball PES 2023 By Shan Channel |
v1.18.1 |
2025-05-15 |
Error in shader program link: info: Variable u_texelDelta has unmatched precision qualifier in different shaders
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
bvec4 _and_(bvec4 A, bvec4 B)
{
return bvec4(A.x && B.x, A.y && B.y, A.z && B.z, A.w && B.w);
}
vec4 df(vec4 A, vec4 B)
{
return abs(A - B);
}
bvec4 close(vec4 A, vec4 B)
{
vec4 param = A;
vec4 param_1 = B;
return lessThan(df(param, param_1), vec4(15.0));
}
bvec4 _or_(bvec4 A, bvec4 B)
{
return bvec4(A.x || B.x, A.y || B.y, A.z || B.z, A.w || B.w);
}
vec4 weighted_distance(vec4 a, vec4 b, vec4 c, vec4 d, vec4 e, vec4 f, vec4 g, vec4 h)
{
vec4 param = a;
vec4 param_1 = b;
vec4 param_2 = a;
vec4 param_3 = c;
vec4 param_4 = d;
vec4 param_5 = e;
vec4 param_6 = d;
vec4 param_7 = f;
vec4 param_8 = g;
vec4 param_9 = h;
return (((df(param, param_1) + df(param_2, param_3)) + df(param_4, param_5)) + df(param_6, param_7)) + (df(param_8, param_9) * 4.0);
}
vec3 processxBR(vec3 color)
{
vec2 pS = vec2(1.0) / u_texelDelta;
vec2 fp = fract(v_texcoord0 * pS);
vec2 TexCoord_0 = v_texcoord0 - (fp * u_pixelDelta);
vec2 dx = vec2(u_texelDelta.x, 0.0);
vec2 dy = vec2(0.0, u_texelDelta.y);
vec2 y2 = dy + dy;
vec2 x2 = dx + dx;
vec3 A = texture(sampler0, (TexCoord_0 - dx) - dy).xyz;
vec3 B = texture(sampler0, TexCoord_0 - dy).xyz;
vec3 C = texture(sampler0, (TexCoord_0 + dx) - dy).xyz;
vec3 D = texture(sampler0, TexCoord_0 - dx).xyz;
vec3 E = texture(sampler0, TexCoord_0).xyz;
vec3 F = texture(sampler0, TexCoord_0 + dx).xyz;
vec3 G = texture(sampler0, (TexCoord_0 - dx) + dy).xyz;
vec3 H = texture(sampler0, TexCoord_0 + dy).xyz;
vec3 I = texture(sampler0, (TexCoord_0 + dx) + dy).xyz;
vec3 A1 = texture(sampler0, (TexCoord_0 - dx) - y2).xyz;
vec3 C1 = texture(sampler0, (TexCoord_0 + dx) - y2).xyz;
vec3 A0 = texture(sampler0, (TexCoord_0 - x2) - dy).xyz;
vec3 G0 = texture(sampler0, (TexCoord_0 - x2) + dy).xyz;
vec3 C4 = texture(sampler0, (TexCoord_0 + x2) - dy).xyz;
vec3 I4 = texture(sampler0, (TexCoord_0 + x2) + dy).xyz;
vec3 G5 = texture(sampler0, (TexCoord_0 - dx) + y2).xyz;
vec3 I5 = texture(sampler0, (TexCoord_0 + dx) + y2).xyz;
vec3 B1 = texture(sampler0, TexCoord_0 - y2).xyz;
vec3 D0 = texture(sampler0, TexCoord_0 - x2).xyz;
vec3 H5 = texture(sampler0, TexCoord_0 + y2).xyz;
vec3 F4 = texture(sampler0, TexCoord_0 + x2).xyz;
vec4 b = vec4(dot(B, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(D, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(H, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(F, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 c = vec4(dot(C, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(A, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(G, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(I, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 d = vec4(b.y, b.z, b.w, b.x);
vec4 e = vec4(dot(E, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 f = vec4(b.w, b.x, b.y, b.z);
vec4 g = vec4(c.z, c.w, c.x, c.y);
vec4 h = vec4(b.z, b.w, b.x, b.y);
vec4 i = vec4(c.w, c.x, c.y, c.z);
vec4 i4 = vec4(dot(I4, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(C1, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)) |
eFootball Chelito 19 |
v1.6.3 |
2025-05-10 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000002 Tex Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
FIFA 22 By Tutoriales Bendezu |
v1.6.3 |
2025-05-10 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000022 Tex TexAlpha Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
fragColor0 = v;
}
vs: 40000000:00000910 HWX T Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
EA-Sports FC PC-V |
v1.6.3 |
2025-05-10 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00000000:0001d000 AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D testtex;
varying vec4 v_color0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) discard;
gl_FragColor = v;
}
vs: 00000000:0000000a THR C
#version 100
precision highp float;
attribute vec4 position;
attribute lowp vec4 color0;
uniform mat4 u_proj_through;
varying lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball Euro y Copa America By T. Bendezu |
v1.18.1 |
2025-05-09 |
Error in shader program link: info: L0001 The fragment floating-point variable u_texelDelta does not match the vertex variable u_texelDelta.
The precision does not match.
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
uniform vec2 u_texelDelta;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
vec3 processGAUSS_S(inout vec3 color)
{
float GAUSSS_SPAN_MAX = 1.5;
float GAUSSS_KERNEL_SIZE = 5.0;
vec2 offsetS = (u_pixelDelta * GAUSSS_SPAN_MAX) / vec2(GAUSSS_KERNEL_SIZE);
vec3 cGaussS0 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -2.0))).xyz * 1.0;
vec3 cGaussS1 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0))).xyz * 3.0;
vec3 cGaussS2 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -1.0))).xyz * 8.0;
vec3 cGaussS3 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, -1.0))).xyz * 3.0;
vec3 cGaussS4 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-2.0, 0.0))).xyz * 1.0;
vec3 cGaussS5 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 0.0))).xyz * 8.0;
vec3 cGaussS6 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0))).xyz * 10.0;
vec3 cGaussS7 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, 0.0))).xyz * 8.0;
vec3 cGaussS8 = texture(sampler0, v_texcoord0 + (offsetS * vec2(2.0, 0.0))).xyz * 1.0;
vec3 cGaussS9 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 1.0))).xyz * 3.0;
vec3 cGaussS10 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 1.0))).xyz * 8.0;
vec3 cGaussS11 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0))).xyz * 3.0;
vec3 cGaussS12 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 2.0))).xyz * 1.0;
color = (((((((((((cGaussS0 + cGaussS1) + cGaussS2) + cGaussS3) + cGaussS4) + cGaussS5) + cGaussS6) + cGaussS7) + cGaussS8) + cGaussS9) + cGaussS10) + cGaussS11) + cGaussS12;
color /= vec3(58.0);
return color;
}
vec3 processSHADEBOOST(inout vec3 color)
{
float sat = 1.89999997615814208984375;
float brt = 0.699999988079071044921875;
float con = 1.2000000476837158203125;
float AvgLumR = 1.5;
float AvgLumG = 1.5;
float AvgLumB = 1.5;
if (SEPIA == 1)
{
sat = 0.00999999977648258209228515625;
brt = 1.75;
con = 1.0;
AvgLumR = 0.439999997615814208984375;
AvgLumG = 0.2599999904632568359375;
AvgLumB = 0.07999999821186065673828125;
}
if (GRAYSCALE == 1)
{
sat = 0.0;
brt = 1.0;
con = 1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (NEGATIVE == 1)
{
sat = 1.0;
brt = 1.0;
con = -1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (PSPCOLORS == 1)
{
sat = 1.0;
brt = 1.0;
con = 1.0;
AvgLumR = 0.959299981594085693359375;
AvgLumG = 1.0738999843597412109375;
AvgLumB = 1.46039998531341552734375;
}
vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB);
vec3 conRGB = vec3(0.5);
vec3 brtColor = color * brt;
vec3 intensity = vec3(((brtColor.x * 0.2125000059604644775390625) + (brtColor.y * 0.7153999805450439453125)) + (brtColor.z * 0.07209999859333038330078125));
vec3 satColor = mix(intensity, brtColor, vec3(sat));
vec3 conColor = mix(conRGB, satColor, vec3(con));
vec3 mixColor = AvgLumin * conColor;
color = mixColor;
return color;
}
void main()
{
SEPIA = 0;
GRAYSCALE = 0;
NEGATIVE = 0;
PSPCOLORS = 5;
vec3 color = texture(sampler0, v_texcoord0).xyz;
vec3 param = color;
vec3 _311 = processGAUSS_S(param);
color = _311;
vec3 param_1 = color;
vec3 _314 = processSHADEBOOST(param_1);
color = _314;
_RESERVED_IDENTIFIER_FIXUP_gl_Fr |
eFootball Chelito 19 |
v1.6.3 |
2025-05-08 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:0001d002 Tex Flat TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
E FOOTBALL ASIA 2021 "By TRMD" |
v1.10.3 |
2025-05-07 |
Error in shader program link: info: cannot find a matched output for input v_texcoordNC0
cannot find a matched output for input v_texcoordNC1
cannot find a matched output for input v_texcoordNC2
cannot find a matched output for input v_texcoordNC3
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Awas ngelag! :u
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 1 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 2.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 0.98 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define KIMOCHI 1 //Senpai!
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.69 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//================
#define ACARTOON 0 //ON:1/OFF:0 Advanced Cartoon from Guest |
eFootball Chelito 19 |
v1.6.3 |
2025-05-06 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000022 Tex TexAlpha Flat TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
fragColor0 = v;
}
vs: 40000000:00000910 HWX T Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
eFootball Chelito 19 |
v1.18.1 |
2025-05-05 |
Error in shader program link: info: L0001 The fragment shader uniform floating-point u_pixelDelta does not match the vertex shader uniform floating-point u_pixelDelta.
The precision does not match.
fs: postshader
#version 310 es
precision mediump float;
precision highp int;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
in vec2 omega;
vec3 processSHADEBOOST(inout vec3 color)
{
float sat = 1.2000000476837158203125;
float brt = 1.0;
float con = 1.0;
float AvgLumR = 1.5;
float AvgLumG = 1.5;
float AvgLumB = 1.5;
if (false)
{
sat = 0.10999999940395355224609375;
brt = 0.87000000476837158203125;
con = 1.2000000476837158203125;
AvgLumR = 1.1993000507354736328125;
AvgLumG = 0.959999978542327880859375;
AvgLumB = 0.6754000186920166015625;
}
if (false)
{
sat = 0.0;
brt = 1.0;
con = 1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (false)
{
sat = 1.0;
brt = 1.0;
con = -1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (false)
{
sat = 1.0;
brt = 1.0;
con = 1.0;
AvgLumR = 0.959299981594085693359375;
AvgLumG = 1.0738999843597412109375;
AvgLumB = 1.46039998531341552734375;
}
vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB);
vec3 conRGB = vec3(0.5);
vec3 brtColor = color * brt;
vec3 intensity = vec3(((brtColor.x * 0.2125000059604644775390625) + (brtColor.y * 0.7153999805450439453125)) + (brtColor.z * 0.07209999859333038330078125));
vec3 satColor = mix(intensity, brtColor, vec3(sat));
vec3 conColor = mix(conRGB, satColor, vec3(con));
vec3 mixColor = AvgLumin * conColor;
color = mixColor;
if (false)
{
color = color.xzy;
}
if (false)
{
color = color.zyx;
}
if (true)
{
color = color.zxy;
}
if (false)
{
color = color.yxz;
}
if (true)
{
color = color.yzx;
}
return color;
}
void main()
{
vec3 color = texture(sampler0, v_texcoord0).xyz;
vec3 param = color;
vec3 _131 = processSHADEBOOST(param);
color = _131;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.x = color.x;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.y = color.y;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.z = color.z;
_RESERVED_IDENTIFIER_FIXUP_gl_FragColor.w = 1.0;
}
vs: postshader
#version 310 es
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
out vec2 v_texcoord0;
in vec2 a_texcoord0;
in vec4 a_position;
out vec4 v_texcoord1;
out vec4 v_texcoord2;
out vec4 v_texcoord3;
out vec4 v_texcoord4;
out vec2 v_texcoord5;
void main()
{
v_texcoord0 = a_texcoord0 + vec2(9.9999999747524270787835121154785e-07);
gl_Position = a_position;
v_texcoord1 = a_texcoord0.xyxy + (vec4(-0.5, -0.5, -1.5, -1.5) * u_texelDelta.xyxy);
v_texcoord2 = a_texcoord0.xyxy + (vec4(0.5, -0.5, 1.5, -1.5) * u_texelDelta.xyxy);
v_texcoord3 = a_texcoord0.xyxy + (vec4(-0.5, 0.5, -1.5, 1.5) * u_texelDelta.xyxy);
v_texcoord4 = a_texcoord0.xyxy + (vec4(0.5, 0.5, 1.5, 1.5) * u_texelDelta.xyxy);
v_texcoord5 = (vec2(1.0) / u_pixelDelta) * 3.1415927410125732421875;
}
|
EA-Sports FC PC-V |
v1.6.3 |
2025-05-03 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFottball Hend Asean |
v1.18.1 |
2025-05-02 |
Error in shader program link: info: L0001 The fragment floating-point variable u_texelDelta does not match the vertex variable u_texelDelta.
The precision does not match.
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
uniform vec2 u_texelDelta;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
vec3 processGAUSS_S(inout vec3 color)
{
float GAUSSS_SPAN_MAX = 1.5;
float GAUSSS_KERNEL_SIZE = 5.0;
vec2 offsetS = (u_pixelDelta * GAUSSS_SPAN_MAX) / vec2(GAUSSS_KERNEL_SIZE);
vec3 cGaussS0 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -2.0))).xyz * 1.0;
vec3 cGaussS1 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0))).xyz * 3.0;
vec3 cGaussS2 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -1.0))).xyz * 8.0;
vec3 cGaussS3 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, -1.0))).xyz * 3.0;
vec3 cGaussS4 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-2.0, 0.0))).xyz * 1.0;
vec3 cGaussS5 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 0.0))).xyz * 8.0;
vec3 cGaussS6 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0))).xyz * 10.0;
vec3 cGaussS7 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, 0.0))).xyz * 8.0;
vec3 cGaussS8 = texture(sampler0, v_texcoord0 + (offsetS * vec2(2.0, 0.0))).xyz * 1.0;
vec3 cGaussS9 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 1.0))).xyz * 3.0;
vec3 cGaussS10 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 1.0))).xyz * 8.0;
vec3 cGaussS11 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0))).xyz * 3.0;
vec3 cGaussS12 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 2.0))).xyz * 1.0;
color = (((((((((((cGaussS0 + cGaussS1) + cGaussS2) + cGaussS3) + cGaussS4) + cGaussS5) + cGaussS6) + cGaussS7) + cGaussS8) + cGaussS9) + cGaussS10) + cGaussS11) + cGaussS12;
color /= vec3(58.0);
return color;
}
vec3 processSHADEBOOST(inout vec3 color)
{
float sat = 1.89999997615814208984375;
float brt = 0.699999988079071044921875;
float con = 1.2000000476837158203125;
float AvgLumR = 1.5;
float AvgLumG = 1.5;
float AvgLumB = 1.5;
if (SEPIA == 1)
{
sat = 0.00999999977648258209228515625;
brt = 1.75;
con = 1.0;
AvgLumR = 0.439999997615814208984375;
AvgLumG = 0.2599999904632568359375;
AvgLumB = 0.07999999821186065673828125;
}
if (GRAYSCALE == 1)
{
sat = 0.0;
brt = 1.0;
con = 1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (NEGATIVE == 1)
{
sat = 1.0;
brt = 1.0;
con = -1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (PSPCOLORS == 1)
{
sat = 1.0;
brt = 1.0;
con = 1.0;
AvgLumR = 0.959299981594085693359375;
AvgLumG = 1.0738999843597412109375;
AvgLumB = 1.46039998531341552734375;
}
vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB);
vec3 conRGB = vec3(0.5);
vec3 brtColor = color * brt;
vec3 intensity = vec3(((brtColor.x * 0.2125000059604644775390625) + (brtColor.y * 0.7153999805450439453125)) + (brtColor.z * 0.07209999859333038330078125));
vec3 satColor = mix(intensity, brtColor, vec3(sat));
vec3 conColor = mix(conRGB, satColor, vec3(con));
vec3 mixColor = AvgLumin * conColor;
color = mixColor;
return color;
}
void main()
{
SEPIA = 0;
GRAYSCALE = 0;
NEGATIVE = 0;
PSPCOLORS = 5;
vec3 color = texture(sampler0, v_texcoord0).xyz;
vec3 param = color;
vec3 _311 = processGAUSS_S(param);
color = _311;
vec3 param_1 = color;
vec3 _314 = processSHADEBOOST(param_1);
color = _314;
_RESERVED_IDENTIFIER_FIXUP_gl_Fr |
eFootball Chelito 19 |
v1.12.2 |
2025-05-01 |
Error in shader program link: info: (unknown reason)
fs: 00000000:0001d000 AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Mali-G57 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D testtex;
in lowp vec4 v_color0;
out vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Mali-G57 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
void main() {
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
PES 2019 BY CHELITO 19 |
v1.6.3 |
2025-05-01 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000914 HWX T Fog Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
GODS EATER BURST |
v1.18.1-945-gb0182ed0e6 |
2025-05-01 |
Error in shader program link: info: ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
fs: 10180000:06017002 Tex FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest0 !=
#version 320 es
#extension GL_EXT_blend_func_extended : require
// Driver: Adreno (TM) 640 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:06017002 Tex FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest0 !=
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t;
v.rgb *= u_texNoAlphaMul.y;
if (v.a < 0.002) DISCARD;
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 00000000:00000002 THR
#version 320 es
// Driver: Adreno (TM) 640 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000002 THR
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
GODS EATER BURST |
v1.18.1-945-gb0182ed0e6 |
2025-05-01 |
Error in shader program link: info: ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
fs: 10180000:06200802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod
#version 320 es
#extension GL_EXT_blend_func_extended : require
// Driver: Adreno (TM) 640 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:06200802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
#version 320 es
// Driver: Adreno (TM) 640 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = ((u_lightControl & (1u << 0x14u)) != 0x0u) ? color0 : u_matambientalpha;
vec3 diffuseColor = ((u_lightControl & (1u << 0x15u)) != 0x0u) ? color0.rgb : u_matdiffuse;
vec3 specularColor = ((u_lightControl & (1u << 0x16u)) != 0x0u) ? color0.rgb : u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
uint comp; uint type; float attenuation;
if ((u_lightControl & 0x1u) != 0x0u) {
comp = (u_lightControl >> 0x04u) & 0x3u;
type = (u_lightControl >> 0x06u) & 0x3u;
toLight = u_lightpos0;
|
GODS EATER BURST |
v1.18.1-945-gb0182ed0e6 |
2025-05-01 |
Error in shader program link: info: ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
fs: 10180000:0621d802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest0 >
#version 320 es
#extension GL_EXT_blend_func_extended : require
// Driver: Adreno (TM) 640 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:0621d802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
if (v.a < 0.002) DISCARD;
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
#version 320 es
// Driver: Adreno (TM) 640 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = ((u_lightControl & (1u << 0x14u)) != 0x0u) ? color0 : u_matambientalpha;
vec3 diffuseColor = ((u_lightControl & (1u << 0x15u)) != 0x0u) ? color0.rgb : u_matdiffuse;
vec3 specularColor = ((u_lightControl & (1u << 0x16u)) != 0x0u) ? color0.rgb : u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
uint comp; uint type; float attenuation;
if ((u_lightControl & 0x1u) != 0x0u) {
comp = (u_lightControl >> 0x0 |
GODS EATER BURST |
v1.18.1-945-gb0182ed0e6 |
2025-05-01 |
Error in shader program link: info: ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
fs: 10180000:0620d802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest >
#version 320 es
#extension GL_EXT_blend_func_extended : require
// Driver: Adreno (TM) 640 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:0620d802 Tex Fog LM FragUber StenToAlphaDual Sten0 TFuncMod AlphaTest >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
uniform uint u_alphacolormask;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); }
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlphaMul.x);
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) <= int(u_alphacolorref >> 0x18u)) DISCARD;
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
#version 320 es
// Driver: Adreno (TM) 640 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = ((u_lightControl & (1u << 0x14u)) != 0x0u) ? color0 : u_matambientalpha;
vec3 diffuseColor = ((u_lightControl & (1u << 0x15u)) != 0x0u) ? color0.rgb : u_matdiffuse;
vec3 specularColor = ((u_lightControl & (1u << 0x16u)) != 0x0u) ? color0.rgb : u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distanc |
eFootball PES 2023 "SNE" |
v1.6.3 |
2025-04-30 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball PES 2023 "SNE" |
v1.6.3 |
2025-04-30 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 >
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
EA-Sports FC PC-V |
v1.6.3 |
2025-04-29 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:0001d000 AlphaTest0 >
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
out vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
GTA: Liberty City Stories |
v1.18.1 |
2025-04-28 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP8, 1f + @TMP9
fs: 00182a82:00000c22 Tex LM TexAlpha Double ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00182a82:00000c22 Tex LM TexAlpha Double ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 01000000:80120b21 HWX T N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80120b21 HWX T N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
uint comp; uint type; float attenuation;
if ((u_lightControl & 0x1u) != 0x0u) {
comp = (u_lightControl >> 0x04u) & 0x3u;
type = (u_lightControl >> 0x06u) & 0x3u;
toLight = u_lightpos0;
if (type != 0x0u) {
toLight -= worldpos;
distance = length(toLight);
toLight /= distance;
attenuation = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
if (type == 0x01u) {
lightSca |
GTA: Liberty City Stories |
v1.18.1 |
2025-04-28 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP8, 1f + @TMP9
fs: 00182a82:00000c02 Tex LM TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00182a82:00000c02 Tex LM TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 01000000:80120b21 HWX T N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80120b21 HWX T N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
uint comp; uint type; float attenuation;
if ((u_lightControl & 0x1u) != 0x0u) {
comp = (u_lightControl >> 0x04u) & 0x3u;
type = (u_lightControl >> 0x06u) & 0x3u;
toLight = u_lightpos0;
if (type != 0x0u) {
toLight -= worldpos;
distance = length(toLight);
toLight /= distance;
attenuation = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
if (type == 0x01u) {
lightScale = attenuation;
} else {
angle = dot(u |
GTA: Liberty City Stories |
v1.18.1 |
2025-04-28 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP8, 1f + @TMP9
fs: 00182a82:00000c22 Tex LM TexAlpha Double ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00182a82:00000c22 Tex LM TexAlpha Double ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 01000000:80120321 HWX N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80120321 HWX N LM UVEnv Light: LightUberShader 0: c:0 t:0 1: c:0 t:0 Cull
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform uint u_lightControl;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform mediump vec3 u_lightdir0;
uniform mediump vec2 u_lightangle_spotCoef0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform mediump vec3 u_lightdir1;
uniform mediump vec2 u_lightangle_spotCoef1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform mediump vec3 u_lightdir2;
uniform mediump vec2 u_lightangle_spotCoef2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform mediump vec3 u_lightdir3;
uniform mediump vec2 u_lightangle_spotCoef3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
uint comp; uint type; float attenuation;
if ((u_lightControl & 0x1u) != 0x0u) {
comp = (u_lightControl >> 0x04u) & 0x3u;
type = (u_lightControl >> 0x06u) & 0x3u;
toLight = u_lightpos0;
if (type != 0x0u) {
toLight -= worldpos;
distance = length(toLight);
toLight /= distance;
attenuation = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
if (type == 0x01u) {
lightScale = attenuation;
|
GTA: Liberty City Stories |
v1.18.1 |
2025-04-28 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00182a82:00000402 Tex TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00182a82:00000402 Tex TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 00000000:00120b20 HWX T N UVEnv 0: c:0 t:0 1: c:0 t:0 Cull
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00120b20 HWX T N UVEnv 0: c:0 t:0 1: c:0 t:0 Cull
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform vec3 u_lightpos1;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal)), 1.0 + (length(u_lightpos1) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos1), worldnormal))) * 0.5, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
if (u_depthRange.y - u_depthRange.x >= 1.0) {
gl_ClipDistance[0] = outPos.w + outPos.z;
} else if (u_depthRange.x + u_depthRange.y <= 65534.0) {
gl_ClipDistance[0] = outPos.w - outPos.z;
} else {
gl_ClipDistance[0] = 0.0;
}
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[1] = projZ * outPos.w + outPos.w + 0.000001;
gl_Position = outPos;
}
|
GTA: Liberty City Stories |
v1.18.1 |
2025-04-28 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00182a82:00000402 Tex TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00182a82:00000402 Tex TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 00000000:00120320 HWX N UVEnv 0: c:0 t:0 1: c:0 t:0 Cull
#version 330
#extension GL_EXT_gpu_shader4 : enable
// Driver: GeForce 9600M GT/PCI/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00120320 HWX N UVEnv 0: c:0 t:0 1: c:0 t:0 Cull
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform vec3 u_lightpos1;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
v_color0 = u_matambientalpha;
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal)), 1.0 + (length(u_lightpos1) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos1), worldnormal))) * 0.5, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
if (u_depthRange.y - u_depthRange.x >= 1.0) {
gl_ClipDistance[0] = outPos.w + outPos.z;
} else if (u_depthRange.x + u_depthRange.y <= 65534.0) {
gl_ClipDistance[0] = outPos.w - outPos.z;
} else {
gl_ClipDistance[0] = 0.0;
}
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[1] = projZ * outPos.w + outPos.w + 0.000001;
gl_Position = outPos;
}
|
FIFA 21 Beta T. Bendezu & Alexander |
v1.6.3 |
2025-04-27 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:0021d002 Tex Fog TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 00000000:0000001c C Fog Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = position.w;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
eFOOTBALL By YUNIER YUNIER & EDITOR ECUADOR PSP |
v1.8.0 |
2025-04-27 |
Error in shader program link: info: cannot find a matched output for input v_texcoordNC0
cannot find a matched output for input v_texcoordNC1
cannot find a matched output for input v_texcoordNC2
cannot find a matched output for input v_texcoordNC3
fs: postshader
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Awas ngelag! :u
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 1 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 2.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 0.98 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define KIMOCHI 1 //Senpai!
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.69 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//================
#define ACARTOON 0 //ON:1/OFF:0 Advanced Cartoon from Guest shader pack
#define th 0.10 //D |
eFootball Chelito 19 |
v1.6.3 |
2025-04-25 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000002 Tex Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball Euro y Copa America By T. Bendezu |
v1.8.0 |
2025-04-27 |
Error in shader program link: info: cannot find a matched output for input v_texcoordNC0
cannot find a matched output for input v_texcoordNC1
cannot find a matched output for input v_texcoordNC2
cannot find a matched output for input v_texcoordNC3
fs: postshader
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Awas ngelag! :u
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 1 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 2.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 0.98 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define KIMOCHI 1 //Senpai!
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.69 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//================
#define ACARTOON 0 //ON:1/OFF:0 Advanced Cartoon from Guest shader pack
#define th 0.10 //D |
eFootball Chelito 19 |
v1.10.3 |
2025-04-24 |
Error in shader program link: info: (unknown reason)
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
/*
AA shader 4.o / AA shader 4.o - filtro
Copyright (C) 2014 guest(r) - [email protected]
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// Modified as video aware smoothing effect for PPSSPP.
// Some variable definitions had to be moved inside functions(and so repeated) due to glsl->hlsl auto translation failing.
// Also auto translation fails with bool uniform, which is why u_video is defined as float.
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
uniform sampler2D sampler0;
uniform float u_video;
//===========
varying vec2 v_texcoord0;
const vec3 dt = vec3(1.0,1.0,1.0);
vec3 texture2d (vec2 texcoord) {
float scale = 1.0;
if (u_video==1.0){
scale = 2.0;
} else {
scale = 7.0;
}
vec4 yx = vec4(1.0/480.0,1.0/272.0,-1.0/480.0,-1.0/272.0)/scale;
vec4 xy = vec4(2.0/480.0,2.0/272.0,-2.0/480.0,-2.0/272.0)/scale;
vec3 s00 = texture2D(sampler0, texcoord + yx.zw).xyz;
vec3 s20 = texture2D(sampler0, texcoord + yx.xw).xyz;
vec3 s22 = texture2D(sampler0, texcoord + yx.xy).xyz;
vec3 s02 = texture2D(sampler0, texcoord + yx.zy).xyz;
float m1=dot(abs(s00-s22),dt)+0.001;
float m2=dot(abs(s02-s20),dt)+0.001;
return 0.5*(m2*(s00+s22)+m1*(s02+s20))/(m1+m2);
}
vec3 texture2dd (vec2 texcoord) {
float scale = 1.0;
if (u_video==1.0){
scale = 2.0;
} else {
scale = 7.0;
}
vec4 yx = vec4(1.0/480.0,1.0/272.0,-1.0/480.0,-1.0/272.0)/scale;
vec4 xy = vec4(2.0/480.0,2.0/272.0,-2.0/480.0,-2.0/272.0)/scale;
vec3 c11 = texture2D(sampler0, texcoord ).xyz;
vec3 c00 = texture2D(sampler0, texcoord + xy.zw).xyz;
vec3 c20 = texture2D(sampler0, texcoord + xy.xw).xyz;
vec3 c22 = texture2D(sampler0, texcoord + xy.xy).xyz;
vec3 c02 = texture2D(sampler0, texcoord + xy.zy).xyz;
vec3 s00 = texture2D(sampler0, texcoord + yx.zw).xyz;
vec3 s20 = texture2D(sampler0, texcoord + yx.xw).xyz;
vec3 s22 = texture2D(sampler0, texcoord + yx.xy).xyz;
vec3 s02 = texture2D(sampler0, texcoord + yx.zy).xyz;
float d1=dot(abs(c00-c22),dt)+0.001;
float d2=dot(abs(c20-c02),dt)+0.001;
float m1=dot(abs(s00-s22),dt)+0.001;
float m2=dot(abs(s02-s20),dt)+0.001;
vec3 t2=(d1*(c20+c02)+d2*(c00+c22))/(2.0*(d1+d2));
return 0.25*(c11+t2+(m2*(s00+s22)+m1*(s02+s20))/(m1+m2));
}
void main() {
float scale = 7.0;
bool filtro = false;
if (u_video==1.0){
scale = 2.0;
filtro = true;
} else {
scale = 7.0;
filtro = false;
}
// Calculating texel coordinates
vec2 size = vec2(480.0,272.0)*scale;
vec2 inv_size = vec2(1.0/480.0,1.0/272.0)/scale;
vec2 OGL2Pos = v_texcoord0 * size;
vec2 fp = fract(OGL2Pos);
vec2 dx = vec2(inv_size.x,0.0);
vec2 dy = vec2(0.0, inv_size.y);
vec2 g1 = vec2(inv_size.x,inv_size.y);
vec2 g2 = vec2(-inv_size.x,inv_size.y);
vec2 pC4 = floor(OGL2Pos) * inv_size + 0.5*inv_size;
// Reading the texels
vec3 C0 = texture2d(pC4 - g1);
vec3 C1 = texture2d(pC4 - dy);
vec3 C2 = texture2d(pC4 - g2);
vec3 C3 = texture2d(pC4 - dx);
vec3 C4 = texture2d(pC4 );
vec3 C5 = texture2d(pC4 + dx);
vec3 C6 = texture2d(pC4 + g2);
vec3 C7 = texture2d(pC4 + dy);
vec3 C8 = texture2d(pC4 + g1);
vec3 ul, ur, dl, dr;
float m1, m2;
m1 = dot(abs(C0-C4),dt)+0.001 |
eFootball Chelito 19 |
v1.6.3 |
2025-04-24 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0021d002 Tex Fog TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 04000000:41c0091c HWX C T Fog Tex Bones:8 WScale 2
#version 300 es
precision highp float;
in mediump vec4 w1, w2;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform mat4 u_bone5;
uniform mat4 u_bone6;
uniform mat4 u_bone7;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5 + w2.z * u_bone6 + w2.w * u_bone7;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.999969482421875;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(0.0, 0.0, 1.0, 0.0)).xyz * 1.999969482421875;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
eFootball Chelito 19 |
v1.6.3 |
2025-04-24 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00200002 Tex Fog TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 04000000:4100091c HWX C T Fog Tex Bones:5 WScale 2
#version 300 es
precision highp float;
in mediump vec4 w1;
in mediump float w2;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.999969482421875;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(0.0, 0.0, 1.0, 0.0)).xyz * 1.999969482421875;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
eFootball Chelito 19 |
v1.6.3 |
2025-04-24 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0021d002 Tex Fog TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 04000000:4140091c HWX C T Fog Tex Bones:6 WScale 2
#version 300 es
precision highp float;
in mediump vec4 w1;
in mediump vec2 w2;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform mat4 u_bone5;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.999969482421875;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(0.0, 0.0, 1.0, 0.0)).xyz * 1.999969482421875;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
eFootball RB - V. |
v1.6.3 |
2025-04-21 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000914 HWX T Fog Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
eFootball PC - V. |
v1.6.3 |
2025-04-21 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00004000:00000022 Tex TexAlpha Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
fragColor0 = v;
}
vs: 40000000:00000910 HWX T Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
flat out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
GTA: Liberty City Stories |
v1.11.3 |
2025-04-20 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: thin3d
vs: thin3d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
eFootball Asia 2023 |
v1.10.3 |
2025-04-20 |
Error in shader program link: info: Error: input v_texcoordNC0 not declared in output from previous stage.
Error: Linking failed.
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Awas ngelag! :u
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 1 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 2.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 0.98 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define KIMOCHI 1 //Senpai!
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.69 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//================
#define ACARTOON 0 //ON:1/OFF:0 Advanced Cartoon from Guest shader pack
#define th 0.10 //Default: 0.10 /outlines sensitivity, recommended from 0.00...0.50
#define |
Mortal Kombat: Unchained |
v1.6.3 |
2025-04-18 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00002a82:0001d022 Tex TexAlpha ReplaceBlend_2A:10_B:10_Eq:0 TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform vec3 u_blendFixA;
uniform vec3 u_blendFixB;
uniform sampler2D testtex;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
v.rgb = v.rgb * u_blendFixA;
fragColor0 = v;
}
vs: 00000000:00000910 HWX T Tex
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
eFootball PC - V. |
v1.6.2 |
2025-04-18 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball PES By HAROUN TECH |
v1.6.2 |
2025-04-17 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00004000:00000022 Tex TexAlpha Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
fragColor0 = v;
}
vs: 40000000:00000910 HWX T Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
flat out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
eFootball PES By HAROUN TECH |
v1.6.2 |
2025-04-17 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
flat in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball Asia 2023 |
v1.12.3 |
2025-04-17 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: thin3d
vs: thin3d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
eFootball PES 2024 "SN3" |
v1.6.3 |
2025-04-16 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000022 Tex TexAlpha Flat TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
fragColor0 = v;
}
vs: 40000000:00000910 HWX T Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
eFootball PES 2024 "SN3" |
v1.6.3 |
2025-04-16 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
eFootball PC - V. |
v1.6.3 |
2025-04-16 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000014 Fog Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = position.w;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-04-15 |
Error in shader program link: info: (unknown reason)
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
/*
AA shader 4.o / AA shader 4.o - filtro
Copyright (C) 2014 guest(r) - [email protected]
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// Modified as video aware smoothing effect for PPSSPP.
// Some variable definitions had to be moved inside functions(and so repeated) due to glsl->hlsl auto translation failing.
// Also auto translation fails with bool uniform, which is why u_video is defined as float.
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
uniform sampler2D sampler0;
uniform float u_video;
//===========
varying vec2 v_texcoord0;
const vec3 dt = vec3(1.0,1.0,1.0);
vec3 texture2d (vec2 texcoord) {
float scale = 1.0;
if (u_video==1.0){
scale = 2.0;
} else {
scale = 7.0;
}
vec4 yx = vec4(1.0/480.0,1.0/272.0,-1.0/480.0,-1.0/272.0)/scale;
vec4 xy = vec4(2.0/480.0,2.0/272.0,-2.0/480.0,-2.0/272.0)/scale;
vec3 s00 = texture2D(sampler0, texcoord + yx.zw).xyz;
vec3 s20 = texture2D(sampler0, texcoord + yx.xw).xyz;
vec3 s22 = texture2D(sampler0, texcoord + yx.xy).xyz;
vec3 s02 = texture2D(sampler0, texcoord + yx.zy).xyz;
float m1=dot(abs(s00-s22),dt)+0.001;
float m2=dot(abs(s02-s20),dt)+0.001;
return 0.5*(m2*(s00+s22)+m1*(s02+s20))/(m1+m2);
}
vec3 texture2dd (vec2 texcoord) {
float scale = 1.0;
if (u_video==1.0){
scale = 2.0;
} else {
scale = 7.0;
}
vec4 yx = vec4(1.0/480.0,1.0/272.0,-1.0/480.0,-1.0/272.0)/scale;
vec4 xy = vec4(2.0/480.0,2.0/272.0,-2.0/480.0,-2.0/272.0)/scale;
vec3 c11 = texture2D(sampler0, texcoord ).xyz;
vec3 c00 = texture2D(sampler0, texcoord + xy.zw).xyz;
vec3 c20 = texture2D(sampler0, texcoord + xy.xw).xyz;
vec3 c22 = texture2D(sampler0, texcoord + xy.xy).xyz;
vec3 c02 = texture2D(sampler0, texcoord + xy.zy).xyz;
vec3 s00 = texture2D(sampler0, texcoord + yx.zw).xyz;
vec3 s20 = texture2D(sampler0, texcoord + yx.xw).xyz;
vec3 s22 = texture2D(sampler0, texcoord + yx.xy).xyz;
vec3 s02 = texture2D(sampler0, texcoord + yx.zy).xyz;
float d1=dot(abs(c00-c22),dt)+0.001;
float d2=dot(abs(c20-c02),dt)+0.001;
float m1=dot(abs(s00-s22),dt)+0.001;
float m2=dot(abs(s02-s20),dt)+0.001;
vec3 t2=(d1*(c20+c02)+d2*(c00+c22))/(2.0*(d1+d2));
return 0.25*(c11+t2+(m2*(s00+s22)+m1*(s02+s20))/(m1+m2));
}
void main() {
float scale = 7.0;
bool filtro = false;
if (u_video==1.0){
scale = 2.0;
filtro = true;
} else {
scale = 7.0;
filtro = false;
}
// Calculating texel coordinates
vec2 size = vec2(480.0,272.0)*scale;
vec2 inv_size = vec2(1.0/480.0,1.0/272.0)/scale;
vec2 OGL2Pos = v_texcoord0 * size;
vec2 fp = fract(OGL2Pos);
vec2 dx = vec2(inv_size.x,0.0);
vec2 dy = vec2(0.0, inv_size.y);
vec2 g1 = vec2(inv_size.x,inv_size.y);
vec2 g2 = vec2(-inv_size.x,inv_size.y);
vec2 pC4 = floor(OGL2Pos) * inv_size + 0.5*inv_size;
// Reading the texels
vec3 C0 = texture2d(pC4 - g1);
vec3 C1 = texture2d(pC4 - dy);
vec3 C2 = texture2d(pC4 - g2);
vec3 C3 = texture2d(pC4 - dx);
vec3 C4 = texture2d(pC4 );
vec3 C5 = texture2d(pC4 + dx);
vec3 C6 = texture2d(pC4 + g2);
vec3 C7 = texture2d(pC4 + dy);
vec3 C8 = texture2d(pC4 + g1);
vec3 ul, ur, dl, dr;
float m1, m2;
m1 = dot(abs(C0-C4),dt)+0.001 |
EA-Sports FC PC-V |
v1.6.3 |
2025-04-14 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000914 HWX T Fog Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
PES 2014 |
v1.6.3 |
2025-04-13 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:0000091c HWX C T Fog Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.6.3 |
2025-04-12 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:0000d822 Tex TexAlpha LM TFuncMod AlphaTest >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in vec3 v_color1;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
fragColor0 = v;
}
vs: 01f30001:00000b19 HWX C T N LM Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:0 t:0 3: c:0 t:0 MatUp:3
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.6.3 |
2025-04-12 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 00000000:00000914 HWX T Fog Tex
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.6.3 |
2025-04-12 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:0001d822 Tex TexAlpha LM TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in vec3 v_color1;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 01f30001:00000b19 HWX C T N LM Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:0 t:0 3: c:0 t:0 MatUp:3
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
eFootball RB - V. |
v1.6.3 |
2025-04-12 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:0001d000 AlphaTest0 >
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
out vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
ソードアート・オンライン -インフィニティ・モーメント- |
v1.18.1 |
2025-04-11 |
Error in shader program link: info: Error: Uniform u_texelDelta precision mismatch with other stage.
Error: Linking failed.
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
bvec4 _and_(bvec4 A, bvec4 B)
{
return bvec4(A.x && B.x, A.y && B.y, A.z && B.z, A.w && B.w);
}
vec4 df(vec4 A, vec4 B)
{
return abs(A - B);
}
bvec4 close(vec4 A, vec4 B)
{
vec4 param = A;
vec4 param_1 = B;
return lessThan(df(param, param_1), vec4(15.0));
}
bvec4 _or_(bvec4 A, bvec4 B)
{
return bvec4(A.x || B.x, A.y || B.y, A.z || B.z, A.w || B.w);
}
vec4 weighted_distance(vec4 a, vec4 b, vec4 c, vec4 d, vec4 e, vec4 f, vec4 g, vec4 h)
{
vec4 param = a;
vec4 param_1 = b;
vec4 param_2 = a;
vec4 param_3 = c;
vec4 param_4 = d;
vec4 param_5 = e;
vec4 param_6 = d;
vec4 param_7 = f;
vec4 param_8 = g;
vec4 param_9 = h;
return (((df(param, param_1) + df(param_2, param_3)) + df(param_4, param_5)) + df(param_6, param_7)) + (df(param_8, param_9) * 4.0);
}
vec3 processxBR(vec3 color)
{
vec2 pS = vec2(1.0) / u_texelDelta;
vec2 fp = fract(v_texcoord0 * pS);
vec2 TexCoord_0 = v_texcoord0 - (fp * u_pixelDelta);
vec2 dx = vec2(u_texelDelta.x, 0.0);
vec2 dy = vec2(0.0, u_texelDelta.y);
vec2 y2 = dy + dy;
vec2 x2 = dx + dx;
vec3 A = texture(sampler0, (TexCoord_0 - dx) - dy).xyz;
vec3 B = texture(sampler0, TexCoord_0 - dy).xyz;
vec3 C = texture(sampler0, (TexCoord_0 + dx) - dy).xyz;
vec3 D = texture(sampler0, TexCoord_0 - dx).xyz;
vec3 E = texture(sampler0, TexCoord_0).xyz;
vec3 F = texture(sampler0, TexCoord_0 + dx).xyz;
vec3 G = texture(sampler0, (TexCoord_0 - dx) + dy).xyz;
vec3 H = texture(sampler0, TexCoord_0 + dy).xyz;
vec3 I = texture(sampler0, (TexCoord_0 + dx) + dy).xyz;
vec3 A1 = texture(sampler0, (TexCoord_0 - dx) - y2).xyz;
vec3 C1 = texture(sampler0, (TexCoord_0 + dx) - y2).xyz;
vec3 A0 = texture(sampler0, (TexCoord_0 - x2) - dy).xyz;
vec3 G0 = texture(sampler0, (TexCoord_0 - x2) + dy).xyz;
vec3 C4 = texture(sampler0, (TexCoord_0 + x2) - dy).xyz;
vec3 I4 = texture(sampler0, (TexCoord_0 + x2) + dy).xyz;
vec3 G5 = texture(sampler0, (TexCoord_0 - dx) + y2).xyz;
vec3 I5 = texture(sampler0, (TexCoord_0 + dx) + y2).xyz;
vec3 B1 = texture(sampler0, TexCoord_0 - y2).xyz;
vec3 D0 = texture(sampler0, TexCoord_0 - x2).xyz;
vec3 H5 = texture(sampler0, TexCoord_0 + y2).xyz;
vec3 F4 = texture(sampler0, TexCoord_0 + x2).xyz;
vec4 b = vec4(dot(B, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(D, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(H, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(F, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 c = vec4(dot(C, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(A, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(G, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(I, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 d = vec4(b.y, b.z, b.w, b.x);
vec4 e = vec4(dot(E, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 f = vec4(b.w, b.x, b.y, b.z);
vec4 g = vec4(c.z, c.w, c.x, c.y);
vec4 h = vec4(b.z, b.w, b.x, b.y);
vec4 i = vec4(c.w, c.x, c.y, c.z);
vec4 i4 = vec4(dot(I4, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(C1, vec3(16.1630001068115234375, 23.3509998321533203125, 8.4771995544 |
Pro Evolution Soccer 2013 |
v1.10-6-g8ac4efd3c |
2025-04-11 |
Error in shader program link: info: Variable u_texelDelta has unmatched precision qualifier in different shaders
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Only last one applies, so pick just one of them, mess around with it's settings and add other effects as needed.
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 0 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 3.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 7.5 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define MIKU 0 //Hatsune<3 this is an optional bloom filter for all those pale anime faces which get white otherwise:P tested on Miku in white dress
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.5 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//== |