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

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

Game: Prince of Persia - Revelations (ULES00223_1.01)

Error in shader compilation: info: ERROR: 0:172: 'premature EOF' : Syntax error:  syntax error
ERROR: 1 compilation errors.  No code generated.


01000000:80000b20 HWX T N Light: LightUberShader Cull 
#version 320 es
#extension GL_EXT_clip_cull_distance : enable
// Driver: Adreno (TM) 610 - 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

Status: new. 1 hits from 2026-05-28 05:23:06 to 2026-05-28 05:23:06 UTC. Message #2766206.

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.