Recent logs - Pro Evolution Soccer 2013

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
Pro Evolution Soccer 2013 v1.9.4 2024-07-26 ReadFromHardware: Invalid address 79f7a8a0 near PC 79f7a8a0 LR 08000018
Pro Evolution Soccer 2013 v1.17.1 2024-07-17 Rendering to framebuffer offset at 04162000 +256x0 (stride 512)
Pro Evolution Soccer 2013 v1.11.3 2024-07-17 sceDmacMemcpy(dest=040cc000, src=09514140, size=557056): overlapping read
Pro Evolution Soccer 2013 v1.17.1-334-g1786a4ddb 2024-07-13 Unknown GetPointer 00181c02 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1-334-g1786a4ddb 2024-07-13 Unknown GetPointer 000f0a00 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.12.2 2024-07-12 Jump to invalid address: 07289000
Pro Evolution Soccer 2013 v1.11.3 2024-07-12 Unimplemented HLE function sceNetInetSelect
Pro Evolution Soccer 2013 v1.11.3 2024-07-12 Unimplemented HLE function sceNetInetInetAddr
Pro Evolution Soccer 2013 v1.17.1 2024-07-11 MIPSCompileOp: Invalid instruction 00100005
Pro Evolution Soccer 2013 v1.17.1 2024-07-11 Branch in JumpReg delay slot at 08f6c08c in block starting at 08f6c044
Pro Evolution Soccer 2013 v1.17.1 2024-07-11 MIPSCompileOp: Invalid instruction 01069701
Pro Evolution Soccer 2013 v1.17.1 2024-07-02 Unknown GetPointer 00281923 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.11.3-2115-g88ebe93b1 2024-07-02 Unknown GetPointer 11d27780 PC 0884c208 LR 08820e70
Pro Evolution Soccer 2013 v1.17.1 2024-06-29 80420014=__sceSasCore(08bb3c40, 74e5ab00): invalid address
Pro Evolution Soccer 2013 v1.14.4 2024-06-23 Unknown GetPointer 00523e28 PC 0884a918 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-06-23 ReadFromHardware: Invalid address 75e9996f near PC 75e9996f LR 75e9996f
Pro Evolution Soccer 2013 v1.17.1 2024-06-19 Unknown GetPointer 001b0f0b PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.10.3 2024-06-15 Ignoring possible render to texture at 04173200 +0x184 / 64x272
Pro Evolution Soccer 2013 v1.14.4 2024-06-14 Unknown GetPointer 002c2028 PC 0884a918 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-06-11 00000400=sceGeEdramSetAddrTranslation(00000800)
Pro Evolution Soccer 2013 v1.17.1 2024-06-10 Unknown GetPointer 00180000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.16.6 2024-06-09 80000107=sceDisplaySetFrameBuf(04044000, 512, 0, 0): must change latched framebuf first
Pro Evolution Soccer 2013 v1.17.1 2024-07-12 807f00fd=sceMp3Init(00000000): invalid bitrate v1 l1 rate 000b
Pro Evolution Soccer 2013 v1.14.1 2024-06-05 Unknown GetPointer 9c64da6c PC 0884d598 LR 0884d7bc
Pro Evolution Soccer 2013 v1.17.1 2024-06-01 Unknown GetPointer 00090000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-05-30 Unknown GetPointer 000a0000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 Unknown GetPointerWrite 00000009 PC 08872d28 LR 08872d90
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 80420014=__sceSasCore(08bb3c40, 71ebab00): invalid address
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction ef0c0000
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction eec42862
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction ee703053
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 Jump to invalid address: 05b1a0b8
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction d1c80000
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction d1802862
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction d12c3053
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 Jump to invalid address: 03100000
Pro Evolution Soccer 2013 v1.17.1 2024-05-19 MIPSCompileOp: Invalid instruction efdc3053
Pro Evolution Soccer 2013 v1.17.1 2024-05-10 Unknown GetPointer 003a0000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-05-08 Unknown GetPointer 00282c2d PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-05-05 Unknown GetPointer 00949fb0 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-05-05 Branch in Jump delay slot at 092e9800 in block starting at 092e1170
Pro Evolution Soccer 2013 v1.17.1 2024-05-05 MIPSCompileOp: Invalid instruction 4e20551e
Pro Evolution Soccer 2013 v1.13.1 2024-04-29 ReadFromHardware: Invalid address 00000008 near PC 0886a864 LR 0886a820
Pro Evolution Soccer 2013 v1.17-121-ga99a9ee70 2024-04-28 807f00fd=sceMp3Init(00000000): invalid bitrate v3 l0 rate 000b
Pro Evolution Soccer 2013 v1.17-121-ga99a9ee70 2024-04-28 807f00fd=sceMp3Init(00000000): invalid bitrate v1 l2 rate 000f
Pro Evolution Soccer 2013 v1.17.1 2024-04-27 Unknown GetPointer 00310502 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-04-26 Unknown GetPointer 00140606 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-04-26 Unknown GetPointer 003a3530 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-04-23 Unknown GetPointer 001a0f10 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-04-09 Unknown GetPointer 0053483f PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.14.4 2024-04-05 Unknown GetPointer aa3a0fa8 PC 08849a40 LR 0884a920
Pro Evolution Soccer 2013 v1.16.6 2024-04-01 Unknown GetPointer 004c3c43 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-03-31 Bad SAS Mix output address: 08b26f00, grain=164325136
Pro Evolution Soccer 2013 v1.17.1 2024-03-31 Unknown GetPointer 00263627 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.17.1 2024-03-29 ReadFromHardware: Invalid address 00000024 near PC 00000024 LR 00000024
Pro Evolution Soccer 2013 v1.17 2024-03-25 80420014=__sceSasCore(08bb3c40, f2b4ef00): invalid address
Pro Evolution Soccer 2013 v1.17 2024-03-25 80420014=__sceSasCore(08bb3c40, f2b4eb00): invalid address
Pro Evolution Soccer 2013 v1.17 2024-03-25 Unknown GetPointer 68098d96 PC 08816078 LR 08816080
Pro Evolution Soccer 2013 v1.17.1 2024-03-18 Unknown GetPointer 000046b0 PC 0881c410 LR 0881c420
Pro Evolution Soccer 2013 v1.17.1 2024-07-16 UNIMPL sceIoChstat(ms0:/PSP/SAVEDATA/ULUS10518DATA/DATA.DNS, 09f919b0, 00000002)
Pro Evolution Soccer 2013 v1.17.1 2024-07-16 sceIoChstat: change attr to 0000 requested
Pro Evolution Soccer 2013 v1.17.1 2024-03-08 Unknown GetPointerWrite 11d27780 PC 0884c208 LR 08820e70
Pro Evolution Soccer 2013 v1.17.1 2024-02-29 Jump to invalid address: 0ec00020
Pro Evolution Soccer 2013 v1.17.1 2024-02-28 MIPSCompileOp: Invalid instruction 4c24fce6
Pro Evolution Soccer 2013 v1.17.1 2024-02-28 Branch in Jump delay slot at 098b9800 in block starting at 098b1000
Pro Evolution Soccer 2013 v1.17.1 2024-02-27 Waiting thread for 12 that was already waiting for 12
Pro Evolution Soccer 2013 v1.14.2 2024-02-24 UI scissor out of bounds in GameSettingsScreen: 274,0-1316,721 / 1600,720
Pro Evolution Soccer 2013 v1.17.1 2024-02-20 Unknown GetPointer 345ed580 PC 0884d79c LR 0884d7bc
Pro Evolution Soccer 2013 v1.17.1 2024-06-02 Unknown GetPointerWrite 00000000 PC 08824a4c LR 088113c4
Pro Evolution Soccer 2013 v1.14.1 2024-02-19 UI scissor out of bounds in GamePauseScreen: 0,12-1023,333 / 960,576
Pro Evolution Soccer 2013 v1.17.1 2024-02-18 ReadFromHardware: Invalid address 73002500 near PC 73002500 LR 0888d4a4
Pro Evolution Soccer 2013 v1.17.1 2024-02-18 Unknown GetPointerWrite 4f9486ee PC 0888d570 LR 0888d580
Pro Evolution Soccer 2013 v1.17.1 2024-02-18 Unknown GetPointerWrite 023729ec PC 0888d570 LR 0888d580
Pro Evolution Soccer 2013 v1.17.1 2024-02-18 Unknown GetPointer 00000000 PC 08871514 LR 08871558
Pro Evolution Soccer 2013 v1.17.1 2024-02-15 Unknown GetPointer 007a4838 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.14.1 2024-02-14 Unknown GetPointer 00220000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.14.1 2024-02-14 Unknown GetPointer 00260000 PC 0884a900 LR 0884a920
Pro Evolution Soccer 2013 v1.15.3 2024-02-06 ReadFromHardware: Invalid address 127cd628 near PC 127cd628 LR 127cd628
Pro Evolution Soccer 2013 v1.12.3 2024-01-22 Utility access thread still running, state: shutting down, dialog=1/1
Pro Evolution Soccer 2013 v1.12.3 2024-01-22 FBO created from existing depthbuffer as color, 04198000/00000000 and 04088000/04198000
Pro Evolution Soccer 2013 v1.12.3 2024-01-22 FBO created from existing depthbuffer as color, 04198000/00000000 and 04000000/04198000
Pro Evolution Soccer 2013 v1.12.3 2024-01-22 FBO created from existing depthbuffer as color, 04198000/00000000 and 04110000/04198000
Pro Evolution Soccer 2013 v1.16.6 2024-01-09 Unknown GetPointer 0e29abda PC 08efa0c0 LR 08efa0d0
Pro Evolution Soccer 2013 v1.17.1 2024-07-07 sceNetAdhocMatchingInit(32768) at 08a719b8
Pro Evolution Soccer 2013 v1.13.2 2023-12-30 ReadFromHardware: Invalid address 1396eb9c near PC 0884a898 LR 08849a4c
Pro Evolution Soccer 2013 v1.16.6 2023-12-27 Rendering to framebuffer offset at 04161800 +64x0 (stride 1024)
Pro Evolution Soccer 2013 v1.14.1 2023-12-24 UI scissor out of bounds in GamePauseScreen: 163,10-101,595 / 604,272
Pro Evolution Soccer 2013 v1.14.1 2023-12-24 UI scissor out of bounds in GamePauseScreen: 22,10-136,595 / 604,272
Pro Evolution Soccer 2013 v1.14.1 2023-12-24 UI scissor out of bounds in GamePauseScreen: 989,4-336,118 / 604,272
Pro Evolution Soccer 2013 v1.14.1 2023-12-24 UI scissor out of bounds in GamePauseScreen: 50,4-929,118 / 604,272
Pro Evolution Soccer 2013 v1.11.2 2023-12-22 Unknown GetPointer 00000000 PC 08849a34 LR 08849a40
Pro Evolution Soccer 2013 v1.14.4 2023-12-20 80630006=sceAtracSetDataAndGetID(095c8ac0, 000f9e94): invalid RIFF header
Pro Evolution Soccer 2013 v1.16.6 2023-12-17 ReadFromHardware: Invalid address 94270564 near PC 94270564 LR 0887adbc
Pro Evolution Soccer 2013 v1.16.6 2023-12-17 Unknown GetPointer 1390956e PC 0884d79c LR 0884d7bc
Pro Evolution Soccer 2013 v1.15.3 2023-12-13 ReadFromHardware: Invalid address 12684090 near PC 12684090 LR 12684090
Pro Evolution Soccer 2013 v1.16.6 2023-12-13 Unknown GetPointer cc3421a6 PC 0881606c LR 08816080
Pro Evolution Soccer 2013 v1.16.6 2023-12-13 Vulkan error in shader compilation: info: WARNING: 0:4: '#extension' : extension not supported: GL_ARB_conservative_depth ERROR: 0:45: 'clamp' : no matching overloaded function found ERROR: 0:45: 'assign' : cannot convert from ' const float' to ' temp lowp 3-component vector of float' ERROR: 0:45: '' : compilation terminated ERROR: 3 compilation errors. No code generated. / code: #version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_420pack : enable #extension GL_ARB_conservative_depth : enable #extension GL_ARB_shader_image_load_store : enable #define splat3(x) vec3(x) #define DISCARD discard precision lowp float; precision highp int; // 10184000:00200002 Tex Fog Flat FragUber TFuncMod layout (std140, set = 0, binding = 3) uniform baseUBO { mat4 u_proj; mat4 u_proj_through; mat3x4 u_view; mat3x4 u_world; mat3x4 u_texmtx; vec4 u_uvscaleoffset; vec4 u_depthRange; vec4 u_matambientalpha; vec4 u_cullRangeMin; vec4 u_cullRangeMax; uint u_spline_counts; uint u_depal_mask_shift_off_fmt; uint u_colorWriteMask; float u_mipBias; vec2 u_texNoAlphaMul; float pad1; float pad2; vec3 u_fogcolor; uint u_alphacolorref; vec3 u_texenv; uint u_alphacolormask; vec4 u_texclamp; vec2 u_texclampoff; vec2 u_fogcoef; vec3 u_blendFixA; float u_stencilReplaceValue; vec3 u_blendFixB; float u_rotation; }; layout (set = 0, binding = 0) uniform sampler2D tex; layout (location = 1) flat in lowp vec4 v_color0; layout (location = 3) in highp float v_fogdepth; layout (location = 0) in highp vec3 v_texcoord; layout (location = 0, index = 0) out vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = v; }
Pro Evolution Soccer 2013 v1.16.6 2023-12-13 Vulkan error in shader compilation: info: WARNING: 0:4: '#extension' : extension not supported: GL_ARB_conservative_depth ERROR: 0:40: 'clamp' : no matching overloaded function found ERROR: 0:40: '' : compilation terminated ERROR: 2 compilation errors. No code generated. / code: #version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_420pack : enable #extension GL_ARB_conservative_depth : enable #extension GL_ARB_shader_image_load_store : enable #define splat3(x) vec3(x) #define DISCARD discard precision lowp float; precision highp int; // 10184000:00200000 Fog Flat FragUber layout (std140, set = 0, binding = 3) uniform baseUBO { mat4 u_proj; mat4 u_proj_through; mat3x4 u_view; mat3x4 u_world; mat3x4 u_texmtx; vec4 u_uvscaleoffset; vec4 u_depthRange; vec4 u_matambientalpha; vec4 u_cullRangeMin; vec4 u_cullRangeMax; uint u_spline_counts; uint u_depal_mask_shift_off_fmt; uint u_colorWriteMask; float u_mipBias; vec2 u_texNoAlphaMul; float pad1; float pad2; vec3 u_fogcolor; uint u_alphacolorref; vec3 u_texenv; uint u_alphacolormask; vec4 u_texclamp; vec2 u_texclampoff; vec2 u_fogcoef; vec3 u_blendFixA; float u_stencilReplaceValue; vec3 u_blendFixB; float u_rotation; }; layout (location = 1) flat in lowp vec4 v_color0; layout (location = 3) in highp float v_fogdepth; layout (location = 0, index = 0) out vec4 fragColor0; void main() { vec4 v = v_color0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = v; }
Pro Evolution Soccer 2013 v1.16.6 2023-12-13 Vulkan error in shader compilation: info: WARNING: 0:4: '#extension' : extension not supported: GL_ARB_conservative_depth ERROR: 0:45: 'clamp' : no matching overloaded function found ERROR: 0:45: 'assign' : cannot convert from ' const float' to ' temp lowp 3-component vector of float' ERROR: 0:45: '' : compilation terminated ERROR: 3 compilation errors. No code generated. / code: #version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_420pack : enable #extension GL_ARB_conservative_depth : enable #extension GL_ARB_shader_image_load_store : enable #define splat3(x) vec3(x) #define DISCARD discard precision lowp float; precision highp int; // 10180000:0021d002 Tex Fog FragUber TFuncMod AlphaTest0 > layout (std140, set = 0, binding = 3) uniform baseUBO { mat4 u_proj; mat4 u_proj_through; mat3x4 u_view; mat3x4 u_world; mat3x4 u_texmtx; vec4 u_uvscaleoffset; vec4 u_depthRange; vec4 u_matambientalpha; vec4 u_cullRangeMin; vec4 u_cullRangeMax; uint u_spline_counts; uint u_depal_mask_shift_off_fmt; uint u_colorWriteMask; float u_mipBias; vec2 u_texNoAlphaMul; float pad1; float pad2; vec3 u_fogcolor; uint u_alphacolorref; vec3 u_texenv; uint u_alphacolormask; vec4 u_texclamp; vec2 u_texclampoff; vec2 u_fogcoef; vec3 u_blendFixA; float u_stencilReplaceValue; vec3 u_blendFixB; float u_rotation; }; layout (set = 0, binding = 0) uniform sampler2D tex; layout (location = 1) in lowp vec4 v_color0; layout (location = 3) in highp float v_fogdepth; layout (location = 0) in highp vec3 v_texcoord; layout (location = 0, index = 0) out vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; t.a = max(t.a, u_texNoAlphaMul.x); vec4 v = p * t; v.rgb = clamp(v.rgb * u_texNoAlphaMul.y, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) DISCARD; fragColor0 = v; }
Pro Evolution Soccer 2013 v1.16.6 2023-12-13 Vulkan error in shader compilation: info: ERROR: 0:83: 'dot' : no matching overloaded function found ERROR: 0:83: '' : compilation terminated ERROR: 2 compilation errors. No code generated. / code: #version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_420pack : enable #define mul(x, y) ((x) * (y)) #define splat3(x) vec3(x) precision highp float; // 01000000:80000b20 HWX T N Light: LightUberShader Cull layout (std140, set = 0, binding = 3) uniform baseVars { mat4 u_proj; mat4 u_proj_through; mat3x4 u_view; mat3x4 u_world; mat3x4 u_texmtx; vec4 u_uvscaleoffset; vec4 u_depthRange; vec4 u_matambientalpha; vec4 u_cullRangeMin; vec4 u_cullRangeMax; uint u_spline_counts; uint u_depal_mask_shift_off_fmt; uint u_colorWriteMask; float u_mipBias; vec2 u_texNoAlphaMul; float pad1; float pad2; vec3 u_fogcolor; uint u_alphacolorref; vec3 u_texenv; uint u_alphacolormask; vec4 u_texclamp; vec2 u_texclampoff; vec2 u_fogcoef; vec3 u_blendFixA; float u_stencilReplaceValue; vec3 u_blendFixB; float u_rotation; }; layout (std140, set = 0, binding = 4) uniform lightVars { vec4 u_ambient; vec3 u_matdiffuse; vec4 u_matspecular; vec3 u_matemissive; uint u_lightControl; // light ubershader control bits vec3 u_lightpos[4]; vec3 u_lightdir[4]; vec3 u_lightatt[4]; vec4 u_lightangle_spotCoef[4]; vec3 u_lightambient[4]; vec3 u_lightdiffuse[4]; vec3 u_lightspecular[4]; }; layout (location = 0) in vec3 position; layout (location = 2) in vec3 normal; layout (location = 1) in vec2 texcoord; layout (location = 1) out lowp vec4 v_color0; layout (location = 0) out highp vec3 v_texcoord; layout (location = 3) out highp float v_fogdepth; invariant gl_Position; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); vec4 ambientColor = u_matambientalpha; vec3 diffuseColor = u_matdiffuse.rgb; vec3 specularColor = u_matspecular.rgb; lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; uint comp; uint type; float attenuation; for (uint i = 0; i < 4; i++) { if ((u_lightControl & (0x1u << i)) != 0x0u) { comp = (u_lightControl >> uint(0x4u + 0x4u * i)) & 0x3u; type = (u_lightControl >> uint(0x4u + 0x4u * i + 0x2u)) & 0x3u; toLight = u_lightpos[i]; if (type != 0x0u) { toLight -= worldpos; distance = length(toLight); toLight /= distance; attenuation = clamp(1.0 / dot(u_lightatt[i], vec3(1.0, distance, distance*distance)), 0.0, 1.0); if (type == 0x01u) { lightScale = attenuation; } else { angle = dot(u_lightdir[i], toLight); if (angle >= u_lightangle_spotCoef[i].x) { lightScale = attenuation * (u_lightangle_spotCoef[i].y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef[i].y)); } else { lightScale = 0.0; } } } else { lightScale = 1.0; } ldot = dot(toLight, worldnormal); if (comp == 0x2u) { ldot = u_matspecular.a > 0.0 ? pow(max(ldot, 0.0), u_matspecular.a) : 1.0; } diffuse = (u_lightdiffuse[i] * diffuseColor) * max(ldot, 0.0); if (comp == 0x1u) { if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); ldot = pow(max(ldot, 0.0), u_matspecular.a); } else { ldot = 1.0; } lightSum1 += u_lightspecular[i] * specularColor * ldot * lightScale; } } lightSum0.rgb += (u_lightambient[i] * ambientColor.rgb + diffuse) * lightScale; } } v_color0 = clamp(clamp(lightSum0, 0.0, 1.0) + v