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.13.2 2022-12-05 Jump to invalid address: 07849740
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07960ac0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0786ba40
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 078490c0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 078ef240
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07849dc0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07960f40
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07960780
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0780be00
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0784bc40
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 077e1fc0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a4a980
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a95fc0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a96900
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a4b1c0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0793dc00
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0793cac0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a95a80
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0793e240
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 077e2540
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0793d3c0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a4c180
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a4b840
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 078bbd80
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0784a440
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a2a580
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 079d1840
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07801440
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 079d1d00
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0774b3c0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07806c80
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a0e200
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07a0d780
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0794df00
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07937640
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0794e580
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 079bc980
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 07808240
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0780b3c0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 0774c140
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 077e2ec0
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 077e7680
God of War®: Ghost of Sparta v1.13.2 2022-12-05 Jump to invalid address: 079b4480
God of War®: Ghost of Sparta v1.13.2 2022-12-05 WriteToHardware: Invalid address 42b6956e near PC 08000000 LR 08000000
God of War®: Ghost of Sparta v1.13.2 2022-12-05 WriteToHardware: Invalid address 00000367 near PC 08aea844 LR 08aea844
God of War®: Ghost of Sparta v1.13.2 2022-12-05 WriteToHardware: Invalid address 000002a0 near PC 08aea844 LR 08aea844
God of War®: Ghost of Sparta v1.12.3 2022-12-04 MFIC instruction hit (70020024) at 08832bd0
God of War®: Ghost of Sparta v1.9.4 2022-12-04 WriteToHardware: Invalid address 00000064 near PC 0881274c LR 08ab7a78
God of War®: Ghost of Sparta v1.9.4 2022-12-04 ReadFromHardware: Invalid address 00000068 near PC 0881274c LR 08ab7a78
God of War®: Ghost of Sparta v1.13.2 2022-12-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]. 01f14404:00000b3d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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 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 vec3 u_matdiffuse; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; uniform highp vec4 u_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); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * color0.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 * u_matdiffuse) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.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 * u_matdiffuse) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outPos.xyzw = u_cullRangeMax.wwww; } } if (u_cullRangeMin.w <= 0.0) { if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z)
God of War®: Ghost of Sparta v1.12.3 2022-12-03 WriteToHardware: Invalid address 000002a0 near PC 08a79218 LR 08a79218
God of War®: Ghost of Sparta v1.13.2 2022-12-02 WriteToHardware: Invalid address 00000367 near PC 08abe30c LR 08a813b4
God of War®: Ghost of Sparta v1.13.2 2022-12-01 WriteToHardware: Invalid address 000002a0 near PC 08b455c8 LR 08a5368c
God of War®: Ghost of Sparta v1.13.2 2022-12-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]. 01730444:00010b39 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; 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 vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; 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; 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); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = mul(vec4(position, 1.0), u_texmtx).xyz * vec3(u_uvscaleoffset.xy, 1.0); vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outPos.xyzw = u_cullRangeMax.wwww; } } if (u_cullRangeMin.w <= 0.0) { if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) { outPos.xyzw = u_cullRangeMax.wwww; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.9.3-80-g73bf6098e 2022-11-30 __KernelStopThread: thread 372 does not exist
God of War®: Ghost of Sparta v1.13.2-2141-g183458dd7 2022-11-29 UI scissor out of bounds in SavedataScreen: 1180,56-0,56 / 1088,544
God of War®: Ghost of Sparta v1.13.2-2141-g183458dd7 2022-11-29 UI scissor out of bounds in SavedataScreen: 1163,115-0,56 / 1088,544
God of War®: Ghost of Sparta v1.13.2-2141-g183458dd7 2022-11-29 UI scissor out of bounds in SavedataScreen: 1163,56-0,56 / 1088,544
God of War®: Ghost of Sparta v1.13.2-2141-g183458dd7 2022-11-29 UI scissor out of bounds in SavedataScreen: 1201,115-0,56 / 1088,544
God of War®: Ghost of Sparta v1.13.2-2141-g183458dd7 2022-11-29 UI scissor out of bounds in SavedataScreen: 1201,56-0,56 / 1088,544
God of War®: Ghost of Sparta v1.13.2 2022-11-29 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 r4p0-00rel0 [Revision 96995]. 01f34014:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:1 1: c:1 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
God of War®: Ghost of Sparta v1.13.2 2022-11-29 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 r4p0-00rel0 [Revision 96995]. 01f34014:00000b3d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:1 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) { outP
God of War®: Ghost of Sparta v1.4.1 2022-11-29 ReadFromHardware: Invalid address b5a13dee near PC 08000000 LR 08000000
God of War®: Ghost of Sparta v1.13.1 2022-11-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]. 07f34444:41800b3d HWX C T N LM Fog Tex Bones:7 Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) attribute mediump vec4 w1; attribute mediump vec3 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 mat4 u_bone6; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform mediump vec3 u_lightatt0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform vec3 u_lightpos2; uniform mediump vec3 u_lightatt2; 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() { 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) + mul(w2.z, u_bone6); 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); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb
God of War®: Ghost of Sparta v1.13.1 2022-11-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]. 07f34151:41400b3d HWX C T N LM Fog Tex Bones:6 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLig
God of War®: Ghost of Sparta v1.13.1 2022-11-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]. 07f34151:41000b3d HWX C T N LM Fog Tex Bones:5 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos2; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
God of War®: Ghost of Sparta v1.13.2 2022-12-03 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r5p0-01rel0 [Revision 96995]. 01f34444:00000b3d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; 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 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); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient1 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = splat3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; vec3 projPos = outPos.xyz / outPos.w; float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w; if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullR
God of War®: Ghost of Sparta v1.13.2 2022-11-27 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 r4p0-00rel0 [Revision 96995]. 01f34550:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightS
God of War®: Ghost of Sparta v1.13.2 2022-11-27 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 r4p0-00rel0 [Revision 96995]. 01f34550:00000b3d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull #version 100 // Mali-400 MP - GLSL 100 precision highp float; #define gl_VertexIndex gl_VertexID #define splat3(x) vec3(x) #define mul(x, y) ((x) * (y)) 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 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); lowp vec4 lightSum0 = u_ambient * color0 + 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 * color0.rgb) * max(ldot, 0.0); lightSum0.rgb += (u_lightambient0 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * color0.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 * color0.rgb) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient2 * color0.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 * color0.rgb) * max(ldot, 0.0); lightSum0.rg
God of War®: Ghost of Sparta v1.13.2 2022-11-27 Branch in RSZeroComp delay slot at 080ae364 in block starting at 080ae360
God of War®: Ghost of Sparta v1.13.2 2022-11-27 Branch in RSZeroComp delay slot at 08086724 in block starting at 08086724
God of War®: Ghost of Sparta v1.13.2 2022-11-27 Branch in RSZeroComp delay slot at 0807e344 in block starting at 0807e33c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 Branch in RSZeroComp delay slot at 0806eac4 in block starting at 0806eabc
God of War®: Ghost of Sparta v1.13.2 2022-11-27 Branch in RSZeroComp delay slot at 08077ec4 in block starting at 08077eb8
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045958ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045955ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04594f6c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459506c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045947ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459396c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04593cec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045959ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459636c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459646c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04596bec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04596d6c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04595e6c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04595dec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045962ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04594fec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459416c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459526c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045961ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04596b6c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459756c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045968ec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 0459666c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04595f6c
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 04596aec
God of War®: Ghost of Sparta v1.13.2 2022-11-27 MIPSCompileOp: Invalid instruction 045957ec