Recent logs - Avatar: The Last Airbender

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
Avatar: The Last Airbender v1.5.4 2019-02-22 sceDmacMemcpy(dest=041d1c00, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-11 sceDmacMemcpy(dest=041d0200, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-09 sceDmacMemcpy(dest=041d0e00, src=08f22040, size=4096): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-08 sceDmacMemcpy(dest=041c8a00, src=08fc4f30, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-02 sceDmacMemcpy(dest=041c3400, src=09c82e40, size=32768): overlapping read
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200800 LM Fog #version 100 precision lowp float; varying vec4 v_color0; varying vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; void main() { vec4 s = vec4(v_color1, 0.0); vec4 v = v_color0 + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:00000005 LM Fog (failed) #version 100 precision highp float; attribute vec4 position; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:19: L0001: Expected token ')', found 'identifier' 00000000:0000001c C Fog Tex #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200802 Tex LM Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:0000001d C LM Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:19: L0001: Expected token ')', found 'identifier' 00000000:00000005 LM Fog #version 100 precision highp float; attribute vec4 position; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:19: L0001: Expected token ')', found 'identifier' 00000000:00000014 Fog Tex #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:22: L0001: Expected token ')', found 'identifier' 00000000:0000001d C LM Fog Tex #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:22: L0001: Expected token ')', found 'identifier' 00000000:00000015 LM Fog Tex #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 03330050:41c00b15 HWX T N LM Fog Tex Bones:8 Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1, w2; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; 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 mat4 u_bone5; uniform mat4 u_bone6; uniform mat4 u_bone7; 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 lowp vec3 u_lightspecular1; 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 = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5 + w2.z * u_bone6 + w2.w * u_bone7; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.9921875; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz * 1.9921875; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 01130000:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 MatUp:3 (failed) #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 lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; 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_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() { 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 * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = vec3(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.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200802 Tex LM Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 03330050:41c00b15 HWX T N LM Fog Tex Bones:8 Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1, w2; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; 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 mat4 u_bone5; uniform mat4 u_bone6; uniform mat4 u_bone7; 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 lowp vec3 u_lightspecular1; 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 = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5 + w2.z * u_bone6 + w2.w * u_bone7; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.9921875; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz * 1.9921875; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying 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; vec4 v = p * t; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:00000b14 HWX T N Fog Tex (failed) #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 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 mediump vec3 v_texcoord; 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; 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d002 Tex Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 00000000:0000001c C Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 03330050:40c00b15 HWX T N LM Fog Tex Bones:4 Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; 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 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 lowp vec3 u_lightspecular1; 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 = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.9921875; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz * 1.9921875; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d802 Tex LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 00000000:0000001d C LM Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:61: L0001: Expected token ')', found 'identifier' 01330050:00000b15 HWX T N LM Fog Tex Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 #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 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 lowp vec3 u_lightspecular1; 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() { 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 01330050:00000b15 HWX T N LM Fog Tex Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 (failed) #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 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 lowp vec3 u_lightspecular1; 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() { 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200802 Tex LM Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:00000015 LM Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00000002 Tex TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a); gl_FragColor = v; } vs: 00000000:00000b18 HWX C T N Tex (failed) #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 lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; 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; v_color0 = color0; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying 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; vec4 v = p * t; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:00000014 Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:23: L0001: Expected token ')', found 'identifier' 00000000:00000b10 HWX T N Tex #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 lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; 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; v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 00000000:0000001d C LM Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00000022 Tex TexAlpha TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; gl_FragColor = v; } vs: 00000000:00000b10 HWX T N Tex (failed) #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 lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; 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; v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200002 Tex Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:0000001c C Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:24: L0001: Expected token ')', found 'identifier' 00000000:00000b18 HWX C T N Tex #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 lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; 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; v_color0 = color0; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200802 Tex LM Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 01330050:00000b15 HWX T N LM Fog Tex Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 (failed) #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 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 lowp vec3 u_lightspecular1; 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() { 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00000002 Tex TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a); gl_FragColor = v; } vs: 00000000:00000018 C Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d822 Tex TexAlpha LM Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying vec4 v_color0; varying 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; vec4 v = p * t + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 00000000:00000015 LM Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; attribute lowp vec3 color1; uniform mat4 u_proj; 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() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_color1 = color1; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0021d022 Tex TexAlpha Fog TFuncMod AlphaTest0 > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; varying 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; vec4 v = p * t; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; gl_FragColor = v; } vs: 00000000:0000001c C Fog Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; 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; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00000022 Tex TexAlpha TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; gl_FragColor = v; } vs: 00000000:00000010 Tex (failed) #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00200802 Tex LM Fog TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying 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; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 03330050:40c00b15 HWX T N LM Fog Tex Bones:4 Light: 0: c:0 t:0 1: c:1 t:1 MatUp:3 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; 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 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 lowp vec3 u_lightspecular1; 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 = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz * 1.9921875; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz * 1.9921875; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 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; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 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; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00000022 Tex TexAlpha TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; gl_FragColor = v; } vs: 00000000:00000910 HWX T Tex (failed) #version 100 precision highp float; attribute vec3 position; attribute 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_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:43: L0001: Expected token ')', found 'identifier' 01130000:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 MatUp:3 #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 lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; 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_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() { 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 * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = vec3(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.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.6.3-492-g9fddfff66 2019-02-02 Error in shader compilation: info: 0:16: L0001: Expected token ')', found 'identifier' 00000000:00000018 C Tex #version 100 precision highp float; attribute vec4 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
Avatar: The Last Airbender v1.7.5 2019-01-23 sceDmacMemcpy(dest=041d0c00, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.6.3 2019-01-20 sceDmacMemcpy(dest=041be800, src=08eb5200, size=512): overlapping read
Avatar: The Last Airbender v1.5.4 2019-01-18 sceDmacMemcpy(dest=041cf400, src=09464f80, size=4096): overlapping read
Avatar: The Last Airbender v1.7.5 2019-01-16 sceDmacMemcpy(dest=041c5c00, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.5.4 2019-01-03 sceDmacMemcpy(dest=041d1800, src=093a7600, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-17 sceDmacMemcpy(dest=041cfe00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.2 2019-01-01 sceDmacMemcpy(dest=041cfa00, src=09bb9eb0, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-30 sceDmacMemcpy(dest=041d0800, src=08f2bb40, size=4096): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-30 sceDmacMemcpy(dest=041b8000, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.7.2 2018-12-29 sceDmacMemcpy(dest=041d0c00, src=08ee4e00, size=4096): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-24 sceDmacMemcpy(dest=041bf400, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-23 sceDmacMemcpy(dest=041cb800, src=09bcaf00, size=8192): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-22 sceDmacMemcpy(dest=041ca000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-22 sceDmacMemcpy(dest=041d0e00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-21 sceDmacMemcpy(dest=041ce800, src=08eb5200, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-21 sceDmacMemcpy(dest=041cee00, src=08f22040, size=4096): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-20 sceDmacMemcpy(dest=04194000, src=09bd96c0, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-20 sceDmacMemcpy(dest=041cea00, src=08ee2d00, size=8192): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-20 sceDmacMemcpy(dest=041d0a00, src=09a801c0, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-19 sceDmacMemcpy(dest=041d1c00, src=09a94080, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-18 sceDmacMemcpy(dest=041d1e00, src=09bb8710, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-18 sceDmacMemcpy(dest=041be200, src=09c6aa80, size=32768): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-18 sceDmacMemcpy(dest=041d0400, src=09a7f860, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-17 sceDmacMemcpy(dest=041a0000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-17 sceDmacMemcpy(dest=041a7000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-16 sceDmacMemcpy(dest=041cd600, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-15 sceDmacMemcpy(dest=041cd000, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-15 sceDmacMemcpy(dest=041cda00, src=09a84360, size=2048): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-22 sceDmacMemcpy(dest=041cec00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-14 sceDmacMemcpy(dest=041c8600, src=09bb9eb0, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-13 sceDmacMemcpy(dest=041ce800, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-13 sceDmacMemcpy(dest=041cd400, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-12 sceDmacMemcpy(dest=041cbc00, src=08ee2d00, size=8192): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-12 sceDmacMemcpy(dest=041a9000, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-12 sceDmacMemcpy(dest=041c0200, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-11 sceDmacMemcpy(dest=041cbc00, src=08eb5200, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-11 sceDmacMemcpy(dest=041c8000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-11 sceDmacMemcpy(dest=041b4000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-10 sceDmacMemcpy(dest=0419c000, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.7.5 2018-12-10 sceDmacMemcpy(dest=041a5800, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.4.2 2018-12-03 sceDmacMemcpy(dest=041b7a00, src=08f63e70, size=512): overlapping read
Avatar: The Last Airbender v1.7.5 2019-02-10 ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 00000000
Avatar: The Last Airbender v1.5.4 2018-11-14 sceDmacMemcpy(dest=041cde00, src=09bb9eb0, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3 2018-11-09 sceDmacMemcpy(dest=041c5200, src=09a75f20, size=32768): overlapping read
Avatar: The Last Airbender v1.6.3 2018-11-06 sceDmacMemcpy(dest=041a8800, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.6.3 2018-11-06 sceDmacMemcpy(dest=041cfc00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.7.2 2018-11-04 sceDmacMemcpy(dest=041d0200, src=093f9c40, size=4096): overlapping read
Avatar: The Last Airbender v1.6.3 2018-11-04 sceDmacMemcpy(dest=041cfc00, src=09bb5790, size=256): overlapping read
Avatar: The Last Airbender v1.7 2018-10-30 sceDmacMemcpy(dest=041c7c00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3 2018-10-29 sceDmacMemcpy(dest=04194000, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3 2018-10-26 sceDmacMemcpy(dest=041b8600, src=09b31270, size=256): overlapping read
Avatar: The Last Airbender v1.6.3 2018-10-24 sceDmacMemcpy(dest=041bf200, src=09af8d50, size=8192): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-12 sceDmacMemcpy(dest=041d0000, src=090631c0, size=2048): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-12 sceDmacMemcpy(dest=041ab000, src=09ae5d10, size=16384): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-12 sceDmacMemcpy(dest=041c7e00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3 2018-10-11 sceDmacMemcpy(dest=041c5000, src=09bb9eb0, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3 2018-10-11 sceDmacMemcpy(dest=041cb800, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-10 sceDmacMemcpy(dest=041d0000, src=09a84360, size=2048): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-10 sceDmacMemcpy(dest=041d0200, src=093c6720, size=2048): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-10 sceDmacMemcpy(dest=041c5c00, src=09bd8800, size=1024): overlapping read
Avatar: The Last Airbender v1.6.3-358-g17de6ad 2018-10-10 sceDmacMemcpy(dest=041c7a00, src=08eb5200, size=512): overlapping read
Avatar: The Last Airbender v1.5.4 2018-10-07 sceDmacMemcpy(dest=041cfa00, src=09a8d960, size=2048): overlapping read