Recent logs - God of War®: Ghost of Sparta

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
God of War®: Ghost of Sparta v1.17.3 2024-07-26 WriteToHardware: Invalid address 00000029 near PC 08ae952c LR 08ae9430
God of War®: Ghost of Sparta v1.17.1 2024-07-24 ReadFromHardware: Invalid address 000000a0 near PC 08a63098 LR 08a63750
God of War®: Ghost of Sparta v1.17.1 2024-07-24 ReadFromHardware: Invalid address 000000a2 near PC 08a63098 LR 08a63750
God of War®: Ghost of Sparta v1.17.1 2024-07-24 Unexpected mpeg first timestamp: 2de0aaf2805 / 3152685246469
God of War®: Ghost of Sparta v1.13.2 2024-07-23 Error in shader program link: info: Link failed because of missing fragment shader. fs: thin3d vs: thin3d #version 320 es #if __VERSION__ >= 130 #define attribute in #define varying out #endif attribute vec3 Position; attribute vec4 Color0; attribute vec2 TexCoord0; varying vec4 oColor0; varying vec2 oTexCoord0; uniform mat4 WorldViewProj; uniform vec2 TintSaturation; vec3 rgb2hsv(vec3 c) { vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); float d = q.x - min(q.w, q.y); float e = 1.0e-10; return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); } vec3 hsv2rgb(vec3 c) { vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); } void main() { gl_Position = WorldViewProj * vec4(Position, 1.0); vec3 hsv = rgb2hsv(Color0.xyz); hsv.x += TintSaturation.x; hsv.y *= TintSaturation.y; oColor0 = vec4(hsv2rgb(hsv), Color0.w); oTexCoord0 = TexCoord0; }
God of War®: Ghost of Sparta v1.17.1 2024-07-21 ReadFromHardware: Invalid address 3f7bcfc4 near PC 3f7bcfc4 LR 08adb9a0
God of War®: Ghost of Sparta v1.17.1 2024-07-19 UNIMPL sceKernelStopUnloadSelfModuleWithStatus(00000001, 00000000, 00000000, 00000000, 00000000): game may have crashed
God of War®: Ghost of Sparta v1.17.1 2024-07-15 Jump to invalid address: 07a27280
God of War®: Ghost of Sparta v1.17.1 2024-07-13 WriteToHardware: Invalid address 00000029 near PC 0882d5dc LR 0882d5b8
God of War®: Ghost of Sparta v1.17.1 2024-07-11 WriteToHardware: Invalid address 00000029 near PC 08811fdc LR 08ad0854
God of War®: Ghost of Sparta v1.17.1 2024-07-08 WriteToHardware: Invalid address 00000029 near PC 08806898 LR 08ab6e48
God of War®: Ghost of Sparta v1.16.6 2024-07-07 Unexpected mpeg first timestamp: 9f95b286920 / 10966580881696
God of War®: Ghost of Sparta v1.11.3 2024-07-06 MIPSCompileOp: Invalid instruction 42bef266
God of War®: Ghost of Sparta v1.11.3 2024-07-06 MIPSCompileOp: Invalid instruction 4249a84b
God of War®: Ghost of Sparta v1.11.3 2024-07-06 Jump to invalid address: 017e8cc0
God of War®: Ghost of Sparta v1.11.3 2024-07-06 Jump to invalid address: 07917c80
God of War®: Ghost of Sparta v1.11.3 2024-07-06 Jump to invalid address: 06843fc0
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01f34055:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34055:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight);
God of War®: Ghost of Sparta v1.17.1 2024-07-03 ReadFromHardware: Invalid address 00000000 near PC 08ae075c LR 08ae0568
God of War®: Ghost of Sparta v1.17.1 2024-07-03 WriteToHardware: Invalid address 00000000 near PC 08ae0434 LR 08ae0434
God of War®: Ghost of Sparta v1.17.3 2024-07-02 WriteToHardware: Invalid address 00000029 near PC 08813d30 LR 08832b14
God of War®: Ghost of Sparta v1.17.1 2024-07-02 WriteToHardware: Invalid address 00000029 near PC 08b8473c LR 08a98748
God of War®: Ghost of Sparta v1.17.1 2024-07-02 80630007=sceAtracSetData(2, 08d4b180, 00005a10): atracID uses different codec type than data
God of War®: Ghost of Sparta v1.17.1 2024-07-01 WriteToHardware: Invalid address 00000029 near PC 08812878 LR 08ab6c3c
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 0795c100
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 0783ad40
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 078f20c0
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 07825080
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 07782400
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 0795a800
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 0777f000
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 07912940
God of War®: Ghost of Sparta v1.17.1 2024-06-30 Jump to invalid address: 07897d40
God of War®: Ghost of Sparta v1.17.1 2024-06-30 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 r5p0-01rel0 [Revision 96995]. 01f34515:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34515:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 mediump vec3 u_lightatt2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnorma
God of War®: Ghost of Sparta v1.17.1 2024-06-30 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 r5p0-01rel0 [Revision 96995]. 01f34515:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34515:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 mediump vec3 u_lightatt2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); l
God of War®: Ghost of Sparta v1.17.3 2024-06-28 Unknown GE command : 39e76b4d
God of War®: Ghost of Sparta v1.17.1 2024-06-27 ReadFromHardware: Invalid address 11ac8800 near PC 08a63734 LR 08a640d8
God of War®: Ghost of Sparta v1.17.1 2024-06-27 ReadFromHardware: Invalid address 11ac8836 near PC 08a63710 LR 08a640d8
God of War®: Ghost of Sparta v1.16.3 2024-06-27 ReadFromHardware: Invalid address 3e000000 near PC 3e000000 LR 3e000000
God of War®: Ghost of Sparta v1.17.1 2024-06-27 ReadFromHardware: Invalid address 00007620 near PC 08ae078c LR 08ae0568
God of War®: Ghost of Sparta v1.17.1 2024-06-27 WriteToHardware: Invalid address 00007620 near PC 08ae0434 LR 08ae0434
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 01f34155:00000f29 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34155:00000f29 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 Cull 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 mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLi
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 07f34155:40c00b29 HWX C T N LM Bones:4 Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 07f34155:40c00b29 HWX C T N LM Bones:4 Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3 Cull attribute mediump vec4 w1; 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 mat4 u_bone0; uniform mat4 u_bone1; uniform mat4 u_bone2; uniform mat4 u_bone3; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3); vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz; vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz; mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; }
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 07f34501:41400b29 HWX C T N LM Bones:6 Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 07f34501:41400b29 HWX C T N LM Bones:6 Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull attribute mediump vec4 w1; attribute mediump vec2 w2; 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 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 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 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 mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2.x, u_bone4) + mul(w2.y, u_bone5); vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz; vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz; mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); 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_matspecul
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 07f34551:41400b29 HWX C T N LM Bones:6 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 07f34551:41400b29 HWX C T N LM Bones:6 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull attribute mediump vec4 w1; attribute mediump vec2 w2; 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 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 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 mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2.x, u_bone4) + mul(w2.y, u_bone5); vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz; vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz; mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldo
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 07f34551:41000b29 HWX C T N LM Bones:5 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 07f34551:41000b29 HWX C T N LM Bones:5 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull attribute mediump vec4 w1; attribute mediump float w2; 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 mat4 u_bone0; uniform mat4 u_bone1; uniform mat4 u_bone2; uniform mat4 u_bone3; uniform mat4 u_bone4; 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 mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2, u_bone4); vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz; vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz; mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_l
God of War®: Ghost of Sparta v1.17.1 2024-07-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 r7p0-00rel0 [Revision 96995]. 07730011:40c00b29 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:0 2: c:0 t:0 MatUp:3 WScale 3 Cull #version 100 // Driver: Mali-450 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 07730011:40c00b29 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:0 2: c:0 t:0 MatUp:3 WScale 3 Cull attribute mediump vec4 w1; 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 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 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 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_depthRange; 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; vec3 normalizeOr001(vec3 v) { return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v); } void main() { mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3); vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz; vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz; mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz; mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 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 = color0; vec3 diffuseColor = color0.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; mediump float ldot; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.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; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if
God of War®: Ghost of Sparta v1.10.3 2024-06-24 sceKernelLoadModule: unsupported options size=00000014, flags=089d33b8, pos=0, access=1, data=2, text=2
God of War®: Ghost of Sparta v1.10.3 2024-06-24 sceKernelLoadModule: unsupported options size=00000014, flags=088eb174, pos=0, access=1, data=1, text=1
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-24 sceKernelLoadModule: unsupported options size=00000014, flags=08a69450, pos=0, access=1, data=2, text=2
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-24 sceKernelLoadModule: unsupported options size=00000014, flags=08a69450, pos=0, access=1, data=1, text=1
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01f34055:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34055:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /
God of War®: Ghost of Sparta v1.17.1 2024-06-28 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 r5p0-01rel0 [Revision 96995]. 01f34055:00010b09 HWX C T N LM TexProjPos UVMtx Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34055:00010b09 HWX C T N LM TexProjPos UVMtx Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 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 mediump mat4 u_texmtx; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform mediump vec3 u_lightatt0; 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 lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight =
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01b34051:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01b34051:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3 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_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientColor.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; gl_Position = outPos; }
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 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 mediump vec3 u_lightatt0; 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 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; uniform highp vec4 u_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01730155:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01730155:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 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 mediump vec3 u_lightatt0; 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 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; uniform highp vec4 u_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_ligh
God of War®: Ghost of Sparta v1.17.1 2024-07-04 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 r5p0-01rel0 [Revision 96995]. 01f34551:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34551:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnorma
God of War®: Ghost of Sparta v1.17.1 2024-07-04 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 r5p0-01rel0 [Revision 96995]. 01f34551:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34551:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); if (ldot >= 0.0) { if (u_matspecular.a > 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); l
God of War®: Ghost of Sparta v1.17.1 2024-06-30 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 r5p0-01rel0 [Revision 96995]. 01f34105:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34105:00000b09 HWX C T N LM Light: 0: c:1 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.r
God of War®: Ghost of Sparta v1.17.1 2024-06-30 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 r5p0-01rel0 [Revision 96995]. 01f34105:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01f34105:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 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 mediump vec3 u_lightatt0; 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 vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular2 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
God of War®: Ghost of Sparta v1.17.1 2024-07-05 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 r5p0-01rel0 [Revision 96995]. 01b34051:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 // Driver: Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) // 01b34051:00000b09 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3 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_lightpos3; uniform mediump vec3 u_lightatt3; uniform lowp vec3 u_lightambient3; uniform lowp vec3 u_lightdiffuse3; 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_depthRange; 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; 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 = color0; vec3 diffuseColor = color0.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; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular0 * specularColor * ldot ; } lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0); 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; } if (ldot > 0.0) lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale; toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * ambientColor.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; gl_Position = outPos; }
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-21 Unknown GE command : b6cb4844
God of War®: Ghost of Sparta v1.17.1 2024-06-20 ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 08a65950
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Branch in Jump delay slot at 08ce0d10 in block starting at 08cd1b10
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Branch in JumpReg delay slot at 08ce0d0c in block starting at 08cd1b10
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 03383600
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Branch in Jump delay slot at 08ce0d08 in block starting at 08cd1b10
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 0305f660
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 03382f30
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 03080160
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 03383640
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 02be1f00
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Branch in Jump delay slot at 08cdf574 in block starting at 08cd1b10
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 033b7200
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Jump to invalid address: 02ada430
God of War®: Ghost of Sparta v1.17.1 2024-06-19 Branch in Jump delay slot at 08cdf560 in block starting at 08cd1b10
God of War®: Ghost of Sparta v1.17.1 2024-06-19 MIPSCompileOp: Invalid instruction ee108f47
God of War®: Ghost of Sparta v1.17.1 2024-06-19 MIPSCompileOp: Invalid instruction 000000e9
God of War®: Ghost of Sparta v1.17.1 2024-06-19 MIPSCompileOp: Invalid instruction 000001ff
God of War®: Ghost of Sparta v1.17.1 2024-06-19 MIPSCompileOp: Invalid instruction 000f423f
God of War®: Ghost of Sparta v1.17.1 2024-06-18 __KernelStopThread: thread 302 does not exist (ApctlThread deleted)
God of War®: Ghost of Sparta v1.17.1 2024-06-14 Jump to invalid address: 031603d0
God of War®: Ghost of Sparta v1.17.3 2024-07-10 Unknown GE command : 299ad8aa
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (07df0026) P: ? N: s8 C: ? T: u16 Morph: 8 (through) (48b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (12000005) P: ? C: ? T: u8 (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Block transfer invalid: fe6d0040/0 -> fe19fcd0/0, 783x964x4 (0,0)->(991,279)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (04000005) P: ? C: ? T: u8 (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06000005) P: ? C: ? T: u8 (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06240009) P: ? C: ? T: u8 Morph: 2 (6b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06400012) P: ? C: 565 T: u16 (10b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06000010) P: ? C: 565 (6b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06240005) P: ? C: ? T: u8 Morph: 2 (6b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06000031) P: ? N: s8 C: 565 T: u8 (10b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (0635003a) P: ? N: s8 C: 4444 T: u16 Morph: 6 (72b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06a00004) P: ? C: ? (through) (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06000037) P: ? N: s8 C: 5551 T: f (16b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (12400017) P: ? C: 5551 T: f (16b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (12200009) P: ? C: ? T: u8 (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (06200009) P: ? C: ? T: u8 (3b)
God of War®: Ghost of Sparta v1.17.1-669-gd298c6f6f5 2024-06-14 Vertices without position found: (12600014) P: ? C: 5551 (6b)