Recent logs - v1.7.2

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
eFootball Play-C v1.7.2 2024-10-03 ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 00000000
FIFA 22 By Tutoriales Bendezu v1.7.2 2024-10-01 Unknown GetPointer 00000060 PC 088e4910 LR 088e4938
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 746c6767
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7e6c6767
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7f7e5a02
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 78767678
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 75787676
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 756c676c
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 78786f67
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 02026e7f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 75787678
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 0002777f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 78787478
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 02537d7f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 777d7f7f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 74757567
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7874786f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 75787866
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 023e6e7d
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76786f75
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7c7f7f7d
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 74786f74
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76666767
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7f7f7d77
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767674
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77777777
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 78786167
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7f7e6c67
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767874
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7e6e3e02
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7f7c693e
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7f6c6767
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767678
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 79787876
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767675
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 786f6767
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7676786f
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76100000
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 74767875
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 74767676
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7678756c
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 01777777
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767676
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767474
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 7678786c
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77511100
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 05774000
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 78666c75
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 05774111
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 0002037c
eFootball Chelito 19 v1.7.2 2024-09-13 Branch in RSRTComp delay slot at 0001005c in block starting at 00010044
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 00057777
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 76767878
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77777776
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77761000
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 00001777
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77750000
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 00017777
eFootball Chelito 19 v1.7.2 2024-09-13 Jump to invalid address: 07290080
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77400000
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 05775210
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 77777500
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 00000577
eFootball Chelito 19 v1.7.2 2024-09-07 ReadFromHardware: Invalid address d8d27be8 near PC d8d27be8 LR 08000018
Def Jam® Fight For NY™: The Takeover v1.7.2 2024-08-11 sceDmacMemcpy(dest=09b4c2c0, src=08400000, size=203968): overlapping read
EA-Sports FC PC-V v1.8.0 2024-09-15 sceDmacMemcpy(dest=092ed040, src=086ce940, size=1251008): overlapping read
eFootball 2024 v1.9.4 2024-10-06 Savedata version requested: 3
eFootball Chelito 19 v1.7.2 2024-09-13 MIPSCompileOp: Invalid instruction 75000000
eFootball v1.9.4 2024-10-05 Savedata version requested on save: 3
eFootball PC - V. v1.9.4 2024-10-01 sceDmacMemcpy(dest=09054040, src=086cea80, size=1250688): overlapping read
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 An uneaten prefix at end of block: 08812750
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 ReadFromHardware: Invalid address dead5887 near PC 0881273c LR 08a2f338
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 MIPSCompileOp: Invalid instruction ceb020cf
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 Branch in RSZeroComp delay slot at 08812750 in block starting at 08812720
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 MIPSCompileOp: Invalid instruction 0705840d
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 MIPSCompileOp: Invalid instruction 4a02d3ad
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 MIPSCompileOp: Invalid instruction 73784c30
Pro Evolution Soccer 2018 - PES Libertadores v4.1 - DAEMHVJPB v1.7.2 2024-07-24 MIPSCompileOp: Invalid instruction 4a37b482
eFootball v1.9.4 2024-10-06 Savedata version requested: 3
MYFC 25 MYUNO4U v1.9.4 2024-10-05 Unknown GetPointer 00000000 PC 08816148 LR 0881615c
MYFC 25 MYUNO4U v1.9.4 2024-10-06 Savedata version requested on save: 3
MYFC 25 MYUNO4U v1.9.4 2024-10-06 Savedata version requested: 3
eFootball Chelito 19 v1.7.2 2024-07-07 Unknown GetPointer 6d76766e PC 0884d7b4 LR 0884d7d4
PES RAFZZID v1.9.4 2024-09-28 Savedata version requested on save: 3
NARUTO Shippuden: Ultimate Ninja Heroes 3 v1.7.2 2024-06-27 __KernelStopThread: thread 1804 does not exist
eFootball Play-C v1.8.0 2024-09-02 sceDmacMemcpy(dest=04154000, src=091f61b0, size=557056): overlapping read
eFootball PES 2024 "SN3" v1.9.4 2024-09-29 sceDmacMemcpy(dest=086ce8c0, src=040cc000, size=1251136): overlapping read
eFootball 2024 By Komo Valeri v1.9.4 2024-10-05 Savedata version requested on save: 3
eFootball 2024 By Komo Valeri v1.9.4 2024-10-06 Savedata version requested: 3
EFOOTBALL NEW PATCH SEASON 2025.... v1.9.4 2024-10-06 Savedata version requested: 3
eFootball Chelito 19 v1.7.2 2024-05-24 ReadFromHardware: Invalid address 778cfcb0 near PC 778cfcb0 LR 08000018
eFootball Chelito 19 v1.7.2 2024-05-22 Unknown GetPointer 2c5b5042 PC 0884d5b0 LR 0884d7d4
eFootball Chelito 19 v1.7.2 2024-05-21 Unknown GetPointer 7a479b78 PC 0884d5b0 LR 0884d7d4
eFootball PES 2024 "SN3" v1.9.4 2024-10-06 avcodec_decode_audio4: Error decoding audio -1094995529 / bebbb1b7
eFootball PES 2024 "SN3" v1.9.4 2024-10-06 Savedata version requested on save: 3
eFootball PES 2024 "SN3" v1.9.4 2024-10-05 Unknown GetPointer 00000000 PC 08816130 LR 08816144
eFootball PES 2024 "SN3" v1.9.4 2024-10-06 Savedata version requested: 3
刺客信条 血统 汉化版 PLAY汉化组 v1.7.2 2024-07-01 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 r4p1-01rel0 [Revision 96995]. 03f10044:41400b14 HWX T N Fog Tex Bones:6 Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:0 MatUp:1 WScale 1 #version 100 precision highp float; attribute mediump vec4 w1; attribute mediump vec2 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 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 mediump vec3 u_lightatt1; 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 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 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; 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); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; 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; lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos3; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse3 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient3 * u_matambientalpha.rgb + diffuse); v_color0 = clamp(lightSum0, 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.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.w = u_cullRangeMax.w; } } gl_Position = outPos; }
刺客信条 血统 汉化版 PLAY汉化组 v1.7.2 2024-07-01 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:0120000e Tex Fog StenToAlpha StenUniform TFuncRepl #version 100 precision lowp float; uniform sampler2D tex; uniform float u_stencilReplaceValue; 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.a); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); } vs: 03f10044:41890b54 HWX T N Fog Tex TexProjNNrm UVMtx Bones:7 Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:0 MatUp:1 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1; attribute mediump vec3 w2; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform mediump mat4 u_texmtx; 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 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 mediump vec3 u_lightatt1; 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 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 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; 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); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; 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; lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos3; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse3 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient3 * u_matambientalpha.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_texcoord = (u_texmtx * vec4(normalize(normal), 1.0)).xyz * vec3(u_uvscaleoffset.xy, 1.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; vec3 projPos = outPos.xyz / out
刺客信条 血统 汉化版 PLAY汉化组 v1.7.2 2024-07-01 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:01a00002 Tex Fog 2x StenToAlpha StenUniform TFuncMod #version 100 precision lowp float; uniform sampler2D tex; uniform float u_stencilReplaceValue; 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); v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); } vs: 03f10044:41400b14 HWX T N Fog Tex Bones:6 Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:0 MatUp:1 WScale 1 (failed) #version 100 precision highp float; attribute mediump vec4 w1; attribute mediump vec2 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 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 mediump vec3 u_lightatt1; 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 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 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; 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); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; 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; lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos3; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse3 * u_matdiffuse) * ldot; lightSum0.rgb += (u_lightambient3 * u_matambientalpha.rgb + diffuse); v_color0 = clamp(lightSum0, 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.0 || (projPos.z >= u_cullRangeMin.z &