Recent logs - Error in shader compilation: info: %s %s %s

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
WWE SmackDown vs. RAW 2010 v1.20.3 2026-09-01 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:06000802 Tex LM FragUber StenToAlphaDual Sten0 TFuncMod #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:06000802 Tex LM FragUber StenToAlphaDual Sten0 TFuncMod uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; in lowp vec4 v_color0; in lowp vec3 v_color1; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; fragColor0 = vec4(v.rgb, 0.0); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Disney•Pixar Cars 2 v1.10.3-387-g6ca01d588 2026-08-30 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r5p1-01rel0 [Revision 96995]. 01f05555:00000305 HWX N LM Fog Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec3 u_lightpos0; uniform mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform mediump vec3 u_lightatt2; 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 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_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying 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); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpo
Disney•Pixar Cars 2 v1.10.3-387-g6ca01d588 2026-08-30 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r5p1-01rel0 [Revision 96995]. 01f25955:00000b19 HWX C T N LM Tex Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:2 3: c:1 t:1 MatUp:2 #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 mediump vec3 u_lightatt0; 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 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 lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; uniform lowp vec3 u_lightspecular3; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef2.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.
Disney•Pixar Cars 2 v1.10.3-387-g6ca01d588 2026-08-30 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r5p1-01rel0 [Revision 96995]. 01f05955:00000b11 HWX T N LM Tex Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:2 3: c:1 t:1 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform mediump vec3 u_lightatt0; 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 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 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 vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef2.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.
God of War®: Chains of Olympus v1.20.4-1156-gdefea54cd2 2026-08-30 Error in shader compilation: info: Fragment shader failed to compile with the following errors: ERROR: 0:2: error(#61) Required extension isn't found, extension 'GL_ARB_shader_stencil_export' is not supported ERROR: error(#273) 1 compilation errors. No code generated stencil_fs #version 330 #extension GL_ARB_shader_stencil_export : require // Driver: ATI Radeon HD 4200 - GLSL 330 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float roundAndScaleTo255f(in float x) { return floor(x * 255.99); } uniform float stencilValue; in highp vec2 v_texcoord; // TEXCOORD0 out vec4 fragColor0; void main() { vec4 index = texture(tex, v_texcoord.xy); vec4 outColor = index.aaaa; gl_FragStencilRefARB = int(roundAndScaleTo255f(index.a)); fragColor0 = outColor; }
Transformers v1.20.4 2026-08-28 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r10p0-00dev0 [Revision 96995]. 01f74440:00000b28 HWX C T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:7 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)) // 01f74440:00000b28 HWX C T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:7 Cull 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_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(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 = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = color0.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; float distSq; float invDist; lowp float lightScale; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale; 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; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRa
eFootball RB - V. v1.10.3-1207-ge01d53870 2026-08-28 Error in shader compilation: info: 0:1: L0001: Unknown character '�'(181) 0:1: L0001: Unknown character '�'(159) 0:1: L0001: Unknown character '�'(176) 0:1: L0001: Unknown character '�'(181) 0:1: L0001: Unknown character '�'(159) 0:3: P0001: #endif directive found outside if-section 0:1: L0001: Typename expected, found 'P' 0:1: L0001: Expected identifier, found '<' thin3d P<���<��L_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; }
Grand Theft Auto®: Chinatown Wars™ v1.20.4 2026-08-27 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r6p2-01rel0 [Revision 96995]. 01f31111:00000b21 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 MatUp:3 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)) // 01f31111:00000b21 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 MatUp:3 Cull attribute vec3 position; attribute mediump vec3 normal; attribute 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 vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 *
Assassin's Creed: Bloodlines™ v1.20.4 2026-08-26 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-01rel0 [Revision 96995]. 01f14444:00000b28 HWX C T N Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f14444:00000b28 HWX C T N Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull 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 mediump vec3 u_lightatt0; 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 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; 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(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 = color0; vec3 diffuseColor = u_matdiffuse.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; float distSq; float invDist; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientCo
God of War®: Ghost of Sparta v1.20.4 2026-08-25 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r10p0-00rel0 [Revision 96995]. 01f34151:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 #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)) // 01f34151:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj_lens; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; 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 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 float u_scaleX; uniform lowp float u_scaleY; 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 lowp vec3 v_color1; 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(-normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj_lens, viewPos); vec4 orgPos = mul(u_proj, viewPos); vec4 ambientColor = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse =
God of War®: Ghost of Sparta v1.20.4 2026-08-25 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r10p0-00rel0 [Revision 96995]. 01f34151:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 #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)) // 01f34151:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj_lens; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; 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 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 float u_scaleX; uniform lowp float u_scaleY; 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 lowp vec3 v_color1; 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(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj_lens, viewPos); vec4 orgPos = mul(u_proj, viewPos); vec4 ambientColor = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdif
MYFP26 ENGLISH v1.20.4 2026-08-24 Error in shader compilation: info: ERROR: 0:15: 'premature EOF' : Syntax error: syntax error INTERNAL ERROR: no main() function! ERROR: 1 compilation errors. No code generated. 40000000:00000920 HWX T Flat 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)) // 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_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; }
TEKKEN 6 v1.20.4 2026-08-24 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-01rel0 [Revision 96995]. 01f00111:00000b01 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:0 t:0 #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f00111:00000b01 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:0 t:0 attribute vec3 position; attribute mediump vec3 normal; attribute 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 vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight = u_lightpos3; ldot
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:19: S0027: Cannot modify an input variable 00000000:0000001a THR C Tex #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) in vec4 position; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; out mediump vec3 v_texcoord; in vec3 h_normal; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0)); gl_Position = outPos; h_normal = vec3(-1.0); }
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:44: S0027: Cannot modify an input variable 00000000:00010130 HWX Tex TexProjPos UVMtx Cull #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) in vec3 position; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform mediump mat4 u_texmtx; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_matambientalpha; uniform highp vec4 u_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; out lowp vec4 v_color0; out mediump vec3 v_texcoord; in vec3 h_normal; 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 = vec3(0.0, 0.0, 1.0); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); viewPos.xy *= 0.642783; vec4 outPos = mul(u_proj, viewPos); v_color0 = u_matambientalpha; v_texcoord = mul(vec4(position, 1.0), u_texmtx).xyz * vec3(u_uvscaleoffset.xy, 1.0); vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outPos.xyzw = u_cullRangeMax.wwww; } } if (u_cullRangeMin.w <= 0.0) { if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) { outPos.xyzw = u_cullRangeMax.wwww; } } gl_Position = outPos; h_normal = vec3(-1.0); }
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:19: S0027: Cannot modify an input variable 00000000:00000012 THR Tex #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) in vec4 position; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; out mediump vec3 v_texcoord; in vec3 h_normal; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0)); gl_Position = outPos; h_normal = vec3(-1.0); }
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:44: S0027: Cannot modify an input variable 00000000:00000930 HWX T Tex Cull #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 vec4 u_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; out lowp vec4 v_color0; out mediump vec3 v_texcoord; in vec3 h_normal; 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 = vec3(0.0, 0.0, 1.0); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); viewPos.xy *= 0.642783; vec4 outPos = mul(u_proj, viewPos); v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outPos.xyzw = u_cullRangeMax.wwww; } } if (u_cullRangeMin.w <= 0.0) { if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) { outPos.xyzw = u_cullRangeMax.wwww; } } gl_Position = outPos; h_normal = vec3(-1.0); }
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:45: S0027: Cannot modify an input variable 00000000:00000938 HWX C T Tex Cull #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 vec4 u_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; out lowp vec4 v_color0; out mediump vec3 v_texcoord; in vec3 h_normal; 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 = vec3(0.0, 0.0, 1.0); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); viewPos.xy *= 0.642783; vec4 outPos = mul(u_proj, viewPos); v_color0 = color0; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outPos.xyzw = u_cullRangeMax.wwww; } } if (u_cullRangeMin.w <= 0.0) { if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) { outPos.xyzw = u_cullRangeMax.wwww; } } gl_Position = outPos; h_normal = vec3(-1.0); }
Dragon Ball Z: Tenkaichi Tag Team v1.11.3-1276-g192a43c1c 2026-08-23 Error in shader compilation: info: 0:16: S0027: Cannot modify an input variable 00000000:0000000a THR C #version 320 es // Mali-G52 MC2 - GLSL 320 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) in vec4 position; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; in vec3 h_normal; void main() { v_color0 = color0; vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0)); gl_Position = outPos; h_normal = vec3(-1.0); }
eFootball Lop - Play v1.6.3 2026-08-23 Error in shader compilation: info: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 > #version 300 es #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; flat in vec4 v_color0; in mediump vec3 v_texcoord; inout vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; if (v.a < 0.002) discard; fragColor0 = v; }
eFootball Lop - Play v1.6.3 2026-08-23 Error in shader compilation: info: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 > #version 300 es #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; in vec4 v_color0; in mediump vec3 v_texcoord; inout vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; if (v.a < 0.002) discard; fragColor0 = v; }
eFootball Lop - Play v1.6.3 2026-08-23 Error in shader compilation: info: 00000000:0000001a THR C Tex #version 300 es precision highp float; in vec4 position; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; out mediump vec3 v_texcoord; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; gl_Position = u_proj_through * vec4(position.xyz, 1.0); }
eFootball Lop - Play v1.6.3 2026-08-23 Error in shader compilation: info: 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); }
TRON EVOLUTION v1.18.1 2026-08-23 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-01rel0 [Revision 96995]. 01f35551:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 MatUp:3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f35551:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 MatUp:3 Cull 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 lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; uniform lowp vec3 u_lightspecular3; 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_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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 = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); ldot = pow(max(ldot, 0.0), u_matspecular.a); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); ldot = pow(max(ldot, 0.0), u_matspecular.a); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLi
Grand Theft Auto: Vice City Stories v1.20.4 2026-09-01 Error in shader compilation: info: 0:5: P0007: Extension directive must occur before any non-preprocessor tokens 0:18: L0002: No matching function for call to 'fwidth' 0:19: L0002: Undeclared variable 'boxSize' 0:20: L0002: Undeclared variable 'boxSize' 0:21: L0002: Undeclared variable 'txOffset' postshader #ifdef GL_ES precision mediump float; #endif #ifdef GL_ES #extension GL_OES_standard_derivatives : enable precision mediump float; precision mediump int; #endif uniform sampler2D sampler0; varying vec2 v_position; uniform vec2 u_texelDelta; // (1.0 / bufferWidth, 1.0 / bufferHeight) uniform vec2 u_pixelDelta; // (1.0 / targetWidth, 1.0 / targetHeight) // Returns pixel sharpened to nearest pixel boundary. vec2 sharpSample(vec4 texSize, vec2 coord) { vec2 boxSize = clamp(fwidth(coord) * texSize.zw, 1e-5, 1.0); coord = coord * texSize.zw - 0.5 * boxSize; vec2 txOffset = smoothstep(vec2(1.0) - boxSize, vec2(1.0), fract(coord)); return (floor(coord) + 0.5 + txOffset) * texSize.xy; } void main() { vec2 sharpPos = sharpSample(vec4(u_texelDelta, 1.0 / u_texelDelta), v_position); vec4 color = texture2D(sampler0, sharpPos); gl_FragColor = color; }
Prince of Persia - Rival Swords v1.20.4 2026-08-20 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r10p0-00rel0 [Revision 96995]. 01f04440:00000b20 HWX T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 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)) // 01f04440:00000b20 HWX T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 Cull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform vec3 u_lightpos1; uniform 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 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; 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(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); vec3 toLight; lowp vec3 diffuse; float distance; float distSq; float invDist; lowp float lightScale; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale; 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; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (
eFootball Lop - Play v1.6.3 2026-08-20 Error in shader compilation: info: postshader uniform vec4 u_texelDelta; attribute vec4 a_position; attribute vec2 a_texcoord0; varying vec4 v_texcoord0; varying vec4 v_texcoord1; varying vec4 v_texcoord2; varying vec4 v_texcoord3; void main() { gl_Position=a_position; v_texcoord0=a_texcoord0.xyxy+vec4(-0.5,-0.5,-1.5,-1.5)*u_texelDelta.xyxy; v_texcoord1=a_texcoord0.xyxy+vec4( 0.5,-0.5, 1.5,-1.5)*u_texelDelta.xyxy; v_texcoord2=a_texcoord0.xyxy+vec4(-0.5, 0.5,-1.5, 1.5)*u_texelDelta.xyxy; v_texcoord3=a_texcoord0.xyxy+vec4( 0.5, 0.5, 1.5, 1.5)*u_texelDelta.xyxy; }
Prince of Persia - Rival Swords v1.20.4 2026-08-26 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r10p0-00rel0 [Revision 96995]. 01f34440:00000b20 HWX T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 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)) // 01f34440:00000b20 HWX T N Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform vec3 u_lightpos1; uniform 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 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; 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(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); vec3 toLight; lowp vec3 diffuse; float distance; float distSq; float invDist; lowp float lightScale; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale; 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; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_dept
God of War®: Ghost of Sparta v1.20.4 2026-08-19 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-01rel0 [Revision 96995]. 01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 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 mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; 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_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(-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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_l
Resistance: Retribution™ v1.20.4-506-g0335e5e6a9 2026-08-18 Error in shader compilation: info: 0:24: P0004: High precision not supported, instead compiling high precision as medium precision 0:25: L0002: Undeclared variable 'gl_FragDepth' 00064000:00000000 Tex(TFuncMod) AlphaTest > TestDiscardToZero FragDepthClamp #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)) // 00064000:00000000 Tex(TFuncMod) AlphaTest > TestDiscardToZero FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform sampler2D testtex; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying vec2 v_zw; void main() { vec4 t = texture2D(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; float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) v.a = 0.0; gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
Resistance: Retribution™ v1.20.4-506-g0335e5e6a9 2026-08-18 Error in shader compilation: info: 0:27: P0004: High precision not supported, instead compiling high precision as medium precision 0:28: L0002: Undeclared variable 'gl_FragDepth' 00064000:00000000 Tex(TFuncMod) Fog AlphaTest > TestDiscardToZero FragDepthClamp #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)) // 00064000:00000000 Tex(TFuncMod) Fog AlphaTest > TestDiscardToZero FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform sampler2D testtex; varying lowp vec4 v_color0; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying vec2 v_zw; void main() { vec4 t = texture2D(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.rgb = mix(u_fogcolor, v.rgb, fogCoef); float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) v.a = 0.0; gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
Resistance: Retribution™ v1.20.4-506-g0335e5e6a9 2026-08-18 Error in shader compilation: info: 0:21: P0004: High precision not supported, instead compiling high precision as medium precision 0:22: L0002: Undeclared variable 'gl_FragDepth' 00060000:00000000 Tex(TFuncMod) FragDepthClamp #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)) // 00060000:00000000 Tex(TFuncMod) FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying vec2 v_zw; void main() { vec4 t = texture2D(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; gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
Ghost Rider v1.20.4-916-ge009d182ff 2026-08-18 Error in shader compilation: info: Fragment shader failed to compile with the following errors: ERROR: 0:2: error(#61) Required extension isn't found, extension 'GL_ARB_shader_stencil_export' is not supported ERROR: error(#273) 1 compilation errors. No code generated stencil_fs #version 330 #extension GL_ARB_shader_stencil_export : require // Driver: ATI Radeon HD 4200 - GLSL 330 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float roundAndScaleTo255f(in float x) { return floor(x * 255.99); } uniform float stencilValue; in highp vec2 v_texcoord; // TEXCOORD0 out vec4 fragColor0; void main() { vec4 index = texture(tex, v_texcoord.xy); vec4 outColor = index.aaaa; gl_FragStencilRefARB = int(roundAndScaleTo255f(index.a)); fragColor0 = outColor; }
Dante's Inferno™ v1.20.4 2026-08-16 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r7p0-00rel1 [Revision 96995]. 01710551:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:1 #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)) // 01710551:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:1 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 lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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 = color0; 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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distSq = dot(toLight, toLight); invDist = inversesqrt(distSq); distance = distSq * invDist; toLight *= invDist; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distSq)), 0.0, 1.0); diffuse = (u_l
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:02200002 Tex Fog FragUber StenToAlphaDual StenUniform TFuncMod #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:02200002 Tex Fog FragUber StenToAlphaDual StenUniform TFuncMod uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:0201d002 Tex FragUber StenToAlphaDual StenUniform TFuncMod AlphaTest0 > #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:0201d002 Tex FragUber StenToAlphaDual StenUniform TFuncMod AlphaTest0 > uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform uint u_alphacolorref; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; if (v.a < 0.002) DISCARD; fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:0220f002 Tex Fog FragUber StenToAlphaDual StenUniform TFuncMod AlphaTest >= #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:0220f002 Tex Fog FragUber StenToAlphaDual StenUniform TFuncMod AlphaTest >= uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform uint u_alphacolorref; uniform uint u_alphacolormask; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); } out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) < int(u_alphacolorref >> 0x18u)) DISCARD; fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:0220f012 Tex Fog FragUber StenToAlphaDual StenUniform TFuncAdd AlphaTest >= #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:0220f012 Tex Fog FragUber StenToAlphaDual StenUniform TFuncAdd AlphaTest >= uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform uint u_alphacolorref; uniform uint u_alphacolormask; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; int roundAndScaleTo255i(in float x) { return int(floor(x * 255.0 + 0.5)); } out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = vec4(p.rgb + t.rgb, p.a * t.a); v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if ((roundAndScaleTo255i(v.a) & int(u_alphacolormask >> 0x18u)) < int(u_alphacolorref >> 0x18u)) DISCARD; fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:02000002 Tex FragUber StenToAlphaDual StenUniform TFuncMod #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:02000002 Tex FragUber StenToAlphaDual StenUniform TFuncMod uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
Dungeon Siege: Throne of Agony v1.20.4 2026-08-15 Error in shader compilation: info: ERROR: 0:3: '#extension' : 'GL_EXT_blend_func_extended' is not supported 10180000:0201d000 FragUber StenToAlphaDual StenUniform AlphaTest0 > #version 320 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require // Driver: Adreno (TM) 650 - GLSL 320 #define DISCARD discard precision lowp float; precision highp int; #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 10180000:0201d000 FragUber StenToAlphaDual StenUniform AlphaTest0 > uniform uint u_alphacolorref; uniform float u_stencilReplaceValue; in lowp vec4 v_color0; in mediump float v_fogdepth; out vec4 fragColor0; out vec4 fragColor1; void main() { vec4 v = v_color0; if (v.a < 0.002) DISCARD; fragColor0 = vec4(v.rgb, u_stencilReplaceValue); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); }
eFootball RB - V. v1.20.4 2026-08-14 Error in shader compilation: info: 0:62: P0001: Unexpected token '' at the end of file found 01000000:80000b20 HWX T N Light: LightUberShader 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)) // 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); } else { ldot = 1.0; } lightSum1 += u_l
The Sims™ 2 v1.20.4 2026-08-11 Error in shader compilation: info: (unknown reason) 01000000:80000b20 HWX T N Light: LightUberShader Cull #version 310 es // Driver: Adreno (TM) 510 - GLSL 310 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); } else { ldot = 1.0; } lightSum1 += u_lightspecular0 * specularColor * ldo
eFootball PC - V. v1.20.4 2026-08-11 Error in shader compilation: info: 0:1: L0009: Missing main() function for shader 00000000:00000928 HWX C T Cull
METAL GEAR SOLID PEACE WALKER v1.20.4 2026-08-05 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-00dev0 [Revision 96995]. 01f31111:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 MatUp:3 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)) // 01f31111:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 MatUp:3 Cull 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 lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; uniform lowp vec3 u_lightspecular3; 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_depthRange; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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 = color0; vec3 diffuseColor = color0.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; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 * ambientColor.rgb
TEKKEN 6 v1.20.4 2026-08-05 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r8p0-00dev0 [Revision 96995]. 01f01111:00000b21 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 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)) // 01f01111:00000b21 HWX T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:1 t:0 Cull attribute vec3 position; attribute mediump vec3 normal; attribute 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 vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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(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; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (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); } else { ldot = 1.0; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 * ambientColor.rgb
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform mat4 WorldViewProj; uniform vec2 TintSaturation; attribute vec3 Position; attribute vec4 Color0; attribute vec2 TexCoord0; varying lowp vec4 oColor0; // COLOR0 (0) varying highp vec2 oTexCoord0; // TEXCOORD0 (1) void main() { gl_Position = mul(WorldViewProj, vec4(Position, 1.0)); oColor0 = Color0; oTexCoord0 = TexCoord0; }
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying lowp vec4 oColor0; // COLOR0 varying highp vec2 oTexCoord0; // TEXCOORD0 void main() { vec4 col = texture2D(tex, oTexCoord0) * oColor0; col.rgb = splat3(col.a); col.rgb *= oColor0.a; gl_FragColor = col; }
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying lowp vec4 oColor0; // COLOR0 varying highp vec2 oTexCoord0; // TEXCOORD0 void main() { vec4 col = texture2D(tex, oTexCoord0) * oColor0; col.rgb *= oColor0.a; gl_FragColor = col; }
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying lowp vec4 oColor0; // COLOR0 void main() { vec4 col = oColor0; col.rgb *= oColor0.a; gl_FragColor = col; }
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #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; attribute vec3 Position; attribute vec4 Color0; attribute vec2 TexCoord0; varying lowp vec4 oColor0; // COLOR0 (0) varying 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-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying lowp vec4 oColor0; // COLOR0 varying highp vec2 oTexCoord0; // TEXCOORD0 void main() { vec4 col = texture2D(tex, oTexCoord0).zyxw * oColor0; col.rgb *= oColor0.a; gl_FragColor = col; }
eFootball Chelito 19 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: Compile failed. ERROR: 0:1: Syntax error, version 110 not supported 1 compilation errors. No code generated. thin3d #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #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; attribute vec3 Position; attribute vec4 Color0; attribute vec2 TexCoord0; varying 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); }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version 00040000:00000000 SWX RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:00000000 SWX RangeCull attribute vec4 position; attribute highp float fog; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { bool zClipped = false; v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = fog; vec4 outPos = position; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version draw2d_copy_color #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 outColor = texture2D(tex, v_texcoord.xy); gl_FragColor = outColor; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000002 Tex(TFuncMod) #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000002 Tex(TFuncMod) uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; 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; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = v; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version draw2d_vs #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) attribute vec2 a_position; attribute vec2 a_texcoord0; varying highp vec2 v_texcoord; // TEXCOORD0 (0) void main() { v_texcoord = a_texcoord0; gl_Position = vec4(a_position, 0.0, 1.0); }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version 00000000:00000001 THR SWX #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00000000:00000001 THR SWX attribute vec4 position; attribute highp float fog; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { bool zClipped = false; v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = fog; vec4 outPos = position; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version reinterpret #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float packColor(vec4 val) { return floor(val.r * 31.99) + floor(val.g * 63.99) * 32.0 + floor(val.b * 31.99) * 2048.0; } vec4 unpackColor(float color) { vec4 outColor = vec4(mod(floor(color), 32.0), mod(floor(color / 32.0), 32.0), mod(floor(color / 1024.0), 32.0), 0.0); outColor.rgb *= 1.0 / 31.0; outColor.a = floor(color / 32768.0); return outColor; } uniform vec2 texSize; uniform float scaleFactor; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 val = texture2D(tex, v_texcoord.xy); vec4 outColor = unpackColor(packColor(val)); gl_FragColor = outColor; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version reinterpret #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float packColor(vec4 val) { float color = floor(val.r * 31.99) + floor(val.g * 31.99) * 32.0 + floor(val.b * 31.99) * 1024.0; if (val.a >= 0.5) color += 32768.0; return color; } vec4 unpackColor(float color) { vec4 outColor = vec4(mod(floor(color), 32.0), mod(floor(color / 32.0), 64.0), mod(floor(color / 2048.0), 32.0), 0.0); outColor.rb *= 1.0 / 31.0; outColor.g *= 1.0 / 63.0; outColor.a = 1.0; return outColor; } uniform vec2 texSize; uniform float scaleFactor; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 val = texture2D(tex, v_texcoord.xy); vec4 outColor = unpackColor(packColor(val)); gl_FragColor = outColor; }
TEKKEN 6 v1.20.4-777-g16a38b090a 2026-08-02 Error in shader compilation: info: ERROR: Invalid #version 00000000:00000001 Clear #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00000000:00000001 Clear varying lowp vec4 v_color0; varying mediump float v_fogdepth; void main() { vec4 v = v_color0; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version draw2d_copy_r16_to_depth #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; uniform vec2 texSize; uniform float scaleFactor; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 outColor = vec4(0.0, 0.0, 0.0, 0.0); float depthValue = texture2D(tex, v_texcoord.xy).x; gl_FragDepth = depthValue; gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000102 Tex(TFuncMod) Fog #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000102 Tex(TFuncMod) Fog uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; 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; 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.rgb = mix(u_fogcolor, v.rgb, fogCoef); gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 0005c000:0100033e HWX N T C LM MatUp:3 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %0005c000:0100033e HWX N T C LM MatUp:3 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0180033e HWX N T C LM MatUp:3 FSDepthClamp Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0180033e HWX N T C LM MatUp:3 FSDepthClamp Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; varying highp vec2 v_zw; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; v_zw = vec2(outPos.z * outPos.w, outPos.w); vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = (u_minZmaxZ.x + u_minZmaxZ.y) * (0.5 / 65536.0) * outPos.w; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 0005c000:0100013e HWX N T C LM MatUp:1 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %0005c000:0100013e HWX N T C LM MatUp:1 Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec4 u_ambient; uniform lowp vec3 u_matdiffuse; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = u_matdiffuse.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0100033e HWX N T C LM MatUp:3 Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0100033e HWX N T C LM MatUp:3 Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0100033a HWX T C LM MatUp:3 Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0100033a HWX T C LM MatUp:3 Light: RangeCull attribute vec3 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0100013e HWX N T C LM MatUp:1 Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0100013e HWX N T C LM MatUp:1 Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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 lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = u_matdiffuse.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:00000002 HWX RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:00000002 HWX RangeCull attribute vec3 position; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; 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; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = u_matambientalpha; v_color0 = u_matambientalpha; v_texcoord = splat3(0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version reinterpret #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float packColor(vec4 val) { return floor(val.r * 31.99) + floor(val.g * 63.99) * 32.0 + floor(val.b * 31.99) * 2048.0; } vec4 unpackColor(float colorLeft, float colorRight) { vec4 outColor = vec4(mod(floor(colorLeft), 256.0), mod(floor(colorLeft / 256.0), 256.0), mod(floor(colorRight), 256.0), mod(floor(colorRight / 256.0), 256.0)); outColor *= 1.0 / 255.0; return outColor; } uniform vec2 texSize; uniform float scaleFactor; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 valLeft = texture2D(tex, v_texcoord.xy + vec2(-0.25 / texSize.x, 0.0)); vec4 valRight = texture2D(tex, v_texcoord.xy + vec2(0.25 / texSize.x, 0.0)); vec4 outColor = unpackColor(packColor(valLeft), packColor(valRight)); gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0180013e HWX N T C LM MatUp:1 FSDepthClamp Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0180013e HWX N T C LM MatUp:1 FSDepthClamp Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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 lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; varying highp vec2 v_zw; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; v_zw = vec2(outPos.z * outPos.w, outPos.w); vec4 ambientColor = color0; vec3 diffuseColor = u_matdiffuse.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = (u_minZmaxZ.x + u_minZmaxZ.y) * (0.5 / 65536.0) * outPos.w; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000482 Tex(TFuncMod) LM FragDepthClamp #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000482 Tex(TFuncMod) LM FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying highp vec2 v_zw; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0180031e HWX N T C MatUp:3 FSDepthClamp Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0180031e HWX N T C MatUp:3 FSDepthClamp Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; varying highp vec2 v_zw; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; v_zw = vec2(outPos.z * outPos.w, outPos.w); vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; 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; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = (u_minZmaxZ.x + u_minZmaxZ.y) * (0.5 / 65536.0) * outPos.w; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:01000182 Tex(TFuncMod) LM Fog StenToAlpha StenUniform #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:01000182 Tex(TFuncMod) LM Fog StenToAlpha StenUniform uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform float u_stencilReplaceValue; varying lowp vec4 v_color0; varying lowp vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v.rgb = mix(u_fogcolor, v.rgb, fogCoef); gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000082 Tex(TFuncMod) LM #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000082 Tex(TFuncMod) LM uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00062a82:00e00002 Tex(TFuncMod) TClampST ReplaceBlend_2 A:10 _B:10 _Eq:0 #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00062a82:00e00002 Tex(TFuncMod) TClampST ReplaceBlend_2 A:10 _B:10 _Eq:0 uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform vec3 u_blendFixA; uniform vec3 u_blendFixB; uniform vec4 u_texclamp; uniform vec2 u_texclampoff; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y)); vec4 t = texture2D(tex, fixedcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); v.rgb = v.rgb * u_blendFixA; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:0100d182 Tex(TFuncMod) LM Fog StenToAlpha StenUniform AlphaTest > #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:0100d182 Tex(TFuncMod) LM Fog StenToAlpha StenUniform AlphaTest > uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform sampler2D testtex; uniform float u_stencilReplaceValue; varying lowp vec4 v_color0; varying lowp vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v.rgb = mix(u_fogcolor, v.rgb, fogCoef); float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) DISCARD; gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000582 Tex(TFuncMod) LM Fog FragDepthClamp #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000582 Tex(TFuncMod) LM Fog FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying lowp vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying highp vec2 v_zw; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v.rgb = mix(u_fogcolor, v.rgb, fogCoef); gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00e05002 Tex(TFuncMod) TClampST AlphaTest == #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00e05002 Tex(TFuncMod) TClampST AlphaTest == uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform vec4 u_texclamp; uniform vec2 u_texclampoff; uniform sampler2D testtex; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y)); vec4 t = texture2D(tex, fixedcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) DISCARD; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000182 Tex(TFuncMod) LM Fog #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000182 Tex(TFuncMod) LM Fog uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying lowp vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v.rgb = mix(u_fogcolor, v.rgb, fogCoef); gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000100 Fog #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000100 Fog varying lowp vec4 v_color0; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; void main() { vec4 v = v_color0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v.rgb = mix(u_fogcolor, v.rgb, fogCoef); gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:0100d082 Tex(TFuncMod) LM StenToAlpha StenUniform AlphaTest > #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:0100d082 Tex(TFuncMod) LM StenToAlpha StenUniform AlphaTest > uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform sampler2D testtex; uniform float u_stencilReplaceValue; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) DISCARD; gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:00000020 SWX LM RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:00000020 SWX LM RangeCull attribute vec4 position; attribute highp float fog; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { bool zClipped = false; v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = fog; vec4 outPos = position; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:01000082 Tex(TFuncMod) LM StenToAlpha StenUniform #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:01000082 Tex(TFuncMod) LM StenToAlpha StenUniform uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform float u_stencilReplaceValue; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version stencil_fs #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float roundAndScaleTo255f(in float x) { return floor(x * 255.99); } uniform float stencilValue; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 index = texture2D(tex, v_texcoord.xy); vec4 outColor = index.aaaa; float shifted = roundAndScaleTo255f(index.a) / roundAndScaleTo255f(stencilValue); if (mod(floor(shifted), 2.0) < 0.99) DISCARD; gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:0100031e HWX N T C MatUp:3 Light: RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:0100031e HWX N T C MatUp:3 Light: RangeCull attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform vec3 u_vpScale; uniform vec3 u_vpOffset; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; vec3 normalizeOr001(vec3 v) { float len2 = dot(v, v); return len2 == 0.0 ? vec3(0.0, 0.0, 1.0) : (v * inversesqrt(len2)); } void main() { bool zClipped = false; 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); if (outPos.z < -outPos.w) { zClipped = true; } float recip = 1.0 / outPos.w; outPos.xyz = (outPos.xyz * u_vpScale.xyz) * recip + u_vpOffset.xyz; vec4 ambientColor = color0; vec3 diffuseColor = color0.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); mediump float ldot; 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; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version reinterpret #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; float packColor(vec2 val) { return floor(val.r * 255.99) + floor(val.g * 255.99) * 256.0; } vec4 unpackColor(float color) { vec4 outColor = vec4(mod(floor(color), 32.0), mod(floor(color / 32.0), 64.0), mod(floor(color / 2048.0), 32.0), 0.0); outColor.rb *= 1.0 / 31.0; outColor.g *= 1.0 / 63.0; outColor.a = 1.0; return outColor; } uniform vec2 texSize; uniform float scaleFactor; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 val = texture2D(tex, v_texcoord.xy); float u = mod(floor(v_texcoord.x * texSize.x * 2.0), 2.0); vec4 outColor = unpackColor(u == 0.0 ? packColor(val.rg) : packColor(val.ba)); gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000402 Tex(TFuncMod) FragDepthClamp #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000402 Tex(TFuncMod) FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying highp vec2 v_zw; void main() { vec4 t = texture2D(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; gl_FragColor = v; highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:0100d482 Tex(TFuncMod) LM StenToAlpha StenUniform AlphaTest > FragDepthClamp #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:0100d482 Tex(TFuncMod) LM StenToAlpha StenUniform AlphaTest > FragDepthClamp uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform sampler2D testtex; uniform float u_stencilReplaceValue; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; varying highp vec2 v_zw; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t + s; v.rgb *= u_texNoAlphaMul.y; float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) DISCARD; gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); highp float projZ = v_zw.x / v_zw.y; gl_FragDepth = clamp(projZ, 0.0, 65535.0) / 65535.0; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00e00002 Tex(TFuncMod) TClampST #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00e00002 Tex(TFuncMod) TClampST uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform vec4 u_texclamp; uniform vec2 u_texclampoff; varying lowp vec4 v_color0; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec2 fixedcoord = vec2((clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z) + u_texclampoff.x), (clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w) + u_texclampoff.y)); vec4 t = texture2D(tex, fixedcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:01000002 Tex(TFuncMod) StenToAlpha StenUniform #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:01000002 Tex(TFuncMod) StenToAlpha StenUniform uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; uniform float u_stencilReplaceValue; 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; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version stencil_vs #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) attribute vec2 a_position; varying highp vec2 v_texcoord; // TEXCOORD0 (0) void main() { v_texcoord = a_position * 2.0; gl_Position = vec4(v_texcoord * 2.0 - vec2(1.0, 1.0), 0.0, 1.0); }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000002 Tex(TFuncMod) #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000002 Tex(TFuncMod) uniform sampler2D tex; uniform vec2 u_texNoAlphaMul; 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; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb *= u_texNoAlphaMul.y; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00060000:00000000 #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00060000:00000000 varying lowp vec4 v_color0; varying mediump float v_fogdepth; void main() { vec4 v = v_color0; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00040000:00000000 SWX RangeCull #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00040000:00000000 SWX RangeCull attribute vec4 position; attribute highp float fog; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform vec2 u_rasterOffset; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { bool zClipped = false; v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = fog; vec4 outPos = position; if (!zClipped && (outPos.x < 0.0 || outPos.y < 0.0 || outPos.x >= 4096.0 || outPos.y >= 4096.0 || outPos.w < -1.0)) { outPos = vec4(u_NaN, u_NaN, u_NaN, u_NaN); } outPos.xy -= u_rasterOffset.xy; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version draw2d_copy_depth #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 outColor = vec4(0.0, 0.0, 0.0, 0.0); gl_FragDepth = texture2D(tex, v_texcoord.xy).x; gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00000000:00000001 Clear #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00000000:00000001 Clear varying lowp vec4 v_color0; varying mediump float v_fogdepth; void main() { vec4 v = v_color0; gl_FragColor = v; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version 00000000:00000001 THR SWX #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // %00000000:00000001 THR SWX attribute vec4 position; attribute highp float fog; attribute vec2 texcoord; attribute lowp vec4 color0; uniform vec4 u_xywh; uniform float u_NaN; uniform vec2 u_minZmaxZ; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { bool zClipped = false; v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = fog; vec4 outPos = position; outPos.xy = (((outPos.xy + u_xywh.xy) * u_xywh.zw) - vec2(1.0, 1.0)) * outPos.w; outPos.z *= outPos.w * (1.0 / 65536.0); gl_Position = outPos; gl_Position.z = gl_Position.z * 2.0 - gl_Position.w; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version draw2d_copy_color #version 110 // Driver: - GLSL 110 #define DISCARD discard #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) uniform sampler2D tex; varying highp vec2 v_texcoord; // TEXCOORD0 void main() { vec4 outColor = texture2D(tex, v_texcoord.xy); gl_FragColor = outColor; }
God of War: Chains of Olympus v1.20.4-777-g16a38b090a 2026-08-01 Error in shader compilation: info: ERROR: Invalid #version draw2d_vs #version 110 // Driver: - GLSL 110 #define gl_VertexIndex gl_VertexID #define lowp #define mediump #define highp #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) attribute vec2 a_position; attribute vec2 a_texcoord0; varying highp vec2 v_texcoord; // TEXCOORD0 (0) void main() { v_texcoord = a_texcoord0; gl_Position = vec4(a_position, 0.0, 1.0); }