Message #2438632 - Error in shader compilation: info: %s %s %s

Kind #970: Error in shader compilation: info: %s %s %s

Game: God of War: Chains of Olympus (UCUS98653_1.00)

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].
07f14004:41000b3d HWX C T N LM Fog Tex Bones:5 Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:1 WScale 3 Cull 
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute mediump vec4 w1;
attribute mediump float w2;
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 mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
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 lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform 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_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;
void main() {
  mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2, u_bone4);
  vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz;
  vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
  mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz;
  mediump vec3 worldnormal = normalize(mul(vec4(skinnednormal, 0.0), u_world).xyz);
  vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
  vec4 outPos = mul(u_proj, viewPos);
  lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
  vec3 toLight;
  lowp vec3 diffuse;
  float distance;
  lowp float lightScale;
  mediump float ldot;
  toLight = u_lightpos0 - 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);
  lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
  toLight = u_lightpos1;
  ldot = dot(toLight, worldnormal);
  diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0);
  lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
  toLight = u_lightpos2;
  ldot = dot(toLight, worldnormal);
  diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0);
  lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
  toLight = u_lightpos3 - worldpos;
  distance = length(toLight);
  toLight /= distance;
  ldot = dot(toLight, worldnormal);
  lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
  diffuse = (u_lightdiffuse3 * u_matdiffuse) * max(ldot, 0.0);
  lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
  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;
  vec3 projPos = outPos.xyz / outPos.w;
  if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
    if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) {
      outPo

Status: new. 3 hits from 2024-01-14 01:04:19 to 2024-01-14 02:05:43 UTC. Message #2438632.

Individual reports are stored since 2026-11-12, the newest 100 per message; none for this message yet. Older hits only exist as the counters above. Hover a cell for details.