Recent logs - v1.4.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 PC - V. v1.4.2 2024-07-14 sceKernelCreateThread(name=AdhocThread): unsupported options parameter 00001000
eFootball 2024 Beta By Tutoriales Bendezu v1.4.2 2024-07-14 ReadFromHardware: Invalid address 01732a22 near PC 0881da60 LR 0881da04
God of War®: Ghost of Sparta v1.4.2 2024-07-10 fbo_blit_color failed in blit (00162000 -> 00162000)
God of War®: Ghost of Sparta v1.4.2 2024-07-10 fbo_blit_color failed in blit (00000000 -> 00000000)
God of War®: Ghost of Sparta v1.4.2 2024-07-08 FBO reusing depthbuffer, 0008c000/00118000 and 00162000/00118000
God of War®: Ghost of Sparta v1.4.2 2024-07-08 FBO reusing depthbuffer, 00000000/00118000 and 00162000/00118000
God of War®: Ghost of Sparta v1.4.2 2024-07-08 FBO reusing depthbuffer, 0008c000/00118000 and 00000000/00118000
God of War®: Ghost of Sparta v1.4.2 2024-07-08 FBO reusing depthbuffer, 00000000/00118000 and 0008c000/00118000
UEFA EURO 2008™ v1.4.2 2024-06-19 sceKernelCreateThread(name=AdhocThread): unsupported options parameter 00001000
FIFA 14 - Du v1.4.2 2024-06-11 ReadFromHardware: Invalid address 00000020 near PC 0880c75c LR 08a222c4
PES Ultimate Patch 2021 v1.4.2 2024-05-28 ReadFromHardware: Invalid address 00000325 near PC 08c1e104 LR 092216c8
PES Ultimate Patch 2021 v1.4.2 2024-05-28 MIPSCompileOp: Invalid instruction 7ba92107
PES Ultimate Patch 2021 v1.4.2 2024-05-28 MIPSCompileOp: Invalid instruction 7f74f93a
PES Ultimate Patch 2021 v1.4.2 2024-05-28 Jump to invalid address: 0cc9fb64 PC 08c1e110 LR 092216c8
変態王子と笑わない猫。 v1.4.2 2024-05-25 Unknown GetPointer 00000000 PC 088a0bbc LR 088a0bc4
eFootball PC - V. v1.4.2 2024-05-18 Unknown GE command : 29857294
eFootball PES By HAROUN TECH v1.4.2 2024-05-12 No DL ID available to enqueue
eFootball PES 2021 By GABRIEL v1.4.2 2024-06-02 Unknown GetPointer 00000000 PC 0881c2c8 LR 0881c2d0
eFootball Play-C v1.4.2 2024-04-15 sceKernelCreateThread(name=AdhocThread): unsupported options parameter 00001000
eFootball 2024 Beta By Tutoriales Bendezu v1.4.2 2024-04-11 ReadFromHardware: Invalid address 28061e8f near PC 0884b288 LR 0884b4ec
eFootball 2024 Beta By Tutoriales Bendezu v1.4.2 2024-04-10 ReadFromHardware: Invalid address 13d4ea00 near PC 0884b288 LR 0884b4ec
eFootball 2024 Beta By Tutoriales Bendezu v1.4.2 2024-04-10 ReadFromHardware: Invalid address 13d4c600 near PC 0884b288 LR 0884b4ec
Dragon Ball Z: Tenkaichi Tag Team v1.4.2 2024-04-20 ReadFromHardware: Invalid address 00000180 near PC 0880dad0 LR 08f1a460
SBK®09 Superbike World Championship v1.4.2 2024-03-25 sceKernelRegisterSubIntrHandler(30, 0, 08a22378, 096739b0): duplicate handler
SBK®09 Superbike World Championship v1.4.2 2024-03-24 sceKernelRegisterSubIntrHandler(30, 0, 08a22378, 096ef420): duplicate handler
SBK®09 Superbike World Championship v1.4.2 2024-03-24 sceKernelRegisterSubIntrHandler(30, 0, 08a22378, 096d0470): duplicate handler
eFootball PC - V. v1.9.4 2024-07-26 avcodec_decode_audio4: Error decoding audio -1094995529 / bebbb1b7
Tomb Raider: Legend™ v1.4.2 2024-03-01 sceDmacMemcpy(dest=041a1400, src=095c6de0, size=5120): overlapping read
Tomb Raider: Legend™ v1.4.2 2024-03-01 sceDmacMemcpy(dest=041af400, src=095b69b0, size=9216): overlapping read
Tomb Raider: Legend™ v1.4.2 2024-03-01 sceDmacMemcpy(dest=041c7800, src=095c96f0, size=5120): overlapping read
Tomb Raider: Legend™ v1.4.2 2024-03-01 sceDmacMemcpy(dest=041a1400, src=093e9720, size=5120): overlapping read
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 FBO created from existing depthbuffer as color, 00088000/00110000 and 00000000/00088000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 FBO created from existing depthbuffer as color, 00088000/00110000 and 00044000/00088000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Unimplemented HLE function sceUtilitySetSystemParamInt
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 sceKernelCreateThread(name=AdhocThread): unsupported options parameter 00001000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 scePowerSetBusClockFrequency(111)
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceNetAdhocctl_Library with version 0102, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceAudiocodec_Driver with version 0101, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceMpegbase_Driver with version 0102, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceNet_Library with version 0101, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceNetAdhoc_Library with version 0102, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceSAScore with version 0101, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceVideocodec_Driver with version 0101, devkit 00000000
Colin McRae Rally 2005 Plus v1.4.2 2024-03-15 Loading module sceMpeg_library with version 0102, devkit 00000000
eFootball Chelito 19 v1.4.2 2024-02-17 ReadFromHardware: Invalid address 1397dd18 near PC 08849a4c LR 08849a58
Dragon Ball Z: Forever Tenkaichi Tag Team v1.4.2 2024-07-25 Unsupported RGB mask: r=ef g=ff b=ff
eFootball Chelito 19 v1.4.2 2024-02-04 sceDmacMemcpy(dest=040cc000, src=0948f230, size=557056): overlapping read
eFootball Chelito 19 v1.4.2 2024-02-22 ReadFromHardware: Invalid address 1397d998 near PC 08849a4c LR 08849a58
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 005f0000: pc = 005e0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 005e0000: pc = 005d0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00540000: pc = 00530000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 005a0000: pc = 00590000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00500000: pc = 004f0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 004b0000: pc = 004a0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00480000: pc = 00470000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 003e0000: pc = 003d0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00490000: pc = 00480000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 000e0000: pc = 000d0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00300000: pc = 002f0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 002d0000: pc = 002c0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 001c0000: pc = 001b0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00320000: pc = 00310000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 002a0000: pc = 00290000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00270000: pc = 00260000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00340000: pc = 00330000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00220000: pc = 00210000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 001a0000: pc = 00190000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 001b0000: pc = 001a0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 000d0000: pc = 000c0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00060000: pc = 00050000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00160000: pc = 00150000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00070000: pc = 00060000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00150000: pc = 00140000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00360000: pc = 00350000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 002f0000: pc = 002e0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00310000: pc = 00300000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 001d0000: pc = 001c0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 002e0000: pc = 002d0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 003b0000: pc = 003a0000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00380000: pc = 00370000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00330000: pc = 00320000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00190000: pc = 00180000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 00170000: pc = 00160000
Grand Theft Auto: Vice City Stories v1.4.2 2024-01-06 Trying to write block exit to illegal destination 000a0000: pc = 00090000
RATATOUILLE v1.4.2 2024-01-02 Wrong magic number 00005040
RATATOUILLE v1.4.2 2024-01-02 Wrong magic number 00000000
God of War®: Ghost of Sparta v1.4.2 2024-01-09 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 r7p0-00rel0 [Revision 96995]. / code: #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 vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; 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; 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); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; toLight = u_lightpos0; mediump float dot0 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * dot0; dot0 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot0 > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(dot0, u_matspecular.a) ); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; mediump float dot1 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * dot1; dot1 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot1 > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(dot1, u_matspecular.a) ); lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; mediump float dot2 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * dot2; dot2 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot2 > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(dot2, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); 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; }
God of War®: Ghost of Sparta v1.4.2 2024-01-09 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 r7p0-00rel0 [Revision 96995]. / code: #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 vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; 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; 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); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; toLight = u_lightpos0; mediump float dot0 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * dot0; dot0 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot0 > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(dot0, u_matspecular.a) ); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; mediump float dot1 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * dot1; dot1 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot1 > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(dot1, u_matspecular.a) ); lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; mediump float dot2 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * dot2; dot2 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot2 > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(dot2, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); 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; }
Geometry Dash v1.4.2 2023-12-24 FBO reusing depthbuffer, 00198000/00110000 and 00000000/00110000
Geometry Dash v1.4.2 2023-12-24 FBO reusing depthbuffer, 00088000/00110000 and 00000000/00110000
NARUTO SHIPPUDEN: Ultimate Ninja Impact v1.4.2 2023-12-23 Wrong magic number b81002a6
eFootball Chelito 19 v1.4.2 2023-12-22 sceDmacMemcpy(dest=08701400, src=040cc000, size=1043456): overlapping read
NARUTO SHIPPUDEN: Ultimate Ninja Impact v1.4.2 2023-12-20 Wrong magic number a3a50000
NARUTO SHIPPUDEN: Ultimate Ninja Impact v1.4.2 2023-12-20 Wrong magic number 534e01cf
NARUTO SHIPPUDEN: Ultimate Ninja Impact v1.4.2 2023-12-20 Wrong magic number 34044010
NARUTO SHIPPUDEN: Ultimate Ninja Impact v1.4.2 2023-12-20 Wrong magic number 34a50001
FIFA 22 By Tutoriales Bendezu v1.4.2 2023-12-18 sceDmacMemcpy(dest=040cc000, src=08701400, size=1043456): overlapping read
MONSTER HUNTER FREEDOM UNITE™ v1.4.2 2023-12-07 sceDmacMemcpy(dest=0414e000, src=093fa170, size=198032): overlapping read
eFootball Chelito 19 v1.9.3 2024-07-09 Unknown GetPointer 00000000 PC 088287f8 LR 08828800
Grand Theft Auto: Chinatown Wars v1.4.2 2023-12-03 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 r2p1_05rel0 [Revision 96995]. / code: #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 vec3 u_lightspecular0; 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 vec3 u_lightpos2; uniform mediump vec3 u_lightatt2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; uniform lowp vec3 u_lightspecular3; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; varying lowp vec4 v_color0; varying lowp vec3 v_color1; 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); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; toLight = u_lightpos0; mediump float dot0 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * dot0; dot0 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot0 > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(dot0, u_matspecular.a) ); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; mediump float dot1 = 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 * color0.rgb) * dot1; dot1 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot1 > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(dot1, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; mediump float dot2 = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * color0.rgb) * dot2; dot2 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot2 > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(dot2, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos3; mediump float dot3 = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse3 * color0.rgb) * dot3; dot3 = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (dot3 > 0.0) lightSum1 += u_lightspecular3 * u_matspecular.rgb * (pow(dot3, u_matspecular.a) ); lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse); 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); }