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 |
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
vs: 01000000:80000b20 HWX T N Light: LightUberShader Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01000000:80000b20 HWX T N Light: LightUberShader 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 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;
float distSq;
float invDist;
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;
float distSq = dot(toLight, toLight);
float invDist = inversesqrt(distSq);
distance = distSq * invDist;
toLight *= invDist;
attenuation = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distSq)), 0.0, 1.0);
if (type == 0x01u) {
lightScale = attenuation;
} else {
angle = dot(u_lightdir0, toLight);
if (angle >= u_lightangle_spotCoef0.x) {
lightScale = attenuation * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y));
} else {
lightScale = 0.0;
}
}
} else {
lightScale = 1.0;
}
ldot = dot(toLight, worldnormal);
if (comp == 0x2u) {
ldot = u_matspecular.a > 0.0 ? pow(max(ldot, 0.0), u_matspecular.a) : 1.0;
}
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (comp == 0x1u && ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
vec3 halfVec = toLight + vec3(0.0, 0.0, 1.0);
float halfInvLen = inversesqrt(dot(halfVec, halfVec));
ldot = pow(max(dot(halfVec, worldnormal) * halfInvLen, 0.0), u_matspecular.a);
} |
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:00000002 Tex FragUber TFuncMod
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:003fd002 Tex Fog FragUber TFuncMod AlphaTest0 > ColorTest0 !=
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:001fd002 Tex FragUber TFuncMod AlphaTest0 > ColorTest0 !=
vs: 00000000:00000b20 HWX T N Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000b20 HWX T N 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 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(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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:001e0002 Tex FragUber TFuncMod ColorTest0 !=
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:001fd002 Tex FragUber TFuncMod AlphaTest0 > ColorTest0 !=
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:001e0002 Tex FragUber TFuncMod ColorTest0 !=
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:00000002 Tex FragUber TFuncMod
vs: 00000000:00000b20 HWX T N Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000b20 HWX T N 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 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(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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:003fd002 Tex Fog FragUber TFuncMod AlphaTest0 > ColorTest0 !=
vs: 00000000:00000b20 HWX T N Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000b20 HWX T N 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 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(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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:00000002 Tex FragUber TFuncMod
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| MONSTER HUNTER FREEDOM UNITE™ |
v1.20.4 |
2026-07-08 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:00000002 Tex FragUber TFuncMod
vs: 00000000:0000000a THR C
#version 320 es
// Driver: PowerVR Rogue GE8100 - 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;
}
|
| Pro Evolution Soccer 2011 |
v1.6.3 |
2026-07-07 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:0001d000 AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
inout 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);
}
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-07-07 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10180000:01000012 Tex FragUber StenToAlpha StenUniform TFuncAdd
vs: 00000000:00000920 HWX T Cull
#version 320 es
// Driver: PowerVR Rogue GE8320 - 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;
}
|
| Pro Evolution Soccer 2012 |
v1.20.4-476-g56c694d88b |
2026-07-07 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 320 es
// Driver: Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0) * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 320 es
// Driver: Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| Pro Evolution Soccer 2012 |
v1.20.4-476-g56c694d88b |
2026-07-07 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 320 es
// Driver: Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0).zyxw * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 320 es
// Driver: Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| eFootball PC - V. |
v1.6.3 |
2026-07-04 |
Error in shader program link: info: Link Error: Vertex 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: 00000000:0000091c HWX C T Fog Tex
#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;
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 = color0;
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 |
2026-07-04 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
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: 00000000:0000091c HWX C T Fog Tex
#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;
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;
}
|
| eFootball PC - V. |
v1.6.3 |
2026-07-04 |
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);
}
|
| PES 2013 |
v1.20.4 |
2026-07-03 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00000000 Flat FragUber
vs: 40000000:0000000a THR C Flat
#version 320 es
// Driver: Mali-G57 - 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;
}
|
| PES 2013 |
v1.20.4 |
2026-07-03 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00000000 Flat FragUber
vs: 40000000:00000002 THR Flat
#version 320 es
// Driver: Mali-G57 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000002 THR 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;
}
|
| EA-Sports FC PC-V |
v1.20.3-144-g37824b894a |
2026-07-03 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00180000:00200402 Tex Fog TexAlpha TFuncMod
#version 100
// Driver: Mali-450 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00180000:00200402 Tex Fog TexAlpha TFuncMod
uniform sampler2D tex;
varying lowp 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;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 00000000:00000b20 HWX T N Cull
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-07-03 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
vs: 00000000:00000928 HWX C T Cull
#version 320 es
// Driver: Mali-G57 MC2 - 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;
}
|
| PES 2013 |
v1.20.4 |
2026-07-02 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10184000:0001d000 Flat FragUber AlphaTest0 >
#version 310 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0001d000 Flat FragUber AlphaTest0 >
uniform uint u_alphacolorref;
flat 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: 40000000:00000002 THR Flat
|
| PES 2013 |
v1.20.4 |
2026-07-02 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10184000:0001d002 Tex Flat FragUber TFuncMod AlphaTest0 >
#version 310 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0001d002 Tex Flat FragUber TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
flat 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: 40000000:00000002 THR Flat
|
| PES 2013 |
v1.20.4 |
2026-07-02 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10184000:00000002 Tex Flat FragUber TFuncMod
#version 310 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00000002 Tex Flat FragUber TFuncMod
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 = 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: 40000000:0000000a THR C Flat
|
| PES 2013 |
v1.20.4 |
2026-07-02 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
#version 310 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Driver: Mali-T720 - GLSL 310
#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
|
| PES 2013 |
v1.20.4 |
2026-07-02 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10184000:00000000 Flat FragUber
#version 310 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00000000 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:0000000a THR C Flat
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-07-01 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00000000:00000001 Clear
#version 100
precision lowp float;
varying vec4 v_color0;
void main() {
vec4 v = v_color0;
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);
}
|
| EA-Sports FC Lop-Play |
v1.11.3 |
2026-07-01 |
Error in shader program link: info: (unknown reason)
fs: draw2d
#version 320 es
#ifdef GL_ES
precision mediump float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
#ifdef GL_ES
precision mediump float;
#endif
uniform sampler2D sampler0;
varying vec2 v_texcoord0;
void main() {
gl_FragColor = texture2D(sampler0, v_texcoord0);
}
vs: draw2d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec4 a_position;
attribute vec2 a_texcoord0;
varying vec2 v_texcoord0;
void main() {
v_texcoord0 = a_texcoord0;
gl_Position = a_position;
}
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-06-30 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000000 Flat
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
flat in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
fragColor0 = v;
}
vs: 40000000:00000002 THR Flat
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-30 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:00000002 Tex Flat FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00000002 Tex Flat FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
flat in lowp vec4 v_color0;
in highp float v_fogdepth;
in highp 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: 40000000:00000920 HWX T Flat Cull
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-30 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:00200002 Tex Fog Flat FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00200002 Tex Fog Flat FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
flat in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp 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);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000920 HWX T Flat Cull
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-30 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:0021d002 Tex Fog Flat FragUber TFuncMod AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0021d002 Tex Fog Flat FragUber TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
flat in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp 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);
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 = v;
}
vs: 40000000:00000920 HWX T Flat Cull
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-30 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:0001d002 Tex Flat FragUber TFuncMod AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:0001d002 Tex Flat FragUber TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
flat in lowp vec4 v_color0;
in highp float v_fogdepth;
in highp 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: 40000000:00000920 HWX T Flat Cull
|
| eFootball RB - V. |
v1.6.3 |
2026-06-29 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:00000022 Tex TexAlpha TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
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: 00000000:00000918 HWX C T Tex
#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;
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 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
| eFootball Chelito 19 |
v1.20.4-443-g52cce09118 |
2026-06-28 |
Error in shader program link: info: L0001 The fragment shader uniform floating-point TintSaturation does not match the vertex shader uniform floating-point TintSaturation.
The precision does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
out vec4 fragColor0;
void main() {
vec4 col = oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
void main() {
gl_Position = mul(WorldViewProj, vec4(Position, 1.0));
vec3 hsv = rgb2hsv(Color0.xyz);
hsv.x += TintSaturation.x;
hsv.y *= TintSaturation.y;
oColor0 = vec4(hsv2rgb(hsv), Color0.w);
}
|
| eFootball Chelito 19 |
v1.20.4-443-g52cce09118 |
2026-06-28 |
Error in shader program link: info: L0001 The fragment shader uniform floating-point TintSaturation does not match the vertex shader uniform floating-point TintSaturation.
The precision does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0) * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| eFootball Chelito 19 |
v1.20.4-443-g52cce09118 |
2026-06-28 |
Error in shader program link: info: L0001 The fragment shader uniform floating-point TintSaturation does not match the vertex shader uniform floating-point TintSaturation.
The precision does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0).zyxw * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T860 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-06-27 |
Error in shader program link: info: L0100 A program cannot be linked unless there are any shaders attached to it
fs: 00000000:0021d022 Tex TexAlpha Fog 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: 05770000:41800b14 HWX T N Fog Tex Bones:7 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 MatUp:7 WScale 2
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute mediump vec3 w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
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 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;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump 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;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.999969482421875;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 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;
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);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-06-27 |
Error in shader program link: info: L0100 A program cannot be linked unless there are any shaders attached to it
fs: 00000000:0021d022 Tex TexAlpha Fog 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: 05770000:41c00b14 HWX T N Fog Tex Bones:8 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 MatUp:7 WScale 2
#version 100
precision highp float;
attribute mediump vec4 w1, w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
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 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;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump 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(normal, 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;
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);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-06-27 |
Error in shader program link: info: L0100 A program cannot be linked unless there are any shaders attached to it
fs: 00000000:0021d022 Tex TexAlpha Fog 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: 05770000:40c00b14 HWX T N Fog Tex Bones:4 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 MatUp:7 WScale 2
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
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 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;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.999969482421875;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 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;
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);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| Grand Theft Auto: Vice City Stories |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00184000:0000d402 Tex TexAlpha Flat TFuncMod AlphaTest >
#version 100
// Driver: Mali-400 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00184000:0000d402 Tex TexAlpha Flat TFuncMod AlphaTest >
uniform sampler2D tex;
uniform sampler2D testtex;
varying lowp vec4 v_color0;
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;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) DISCARD;
gl_FragColor = v;
}
vs: 40000000:0000000a THR C Flat
|
| Grand Theft Auto: Vice City Stories |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00194000:0000d400 TexAlpha Flat AlphaTest > TestDiscardToZero
#version 100
// Driver: Mali-400 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00194000:0000d400 TexAlpha Flat AlphaTest > TestDiscardToZero
uniform sampler2D testtex;
varying lowp vec4 v_color0;
varying mediump float v_fogdepth;
void main() {
vec4 v = v_color0;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) v.a = 0.0;
gl_FragColor = v;
}
vs: 40000000:0000000a THR C Flat
|
| Grand Theft Auto: Vice City Stories |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00194000:0000d402 Tex TexAlpha Flat TFuncMod AlphaTest > TestDiscardToZero
#version 100
// Driver: Mali-400 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00194000:0000d402 Tex TexAlpha Flat TFuncMod AlphaTest > TestDiscardToZero
uniform sampler2D tex;
uniform sampler2D testtex;
varying lowp vec4 v_color0;
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;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) v.a = 0.0;
gl_FragColor = v;
}
vs: 40000000:0000000a THR C Flat
|
| Grand Theft Auto: Vice City Stories |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00184000:00000400 TexAlpha Flat
#version 100
// Driver: Mali-400 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00184000:00000400 TexAlpha Flat
varying lowp vec4 v_color0;
varying mediump float v_fogdepth;
void main() {
vec4 v = v_color0;
gl_FragColor = v;
}
vs: 40000000:0000000a THR C Flat
|
| Grand Theft Auto: Vice City Stories |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00184000:0000d400 TexAlpha Flat AlphaTest >
#version 100
// Driver: Mali-400 MP - GLSL 100
#define DISCARD discard
precision lowp float;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00184000:0000d400 TexAlpha Flat AlphaTest >
uniform sampler2D testtex;
varying lowp vec4 v_color0;
varying mediump float v_fogdepth;
void main() {
vec4 v = v_color0;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) DISCARD;
gl_FragColor = v;
}
vs: 40000000:0000000a THR C Flat
|
| God of War: Chains of Olympus |
v1.20.4 |
2026-06-27 |
Error in shader program link: info: (unknown reason)
fs: 00180000:01200822 Tex Fog LM Double StenToAlpha StenUniform TFuncMod
#version 300 es
// Driver: Adreno (TM) 405 - GLSL 300
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00180000:01200822 Tex Fog LM Double StenToAlpha StenUniform TFuncMod
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
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;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = 1.0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 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, u_stencilReplaceValue);
}
vs: 01120004:00000b09 HWX C T N LM Light: 0: c:0 t:1 MatUp:2
|
| MotorStorm®: Arctic Edge |
v1.16.6 |
2026-06-26 |
Error in shader program link: info: (unknown reason)
fs: 10180000:00000082 Tex FragUber TClamp TFuncMod
#version 460
#extension GL_EXT_gpu_shader4 : enable
// Driver: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 - GLSL 460
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:00000082 Tex FragUber TClamp 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((mod(v_texcoord.x, u_texclamp.x) + u_texclampoff.x), (mod(v_texcoord.y, u_texclamp.y) + 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 *= u_texNoAlphaMul.y;
fragColor0 = v;
}
vs: 00000000:00000002 THR
#version 460
#extension GL_EXT_gpu_shader4 : enable
// Driver: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 - GLSL 460
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#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;
}
|
| MotorStorm®: Arctic Edge |
v1.16.6 |
2026-06-26 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: out of memory - internal malloc failed
fs: 00000000:00000001 Clear
#version 460
#extension GL_EXT_gpu_shader4 : enable
// Driver: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 - GLSL 460
#define DISCARD discard
#define lowp
#define mediump
#define highp
#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 460
#extension GL_EXT_gpu_shader4 : enable
// Driver: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 - GLSL 460
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#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;
}
|
| MONSTER HUNTER PORTABLE 2nd G |
v1.20.4 |
2026-06-25 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10190000:003e0002 Tex Fog FragUber TFuncMod ColorTest0 != TestDiscardToZero
vs: 00000000:00000020 Cull
#version 320 es
// Driver: PowerVR Rogue GE8320 - 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;
}
|
| MONSTER HUNTER PORTABLE 2nd G |
v1.20.4 |
2026-06-25 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10190000:003e0002 Tex Fog FragUber TFuncMod ColorTest0 != TestDiscardToZero
vs: 00000000:00000028 C Cull
#version 320 es
// Driver: PowerVR Rogue GE8320 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000028 C 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;
}
|
| MONSTER HUNTER PORTABLE 2nd G |
v1.20.4 |
2026-06-25 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 00000000:00000001 Clear
vs: 00000000:0000000a THR C
#version 320 es
// Driver: PowerVR Rogue GE8320 - 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 RB - V. |
v1.11.3 |
2026-06-23 |
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 2026 By Komo Valeri |
v1.20.4 |
2026-06-22 |
Error in shader program link: info: (unknown reason)
fs: 10180000:00000002 Tex FragUber TFuncMod
#version 310 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 505 - GLSL 310
#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: 01000000:80000b00 HWX T N Light: LightUberShader
|
| eFootball 2026 By Komo Valeri |
v1.20.4 |
2026-06-22 |
Error in shader program link: info: (unknown reason)
fs: 10180000:0021d002 Tex Fog FragUber TFuncMod AlphaTest0 >
#version 310 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 505 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10180000:0021d002 Tex Fog FragUber TFuncMod AlphaTest0 >
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform uint u_alphacolorref;
in lowp 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;
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 (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 01000000:80000b00 HWX T N Light: LightUberShader
|
| Jetpack Joyride |
v1.20.4-423-gde85a7b247 |
2026-06-21 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0) * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| Jetpack Joyride |
v1.20.4-423-gde85a7b247 |
2026-06-21 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
out vec4 fragColor0;
void main() {
vec4 col = oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
void main() {
gl_Position = mul(WorldViewProj, vec4(Position, 1.0));
vec3 hsv = rgb2hsv(Color0.xyz);
hsv.x += TintSaturation.x;
hsv.y *= TintSaturation.y;
oColor0 = vec4(hsv2rgb(hsv), Color0.w);
}
|
| Alien Zombie Death |
v1.20.4-423-gde85a7b247 |
2026-06-21 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0) * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| Alien Zombie Death |
v1.20.4-423-gde85a7b247 |
2026-06-21 |
Error in shader program link: info: L0001 The fragment matrix variable WorldViewProj does not match the vertex variable WorldViewProj.
The matrix stride does not match.
fs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in lowp vec4 oColor0; // COLOR0
in highp vec2 oTexCoord0; // TEXCOORD0
out vec4 fragColor0;
void main() {
vec4 col = texture(tex, oTexCoord0).zyxw * oColor0;
col.rgb *= oColor0.a;
fragColor0 = col;
}
vs: thin3d
#version 310 es
// Driver: Mali-T720 - GLSL 310
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
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);
}
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
in vec3 Position;
in vec4 Color0;
in vec2 TexCoord0;
out lowp vec4 oColor0; // COLOR0 (0)
out highp vec2 oTexCoord0; // TEXCOORD0 (1)
void main() {
gl_Position = mul(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;
}
|
| eFootball Libertadores StaR PatcH 2025 By L_S eDits |
v1.20.3 |
2026-06-19 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:00000002 Tex Flat FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00000002 Tex Flat FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
flat in lowp vec4 v_color0;
in highp float v_fogdepth;
in highp 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: 40000000:0000000a THR C Flat
|
| eFootball Libertadores StaR PatcH 2025 By L_S eDits |
v1.20.3 |
2026-06-19 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 10184000:00000000 Flat FragUber
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00000000 Flat FragUber
flat in lowp vec4 v_color0;
in highp float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 40000000:0000000a THR C Flat
|
| PES 2013 |
v1.20.4 |
2026-06-18 |
Error in shader program link: info: (unknown reason)
fs: 10184000:00200002 Tex Fog Flat FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 506 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 10184000:00200002 Tex Fog Flat FragUber TFuncMod
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
flat in lowp 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;
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);
fragColor0 = v;
}
vs: 40000000:00000928 HWX C T Flat Cull
|
| ウルトラマン Fighting Evolution 0 |
v1.11.3 |
2026-06-18 |
Error in shader program link: info: Link failed because of missing vertex shader.
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 gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
void main() { gl_FragColor = oColor0; }
vs: thin3d
|
| eFootball JOELAND |
v1.20.3 |
2026-06-16 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00200000 Fog Flat FragUber
vs: 40000000:00000020 Flat Cull
#version 320 es
// Driver: Mali-T820 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000020 Flat 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;
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 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;
}
|
| eFootball JOELAND |
v1.20.3 |
2026-06-16 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00200000 Fog Flat FragUber
vs: 40000000:00000120 HWX Flat Cull
#version 320 es
// Driver: Mali-T820 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000120 HWX Flat Cull
in vec3 position;
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 = u_matambientalpha;
v_texcoord = splat3(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;
}
|
| eFootball Chelito 19 |
v1.11 |
2026-06-15 |
Error in shader program link: info: (unknown reason)
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;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
| eFootball Chelito 19 |
v1.11 |
2026-06-15 |
Error in shader program link: info: (unknown reason)
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;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
| GTA: Liberty City Stories |
v1.6.3 |
2026-06-14 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:00200800 LM Fog
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
in vec4 v_color0;
in vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 v = v_color0 + s;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 01170000:00000b05 HWX T N LM Fog Light: 0: c:0 t:0 MatUp:7
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
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;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump float v_fogdepth;
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);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War®: Ghost of Sparta |
v1.6.3 |
2026-06-14 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:00000002 Tex TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
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: 00000000:00000012 THR 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);
}
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-06-13 |
Error in shader program link: info: (unknown reason)
fs: 101c0000:00000000 FragUber WriteMask
#version 320 es
// Driver: Adreno (TM) 405 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 101c0000:00000000 FragUber WriteMask
precision highp int;
uniform sampler2D fbotex;
uniform uint u_colorWriteMask;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
out vec4 fragColor0;
void main() {
lowp vec4 destColor = texelFetch(fbotex, ivec2(gl_FragCoord.x, gl_FragCoord.y), 0);
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
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-06-13 |
Error in shader program link: info: (unknown reason)
fs: 109c002e:0000038e Tex FragUber Depal WriteMask TClampST ReplaceBlend_6A:0_B:0_Eq:5 TFuncRepl
#version 320 es
// Driver: Adreno (TM) 405 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 109c002e:0000038e Tex FragUber Depal WriteMask TClampST ReplaceBlend_6A:0_B:0_Eq:5 TFuncRepl
precision highp int;
uniform sampler2D tex;
uniform vec2 u_texNoAlphaMul;
uniform sampler2D fbotex;
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;
out vec4 fragColor0;
void main() {
lowp vec4 destColor = texelFetch(fbotex, ivec2(gl_FragCoord.x, gl_FragCoord.y), 0);
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 < |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-06-13 |
Error in shader program link: info: (unknown reason)
fs: 10980000:0000038e Tex FragUber Depal TClampST TFuncRepl
#version 320 es
// Driver: Adreno (TM) 405 - 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 == index1 && index1 == index2 && index2 == |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-06-13 |
Error in shader program link: info: (unknown reason)
fs: 10180000:00000002 Tex FragUber TFuncMod
#version 320 es
// Driver: Adreno (TM) 405 - 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
|
| eFootball Lop - Play |
v1.6.3 |
2026-06-13 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
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 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: 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 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;
}
|
| TEKKEN 6 |
v1.20.4 |
2026-06-12 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10180000:00000802 Tex LM FragUber TFuncMod
vs: 01000000:80000b29 HWX C T N LM Light: LightUberShader Cull
#version 320 es
// Driver: Mali-G925-Immortalis MC12 - 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;
float distSq;
float invDist;
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;
float distSq = dot(toLight, toLight);
float invDist = inversesqrt(distSq);
distance = distSq * invDist;
toLight *= invDist;
attenuation = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distSq)), 0.0, 1.0);
if (type == 0x01u) {
lightScale = attenuation;
} else {
angle = dot(u_lightdir0, toLight);
if (angle >= u_lightangle_spotCoef0.x) {
lightScale = attenuation * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y));
} else {
lightScale = 0.0;
}
}
} else {
lightScale = 1.0;
}
ldot = dot(toLight, worldnormal);
if (comp == 0x2u) {
ldot = u_matspecular.a > 0.0 ? pow(max(ldot, 0.0), u_matspecular.a) : 1.0;
}
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (comp == 0x1u && ldot >= 0.0) {
if (u_matspecular |
| eFootball Lop - Play |
v1.20.3 |
2026-06-11 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00184000:00200402 Tex Fog TexAlpha Flat TFuncMod
vs: 40000000:00000928 HWX C T Flat Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000928 HWX C T Flat Cull
attribute vec3 position;
attribute vec2 texcoord;
attribute 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;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying 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;
}
|
| eFootball Lop - Play |
v1.20.3 |
2026-06-11 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00184000:00200402 Tex Fog TexAlpha Flat TFuncMod
vs: 40000000:00000920 HWX T Flat Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000920 HWX T Flat Cull
attribute vec3 position;
attribute 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;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying 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;
}
|
| EA-Sports FC Lop-Play |
v1.6.3-456-g6d0ed4ad0 |
2026-06-11 |
Error in shader program link: info: 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: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 PC - V. |
v1.6.3 |
2026-06-07 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 00004000:00000000 Flat
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
flat in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
fragColor0 = v;
}
vs: 40000000:00000002 THR Flat
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| EA-Sports FC PC-V |
v1.6.3 |
2026-06-07 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000002 Tex 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 = 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 2025 by MP |
v1.20.4 |
2026-06-07 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Mali-T820 - 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;
}
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-05 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10180000:00000002 Tex FragUber TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Mali-G57 - 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
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-05 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10180000:0001d002 Tex FragUber TFuncMod AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Mali-G57 - 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
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-05 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 10180000:0001d000 FragUber AlphaTest0 >
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Mali-G57 - 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
|
| Pro Evolution Soccer 2013 |
v1.20.4 |
2026-06-05 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:00000001 Clear
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Mali-G57 - 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
|
| eFootball 2026 By Komo Valeri |
v1.20.4 |
2026-06-04 |
Error in shader program link: info: (unknown reason)
fs: 10180000:00200000 Fog FragUber
vs: 00000000:00000128 HWX C Cull
#version 320 es
#extension GL_EXT_clip_cull_distance : enable
// Driver: Adreno (TM) 618 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000128 HWX C Cull
in vec3 position;
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 = splat3(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_ClipDistance[0] = projZ * outPos.w + outPos.w + 0.000001;
if (u_cullRangeMin.w > 0.0 && u_depthRange.w != 0.0f) {
gl_CullDistance[0] = projPos.z - u_cullRangeMin.z;
gl_CullDistance[1] = u_cullRangeMax.z - projPos.z;
} else {
gl_CullDistance[0] = 0.0;
gl_CullDistance[1] = 0.0;
}
gl_Position = outPos;
}
|
| Midnight Club 3: DUB Edition |
v1.20.4 |
2026-05-31 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:00000001 Clear
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8320 - 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 highp float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.20.4 |
2026-07-03 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Mali-G57 MC2 - 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.20.4 |
2026-05-30 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10182982:00000002 Tex FragUber ReplaceBlend_2A:6_B:10_Eq:0 TFuncMod
vs: 00000000:00000908 HWX C T
#version 320 es
// Driver: Mali-G57 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000908 HWX C T
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;
gl_Position = outPos;
}
|
| eFootball RB - V. |
v1.6.3 |
2026-05-30 |
Error in shader program link: info:
fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod
#version 300 es
precision lowp float;
uniform sampler2D tex;
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: 00000000:0000091c HWX C T Fog Tex
#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;
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;
}
|
| Mortal Kombat: Unchained |
v1.6.3-432-gfd6c3145d |
2026-05-29 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 00000000:0021d022 Tex TexAlpha 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 = 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);
fragColor0 = v;
}
vs: 01100000:00000b14 HWX T N Fog Tex Light: 0: c:0 t:0
#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 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;
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 = 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);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War: Chains of Olympus |
v1.7.5 |
2026-05-29 |
Error in shader program link: info: Link Error: Vertex shader was not successfully compiled.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34440:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 (failed)
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute 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 vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
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;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
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);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
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;
if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { |
| God of War: Chains of Olympus |
v1.7.5 |
2026-05-29 |
Error in shader program link: info: Link Error: Vertex shader was not successfully compiled.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01f34440:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 (failed)
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute 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 vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
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;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
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);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
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;
if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) {
outPos.w = u_cullRangeMax.w;
}
}
gl_Position = outPos;
}
|
| eFootball Chelito 19 |
v1.6.3 |
2026-05-29 |
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;
}
|
| DBZ BUDOKAI TENKAICHI 3 LATINO |
v1.19.3 |
2026-05-28 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 10181d83:00000000 FragUber ReplaceBlend_3A:6_B:7_Eq:0
vs: 00000000:0000000a THR C
#version 320 es
// Driver: PowerVR Rogue GE8300 - 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;
}
|
| eFootbaFaris ppsspp78dial de Clubes By T. Bendezu |
v1.20.4 |
2026-05-28 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00200002 Tex Fog Flat FragUber TFuncMod
vs: 40000000:00000928 HWX C T Flat Cull
#version 320 es
// Driver: Mali-G57 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000928 HWX C T 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;
}
|
| eFootbaFaris ppsspp78dial de Clubes By T. Bendezu |
v1.20.4 |
2026-05-28 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: 10184000:00200002 Tex Fog Flat FragUber TFuncMod
vs: 40000000:00000920 HWX T Flat Cull
#version 320 es
// Driver: Mali-G57 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 40000000:00000920 HWX T Flat 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;
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 = 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;
}
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-05-26 |
Error in shader program link: info: Link failed because of missing shader.
fs: 00000000:0021d022 Tex TexAlpha 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 = 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);
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 mediump vec3 v_texcoord;
out mediump 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 * BETEGAMING |
v1.20.4 |
2026-05-25 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:00000001 Clear
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: PowerVR Rogue GE8100 - 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 highp float v_fogdepth;
out vec4 fragColor0;
void main() {
vec4 v = v_color0;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
|
| EA-Sports FC Lop-Play |
v1.6.3 |
2026-05-23 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00000000:00000002 Tex TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
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);
gl_FragColor = v;
}
vs: 00000000:00000918 HWX C T Tex
#version 100
precision highp float;
attribute vec3 position;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
varying lowp vec4 v_color0;
varying 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 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|