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

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

Game: Dragon Ball Z: Tenkaichi Tag Team (ULES01456_1.00)

Error in shader compilation: info: ERROR: 0:21: '=' :  cannot convert from '2-component vector of int' to '2-component vector of float'
ERROR: 1 compilation errors.  No code generated.


00000000:000003e2 Tex TexAlpha Depal TClampST TFuncMod 
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Adreno (TM) 660 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
precision highp int;
uniform sampler2D tex;
uniform vec4 u_texclamp;
uniform sampler2D pal;
uniform uint u_depal_mask_shift_off_fmt;
 in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
  vec2 fixedcoord = vec2(clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w));
  vec2 uv = fixedcoord.xy;
  vec2 uv_round;
  vec2 tsize = textureSize(tex, 0).xy;
  vec2 fraction;
  bool bilinear = (u_depal_mask_shift_off_fmt >> 31) != 0U;
  if (bilinear) {
    uv_round = uv * tsize - vec2(0.5, 0.5);
    fraction = fract(uv_round);
    uv_round = (uv_round - fraction + vec2(0.5, 0.5)) / tsize;
  } else {
    uv_round = uv;
  }
  highp vec4 t = texture(tex, uv_round);
  highp vec4 t1 = textureOffset(tex, uv_round, ivec2(1, 0));
  highp vec4 t2 = textureOffset(tex, uv_round, ivec2(0, 1));
  highp vec4 t3 = textureOffset(tex, uv_round, ivec2(1, 1));
  uint depalMask = (u_depal_mask_shift_off_fmt & 0xFFU);
  uint depalShift = (u_depal_mask_shift_off_fmt >> 8) & 0xFFU;
  uint depalOffset = ((u_depal_mask_shift_off_fmt >> 16) & 0xFFU) << 4;
  uint depalFmt = (u_depal_mask_shift_off_fmt >> 24) & 0x3U;
  uvec4 col; uint index0; uint index1; uint index2; uint index3;
  switch (int(depalFmt)) {
  case 0:
    col = uvec4(t.rgb * vec3(31.99, 63.99, 31.99), 0);
    index0 = (col.b << 11) | (col.g << 5) | (col.r);
    if (bilinear) {
      col = uvec4(t1.rgb * vec3(31.99, 63.99, 31.99), 0);
      index1 = (col.b << 11) | (col.g << 5) | (col.r);
      col = uvec4(t2.rgb * vec3(31.99, 63.99, 31.99), 0);
      index2 = (col.b << 11) | (col.g << 5) | (col.r);
      col = uvec4(t3.rgb * vec3(31.99, 63.99, 31.99), 0);
      index3 = (col.b << 11) | (col.g << 5) | (col.r);
    }
    break;
  case 1:
    col = uvec4(t.rgba * vec4(31.99, 31.99, 31.99, 1.0));
    index0 = (col.a << 15) | (col.b << 10) | (col.g << 5) | (col.r);
    if (bilinear) {
      col = uvec4(t1.rgba * vec4(31.99, 31.99, 31.99, 1.0));
      index1 = (col.a << 15) | (col.b << 10) | (col.g << 5) | (col.r);
      col = uvec4(t2.rgba * vec4(31.99, 31.99, 31.99, 1.0));
      index2 = (col.a << 15) | (col.b << 10) | (col.g << 5) | (col.r);
      col = uvec4(t3.rgba * vec4(31.99, 31.99, 31.99, 1.0));
      index3 = (col.a << 15) | (col.b << 10) | (col.g << 5) | (col.r);
    }
    break;
  case 2:
    col = uvec4(t.rgba * 15.99);
    index0 = (col.a << 12) | (col.b << 8) | (col.g << 4) | (col.r);
    if (bilinear) {
      col = uvec4(t1.rgba * 15.99);
      index1 = (col.a << 12) | (col.b << 8) | (col.g << 4) | (col.r);
      col = uvec4(t2.rgba * 15.99);
      index2 = (col.a << 12) | (col.b << 8) | (col.g << 4) | (col.r);
      col = uvec4(t3.rgba * 15.99);
      index3 = (col.a << 12) | (col.b << 8) | (col.g << 4) | (col.r);
    }
    break;
  case 3:
    col = uvec4(t.rgba * 255.99);
    index0 = (col.a << 24) | (col.b << 16) | (col.g << 8) | (col.r);
    if (bilinear) {
      col = uvec4(t1.rgba * 255.99);
      index1 = (col.a << 24) | (col.b << 16) | (col.g << 8) | (col.r);
      col = uvec4(t2.rgba * 255.99);
      index2 = (col.a << 24) | (col.b << 16) | (col.g << 8) | (col.r);
      col = uvec4(t3.rgba * 255.99);
      index3 = (col.a << 24) | (col.b << 16) | (col.g << 8) | (col.r);
    }
    break;
  };
  index0 = ((index0 >> depalShift) & depalMask) | depalOffset;
  t = texelFetch(pal, ivec2(index0, 0), 0);
  if (bilinear && !(index0 == index1 && index1 == index2 && index2 == index3)) {
    index1 = ((index1 >> depalShift) & depalMask) | depalOffset;
    index2 = ((index2 >> depalShift) & depalMask) | depalOffset;
    index3

Status: new. 3 hits from 2023-04-30 07:19:35 to 2023-05-08 20:13:53 UTC. Message #2324662.

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.