Message #1876814 - Error in shader program link: info: %s fs: %s %s vs: %s %s

Kind #967: Error in shader program link: info: %s fs: %s %s vs: %s %s

Game: Tomb Raider: Anniversary™ (ULUS10253_1.02)

Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1


fs: 00000000:0120d02e Tex TexAlpha Fog StenToAlpha StenUniform TFuncRepl AlphaTest > 
#version 330
#extension GL_EXT_gpu_shader4 : enable
// GeForce 9600M GT/PCIe/SSE2 - 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;
uniform sampler2D testtex;
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;
void main() {
  vec4 t = texture(tex, v_texcoord.xy);
  vec4 v = t;
  float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
  v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
  float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
  if (aResult < 0.5) DISCARD;
  fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
}

vs: 01110004:003a0b3c HWX C T N Fog Tex UVEnv Light: 0: c:0 t:1 2: c:0 t:0 3: c:0 t:0 MatUp:1 Cull 
#version 330
#extension GL_EXT_gpu_shader4 : enable
// GeForce 9600M GT/PCIe/SSE2 - GLSL 330
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos2;
uniform vec3 u_lightpos3;
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;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
  vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
  mediump vec3 worldnormal = normalize(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);
  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;
  v_color0 = clamp(lightSum0, 0.0, 1.0);
  v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos2) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos2), worldnormal)), 1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal))) * 0.5, 1.0);
  v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
  vec3 projPos = outPos.xyz / outPos.w;
  if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
    if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) {
      outPos.xyzw = u_cullRangeMax.wwww;
    }
  }
  gl_Position = outPos;
}

Status: new. 1 hits from 2021-06-25 04:53:23 to 2021-06-25 04:53:23 UTC. Message #1876814.

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.