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.8.0 2019-05-20 sceKernelCreateSema(RealMutex) unsupported options parameter, size = 167509648
God of War®: Ghost of Sparta v1.8.0 2019-05-20 sceKernelCreateSema(RealMutex) unsupported options parameter, size = 148119992
God of War®: Ghost of Sparta v1.8.0 2019-05-20 sceKernelCreateSema(RealMutex) unsupported options parameter, size = 143639068
God of War®: Ghost of Sparta v1.8.0 2019-05-20 sceKernelCreateSema(RealMutex) unsupported options parameter, size = 143640460
God of War®: Ghost of Sparta v1.8.0 2019-05-20 Unknown GetPointer 00000000 PC 088087d0 LR 088087d0
God of War®: Ghost of Sparta v1.8.0 2019-05-19 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r2p1_05rel0 [Revision 96995]. 01f34155:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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); 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); 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 ; } 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_lig
God of War®: Ghost of Sparta v1.8.0 2019-05-19 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r2p1_05rel0 [Revision 96995]. 01f34155:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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); 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); 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 ; } 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 =
God of War®: Ghost of Sparta v1.8.0 2019-05-18 WriteToHardware: Invalid address 00000029 near PC 08abfb18 LR 08a82be4
God of War®: Ghost of Sparta v1.6.3 2019-05-18 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r4p1-01rel0 [Revision 96995]. 01f34014:00000f1d 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 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * color0.rgb) * ldot; 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; }
God of War®: Ghost of Sparta v1.8.0 2019-05-17 Unknown GetPointer 00000000 PC 08815ef4 LR 08000020
God of War®: Ghost of Sparta v1.8.0 2019-05-17 Unknown GetPointer 00000000 PC 088206bc LR 088206bc
God of War®: Ghost of Sparta v1.6.3 2019-05-18 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r4p1-01rel0 [Revision 96995]. 01730544:00010b59 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:1 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform 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 vec3 u_lightspecular2; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = (u_texmtx * vec4(position.xyz, 1.0)).xyz * vec3(u_uvscaleoffset.xy, 1.0); }
God of War®: Ghost of Sparta v1.8.0 2019-05-16 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 r6p0-01rel0 [Revision 96995]. 07f34004:41400b1d HWX C T N LM Fog Tex Bones:6 Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-18 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]. 07f34501:41400b1d HWX C T N LM Fog Tex 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 #version 100 precision highp float; 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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.rgb += (u_lightambient3 * color0.rgb + diffu
God of War®: Ghost of Sparta v1.8.0 2019-05-15 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]. 07f34510:40c00b1d HWX C T N LM Fog Tex Bones:4 Light: 0: c:0 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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; 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 - 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.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_t
God of War®: Ghost of Sparta v1.8.0 2019-05-13 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]. 01f34154:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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); 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 ; } 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.
God of War®: Ghost of Sparta v1.8.0 2019-05-13 WriteToHardware: Invalid address 00000029 near PC 08a69550 LR 08838c50
God of War®: Ghost of Sparta v1.8.0 2019-05-17 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]. 07730155:41000b1d HWX C T N LM Fog Tex Bones:5 Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3 WScale 3 #version 100 precision highp float; 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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); 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 * lightScale; } 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); 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); 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 ; } lightSum0.rgb += (u
God of War®: Ghost of Sparta v1.8.0 2019-05-12 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]. 07f34004:41800b1d HWX C T N LM Fog Tex Bones:7 Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform vec3 u_lightpos2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform vec3 u_lightpos3; uniform 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5 + w2.z * u_bone6; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-12 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]. 07f34004:41400b1d HWX C T N LM Fog Tex Bones:6 Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0); 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-12 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]. 07730054:40c10b59 HWX C T N LM Tex TexProjPos UVMtx Bones:4 Light: 0: c:0 t:1 1: c:1 t:1 2: c:0 t:0 MatUp:3 WScale 3 #version 100 precision highp float; 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 mediump mat4 u_texmtx; 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 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 vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; 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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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); 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); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = (u_texmtx * vec4(position.xyz, 1.0)).xyz * vec3(u_uvscaleoffset.xy, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-12 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]. 07f34115:40c00b1d HWX C T N LM Fog Tex Bones:4 Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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); 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 * lightScale; } 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); 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 ; } lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(to
God of War®: Ghost of Sparta v1.6.3 2019-05-11 Error in shader compilation: info: 0(2) : error C0121: #version 300 must be followed by es 0(2) : error C0201: unsupported version 300 0(6) : error C7532: global type sampler2D requires "#version 100" or later 0(8) : error C7532: global type vec4 requires "#version 100" or later 0(9) : error C5060: out can't be used with non-varying _gl_FragColor 0(16) : error C7532: global type vec3 requires "#version 100" or later 0(16) : error C7532: global function texture requires "#version 130" or later 0(17) : error C7532: global type mat3 requires "#version 100" or later 0(18) : error C7532: global function pow requires "#version 100" or later 0(18) : error C7532: global type vec2 requires "#version 100" or later postshader #version 300 #ifdef GL_ARB_shading_language_420pack #extension GL_ARB_shading_language_420pack : require #endif uniform sampler2D sampler0; in vec4 v_texcoord0; out vec4 _gl_FragColor; in vec4 v_texcoord1; in vec4 v_texcoord2; in vec4 v_texcoord3; void main() { vec3 c0 = texture(sampler0, v_texcoord0.xy).xyz; vec3 c1 = mat3(vec3(0.2989999949932098388671875, 0.596000015735626220703125, 0.21199999749660491943359375), vec3(0.58700001239776611328125, -0.2750000059604644775390625, -0.5230000019073486328125), vec3(0.114000000059604644775390625, -0.3210000097751617431640625, 0.31099998950958251953125)) * c0; c1 = vec3(pow(c1.x, 1.2000000476837158203125), c1.yz * vec2(1.2000000476837158203125)); vec3 _68 = mat3(vec3(1.0), vec3(0.955688059329986572265625, -0.2715817987918853759765625, -1.10817730426788330078125), vec3(0.619858086109161376953125, -0.64687383174896240234375, 1.7050645351409912109375)) * c1; _gl_FragColor = vec4(_68.x, _68.y, _68.z, _gl_FragColor.w); _gl_FragColor.w = 1.0; }
God of War®: Ghost of Sparta v1.6.3 2019-05-11 Error in shader program link: info: Vertex info ----------- 0(2) : error C0121: #version 300 must be followed by es 0(2) : error C0201: unsupported version 300 0(6) : error C7532: global type vec4 requires "#version 100" or later 0(9) : error C5060: out can't be used with non-varying v_texcoord0 0(10) : error C7532: global type vec2 requires "#version 100" or later 0(11) : error C5060: out can't be used with non-varying v_texcoord1 0(12) : error C5060: out can't be used with non-varying v_texcoord2 0(13) : error C5060: out can't be used with non-varying v_texcoord3 0(17) : error C7532: global variable gl_Position requires "#version 100" or later Fragment info ------------- 0(2) : error C0121: #version 300 must be followed by es 0(2) : error C0201: unsupported version 300 0(6) : error C7532: global type sampler2D requires "#version 100" or later 0(8) : error C7532: global type vec4 requires "#version 100" or later 0(9) : error C5060: out can't be used with non-varying _gl_FragColor 0(16) : error C7532: global type vec3 requires "#version 100" or later 0(16) : error C7532: global function texture requires "#version 130" or later 0(17) : error C7532: global type mat3 requires "#version 100" or later 0(18) : error C7532: global function pow requires "#version 100" or later 0(18) : error C7532: global type vec2 requires "#version 100" or later fs: postshader #version 300 #ifdef GL_ARB_shading_language_420pack #extension GL_ARB_shading_language_420pack : require #endif uniform sampler2D sampler0; in vec4 v_texcoord0; out vec4 _gl_FragColor; in vec4 v_texcoord1; in vec4 v_texcoord2; in vec4 v_texcoord3; void main() { vec3 c0 = texture(sampler0, v_texcoord0.xy).xyz; vec3 c1 = mat3(vec3(0.2989999949932098388671875, 0.596000015735626220703125, 0.21199999749660491943359375), vec3(0.58700001239776611328125, -0.2750000059604644775390625, -0.5230000019073486328125), vec3(0.114000000059604644775390625, -0.3210000097751617431640625, 0.31099998950958251953125)) * c0; c1 = vec3(pow(c1.x, 1.2000000476837158203125), c1.yz * vec2(1.2000000476837158203125)); vec3 _68 = mat3(vec3(1.0), vec3(0.955688059329986572265625, -0.2715817987918853759765625, -1.10817730426788330078125), vec3(0.619858086109161376953125, -0.64687383174896240234375, 1.7050645351409912109375)) * c1; _gl_FragColor = vec4(_68.x, _68.y, _68.z, _gl_FragColor.w); _gl_FragColor.w = 1.0; } vs: postshader #version 300 #ifdef GL_ARB_shading_language_420pack #extension GL_ARB_shading_language_420pack : require #endif uniform vec4 u_texelDelta; in vec4 a_position; out vec4 v_texcoord0; in vec2 a_texcoord0; out vec4 v_texcoord1; out vec4 v_texcoord2; out vec4 v_texcoord3; void main() { gl_Position = a_position; v_texcoord0 = a_texcoord0.xyxy + (vec4(-0.5, -0.5, -1.5, -1.5) * u_texelDelta.xyxy); v_texcoord1 = a_texcoord0.xyxy + (vec4(0.5, -0.5, 1.5, -1.5) * u_texelDelta.xyxy); v_texcoord2 = a_texcoord0.xyxy + (vec4(-0.5, 0.5, -1.5, 1.5) * u_texelDelta.xyxy); v_texcoord3 = a_texcoord0.xyxy + (vec4(0.5, 0.5, 1.5, 1.5) * u_texelDelta.xyxy); gl_Position.z = 2.0 * gl_Position.z - gl_Position.w; }
God of War®: Ghost of Sparta v1.8.0 2019-05-11 Unknown GetPointer 00000000 PC 08a747a0 LR 08a747a0
God of War®: Ghost of Sparta v1.8.0 2019-05-11 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 r6p2-01rel0 [Revision 96995]. 01f34540:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform 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 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w
God of War®: Ghost of Sparta v1.8.0 2019-05-11 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:41c00b1d HWX C T N LM Fog Tex Bones:8 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 #version 100 precision highp float; attribute mediump vec4 w1, 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 mat4 u_bone7; 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5 + w2.z * u_bone6 + w2.w * u_bone7; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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);
God of War®: Ghost of Sparta v1.8.0 2019-05-19 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r2p1_05rel0 [Revision 96995]. 01f34551:00000b1d HWX C T N LM Fog Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform mediump vec3 u_lightatt2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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 - 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_lig
God of War®: Ghost of Sparta v1.8.0 2019-05-19 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r2p1_05rel0 [Revision 96995]. 01f34551:00000f1d HWX C T N LM Fog RevN Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform mediump vec3 u_lightatt1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform lowp vec3 u_lightspecular1; uniform vec3 u_lightpos2; uniform mediump vec3 u_lightatt2; uniform lowp vec3 u_lightambient2; uniform lowp vec3 u_lightdiffuse2; uniform lowp vec3 u_lightspecular2; uniform vec3 u_lightpos3; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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 - 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 =
God of War®: Ghost of Sparta v1.8.0 2019-05-10 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 r6p0-01rel1 [Revision 96995]. 01f34515:00000f1d HWX C T N LM Fog RevN Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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 - 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
God of War®: Ghost of Sparta v1.8.0 2019-05-10 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 r6p0-01rel1 [Revision 96995]. 01f34515:00000b1d HWX C T N LM Fog Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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 - 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_l
God of War®: Ghost of Sparta v1.8.0 2019-05-10 WriteToHardware: Invalid address 00000029 near PC 08a70514 LR 08a70514
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-05-09 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod #version 100 precision lowp float; uniform sampler2D tex; uniform float u_stencilReplaceValue; varying vec4 v_color0; varying vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); } vs: 01f34101:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 (failed) #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); toLight = u_lightpos3 - worldpos; distance = length(toLight); toLight /= distance; ldot = max(dot(toLight, worldnormal), 0.0); lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse3 * color0.rgb) * ldot; 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; if (u_cullRangeMin.w <= 0.0f || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMa
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-05-09 Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking fs: 00000000:00800002 Tex 2x TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a); v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0); gl_FragColor = v; } vs: 00000000:00000910 HWX T Tex (failed) #version 100 precision highp float; attribute vec3 position; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-05-09 Error in shader compilation: info: 0:22: L0001: Expected token ')', found 'identifier' 00000000:00000910 HWX T Tex #version 100 precision highp float; attribute vec3 position; attribute vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_matambientalpha; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; v_color0 = u_matambientalpha; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0f || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-09 Unknown GetPointer 00000000 PC 08ab0908 LR 08ab0908
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-09 Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program fs: 00000000:00a00022 Tex TexAlpha Fog 2x TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; v.rgb = v.rgb * 2.0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = v; } vs: 00000000:0000091c HWX C T Fog Tex #version 100 precision highp float; attribute vec3 position; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; v_color0 = color0; v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-07 Error in shader program link: info: (unknown reason) fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod #version 300 es #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; uniform sampler2D tex; in vec4 v_color0; in vec3 v_color1; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; inout vec4 fragColor0; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t + s; v.rgb = v.rgb * 2.0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = v; } vs: 01010000:00000b1d HWX C T N LM Fog Tex Light: MatUp:1 #version 300 es precision highp float; in vec3 position; in mediump vec3 normal; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; 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; out lowp vec4 v_color0; out lowp vec3 v_color1; out mediump vec3 v_texcoord; out mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = vec3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-07 Error in shader program link: info: (unknown reason) fs: 00000000:00800802 Tex LM 2x TFuncMod #version 300 es #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; uniform sampler2D tex; in vec4 v_color0; in vec3 v_color1; in mediump vec3 v_texcoord; inout vec4 fragColor0; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; v.rgb = v.rgb * 2.0; fragColor0 = v; } vs: 01030000:00120b19 HWX C T N LM Tex UVEnv Light: 0: c:0 t:0 1: c:0 t:0 MatUp:3 #version 300 es precision highp float; in vec3 position; in mediump vec3 normal; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform vec3 u_lightpos1; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; out lowp vec4 v_color0; out lowp vec3 v_color1; out mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = vec3(0.0); v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + dot(normalize(u_lightpos0), worldnormal), 1.0 + dot(normalize(u_lightpos1), worldnormal)) * 0.5, 1.0); }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-07 Error in shader program link: info: (unknown reason) fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod #version 300 es #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; uniform sampler2D tex; uniform float u_stencilReplaceValue; in vec4 v_color0; in vec3 v_color1; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; inout vec4 fragColor0; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a) + s; v.rgb = v.rgb * 2.0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = vec4(v.rgb, u_stencilReplaceValue); } vs: 01730101:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3 #version 300 es precision highp float; in vec3 position; in mediump vec3 normal; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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; out lowp vec4 v_color0; out lowp vec3 v_color1; out mediump vec3 v_texcoord; out mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-07 Error in shader program link: info: (unknown reason) fs: 00000000:0a000000 StenToAlphaDual Sten1 #version 300 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; in vec4 v_color0; inout vec4 fragColor0; out vec4 fragColor1; void main() { vec4 v = v_color0 ; fragColor0 = vec4(v.rgb, 1.0); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); } vs: 00000000:00000002 THR #version 300 es precision highp float; in vec4 position; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; void main() { v_color0 = color0; gl_Position = u_proj_through * vec4(position.xyz, 1.0); }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-05-07 Error in shader program link: info: (unknown reason) fs: 00000000:06000000 StenToAlphaDual Sten0 #version 300 es #extension GL_EXT_blend_func_extended : require #extension GL_EXT_shader_framebuffer_fetch : require precision lowp float; in vec4 v_color0; inout vec4 fragColor0; out vec4 fragColor1; void main() { vec4 v = v_color0 ; fragColor0 = vec4(v.rgb, 0.0); fragColor1 = vec4(0.0, 0.0, 0.0, v.a); } vs: 00000000:00000002 THR #version 300 es precision highp float; in vec4 position; in lowp vec4 color0; uniform mat4 u_proj_through; out lowp vec4 v_color0; void main() { v_color0 = color0; gl_Position = u_proj_through * vec4(position.xyz, 1.0); }
God of War®: Ghost of Sparta v1.8.0 2019-05-08 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:00000f1d HWX C T N LM Fog RevN Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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 - 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 =
God of War®: Ghost of Sparta v1.8.0 2019-05-08 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:00000b1d HWX C T N LM Fog Tex 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 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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 * lightScale; } 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 - 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_lig
God of War®: Ghost of Sparta v1.8.0 2019-05-07 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:41000b1d HWX C T N LM Fog Tex Bones:5 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 #version 100 precision highp float; 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (proj
God of War®: Ghost of Sparta v1.8.0 2019-05-07 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:40c00b1d HWX C T N LM Fog Tex Bones:4 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 #version 100 precision highp float; 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 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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projP
God of War®: Ghost of Sparta v1.6.3 2019-05-06 Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest > #version 100 precision lowp float; uniform sampler2D tex; uniform sampler2D testtex; uniform float u_stencilReplaceValue; varying vec4 v_color0; varying vec3 v_color1; uniform vec3 u_fogcolor; varying mediump float v_fogdepth; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t + s; float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a; if (aResult < 0.5) discard; v.rgb = v.rgb * 2.0; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); gl_FragColor = vec4(v.rgb, u_stencilReplaceValue); } vs: 01030000:00000f1d HWX C T N LM Fog RevN Tex Light: MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; varying mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); mediump float ldot; v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = vec3(0.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y; }
God of War®: Ghost of Sparta v1.8.0 2019-05-08 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]. 01f34501:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z ||
God of War®: Ghost of Sparta v1.8.0 2019-05-08 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]. 01f34501:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMi
God of War®: Ghost of Sparta v1.8.0 2019-05-07 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]. 07730444:41000b1d HWX C T N LM Fog Tex Bones:5 Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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 vec2 u_fogcoef; 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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-07 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]. 07b34044:41000b1d HWX C T N LM Fog Tex Bones:5 Light: 0: c:0 t:1 1: c:0 t:1 3: c:0 t:1 MatUp:3 WScale 3 #version 100 precision highp float; 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 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_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_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; void main() { mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4; vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ; vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz; mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ; mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * 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_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 = vec3(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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
God of War®: Ghost of Sparta v1.8.0 2019-05-13 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]. 01f34540:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform 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 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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); 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w;
God of War®: Ghost of Sparta v1.8.0 2019-05-16 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 r6p2-01rel0 [Revision 96995]. 01f34501:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z
God of War®: Ghost of Sparta v1.8.0 2019-05-01 Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader. Please contact [email protected] with the shader causing the problem, along with this error message. Mali online shader compiler r6p2-01rel0 [Revision 96995]. 01f34501:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:0 1: c:0 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform lowp vec3 u_lightspecular0; uniform vec3 u_lightpos1; uniform lowp vec3 u_lightambient1; uniform lowp vec3 u_lightdiffuse1; uniform 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_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; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; 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; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse1 * color0.rgb) * 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 * 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.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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRange
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-04-30 BJUMP to illegal address 07159c10 - ignoring! data=159b11
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-04-30 Unknown GE command : ef560000
God of War®: Ghost of Sparta v1.7.5-403-g128c0ad 2019-04-29 Error in shader program link: info: error: vertex shader output `v_texcoord0' declared as type `vec4', but fragment shader input declared as type `vec2' fs: postshader // Simple Bloom shader; created to use in PPSSPP. // Without excessive samples and complex nested loops // (to make it compatible with low-end GPUs and to ensure ps_2_0 compatibility). #ifdef GL_ES precision mediump float; precision mediump int; #endif uniform sampler2D sampler0; varying vec2 v_texcoord0; float amount = 0.60; // suitable range = 0.00 - 1.00 float power = 0.5; // suitable range = 0.0 - 1.0 void main() { vec3 color = texture2D(sampler0, v_texcoord0.xy).xyz; vec4 sum = vec4(0); vec3 bloom; for(int i= -3 ;i < 3; i++) { sum += texture2D(sampler0, v_texcoord0 + vec2(-1, i)*0.004) * amount; sum += texture2D(sampler0, v_texcoord0 + vec2(0, i)*0.004) * amount; sum += texture2D(sampler0, v_texcoord0 + vec2(1, i)*0.004) * amount; } if (color.r < 0.3 && color.g < 0.3 && color.b < 0.3) { bloom = sum.xyz*sum.xyz*0.012 + color; } else { if (color.r < 0.5 && color.g < 0.5 && color.b < 0.5) { bloom = sum.xyz*sum.xyz*0.009 + color; } else { bloom = sum.xyz*sum.xyz*0.0075 + color; } } bloom = mix(color, bloom, power); gl_FragColor.rgb = bloom; gl_FragColor.a = 1.0; } vs: postshader // by guest(r) - [email protected] // license: GNU-GPL attribute vec4 a_position; attribute vec2 a_texcoord0; uniform vec2 u_texelDelta; varying vec4 v_texcoord0; varying vec4 v_texcoord1; varying vec4 v_texcoord2; varying vec4 v_texcoord3; varying vec4 v_texcoord4; varying vec4 v_texcoord5; varying vec4 v_texcoord6; float scaleoffset = 0.8; void main() { float x = u_texelDelta.x*scaleoffset; float y = u_texelDelta.y*scaleoffset; gl_Position = a_position; v_texcoord0 = a_texcoord0.xyxy; v_texcoord1 = v_texcoord0; v_texcoord2 = v_texcoord0; v_texcoord4 = v_texcoord0; v_texcoord5 = v_texcoord0; v_texcoord1.y-=y; v_texcoord2.y+=y; v_texcoord4.x-=x; v_texcoord5.x+=x; }
God of War®: Ghost of Sparta v1.7.5-403-g128c0ad 2019-04-29 Error in shader program link: info: error: vertex shader output `v_texcoord0' declared as type `vec4', but fragment shader input declared as type `vec2' fs: postshader // Simple sharpen shader; created to use in PPSSPP #ifdef GL_ES precision mediump float; precision mediump int; #endif uniform sampler2D sampler0; varying vec2 v_texcoord0; float amount = 2.0; void main() { vec3 color = texture2D(sampler0, v_texcoord0.xy).xyz; color -= texture2D(sampler0, v_texcoord0.xy+0.0001).xyz*9.0*amount; color += texture2D(sampler0, v_texcoord0.xy-0.0001).xyz*9.0*amount; gl_FragColor.rgb = color; } vs: postshader attribute vec4 a_position; attribute vec2 a_texcoord0; uniform vec2 u_texelDelta; uniform vec2 u_pixelDelta; varying vec4 v_texcoord0; varying vec4 v_texcoord1; varying vec4 v_texcoord2; varying vec4 v_texcoord3; varying vec4 v_texcoord4; varying vec4 v_texcoord5; varying vec4 v_texcoord6; void main() { float x = u_pixelDelta.x*((u_texelDelta.x/u_pixelDelta.x)/9.0); float y = u_pixelDelta.y*((u_texelDelta.y/u_pixelDelta.y)/9.0); vec2 dg1 = vec2( x,y); vec2 dg2 = vec2(-x,y); vec2 sd1 = dg1*0.25; vec2 sd2 = dg2*0.25; gl_Position = a_position; v_texcoord0=a_texcoord0.xyxy; v_texcoord1.xy = v_texcoord0.xy - sd1; v_texcoord2.xy = v_texcoord0.xy - sd2; v_texcoord3.xy = v_texcoord0.xy + sd1; v_texcoord4.xy = v_texcoord0.xy + sd2; v_texcoord5.xy = v_texcoord0.xy - dg1; v_texcoord6.xy = v_texcoord0.xy + dg1; v_texcoord5.zw = v_texcoord0.xy - dg2; v_texcoord6.zw = v_texcoord0.xy + dg2; }
God of War®: Ghost of Sparta v1.7.5-403-g128c0ad 2019-04-28 Error in shader program link: info: error: vertex shader output `v_texcoord0' declared as type `vec4', but fragment shader input declared as type `vec2' fs: postshader // PPSSPP: Grabbed from Processing and slightly modified. // FXAA shader, GLSL code adapted from: // http://horde3d.org/wiki/index.php5?title=Shading_Technique_-_FXAA // Whitepaper describing the technique: // http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf #ifdef GL_ES precision mediump float; precision mediump int; #endif uniform sampler2D sampler0; // The inverse of the texture dimensions along X and Y uniform vec2 u_texelDelta; varying vec2 v_texcoord0; void main() { // The parameters are hardcoded for now, but could be // made into uniforms to control fromt he program. float FXAA_SPAN_MAX = 8.0; float FXAA_REDUCE_MUL = 1.0/8.0; float FXAA_REDUCE_MIN = (1.0/128.0); vec3 rgbNW = texture2D(sampler0, v_texcoord0.xy + (vec2(-1.0, -1.0) * u_texelDelta)).xyz; vec3 rgbNE = texture2D(sampler0, v_texcoord0.xy + (vec2(+1.0, -1.0) * u_texelDelta)).xyz; vec3 rgbSW = texture2D(sampler0, v_texcoord0.xy + (vec2(-1.0, +1.0) * u_texelDelta)).xyz; vec3 rgbSE = texture2D(sampler0, v_texcoord0.xy + (vec2(+1.0, +1.0) * u_texelDelta)).xyz; vec3 rgbM = texture2D(sampler0, v_texcoord0.xy).xyz; vec3 luma = vec3(0.299, 0.587, 0.114); float lumaNW = dot(rgbNW, luma); float lumaNE = dot(rgbNE, luma); float lumaSW = dot(rgbSW, luma); float lumaSE = dot(rgbSE, luma); float lumaM = dot( rgbM, luma); float lumaMin = min(lumaM, min(min(lumaNW, lumaNE), min(lumaSW, lumaSE))); float lumaMax = max(lumaM, max(max(lumaNW, lumaNE), max(lumaSW, lumaSE))); vec2 dir; dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE)); dir.y = ((lumaNW + lumaSW) - (lumaNE + lumaSE)); float dirReduce = max((lumaNW + lumaNE + lumaSW + lumaSE) * (0.25 * FXAA_REDUCE_MUL), FXAA_REDUCE_MIN); float rcpDirMin = 1.0/(min(abs(dir.x), abs(dir.y)) + dirReduce); dir = min(vec2(FXAA_SPAN_MAX, FXAA_SPAN_MAX), max(vec2(-FXAA_SPAN_MAX, -FXAA_SPAN_MAX), dir * rcpDirMin)) * u_texelDelta; vec3 rgbA = (1.0/2.0) * ( texture2D(sampler0, v_texcoord0.xy + dir * (1.0/3.0 - 0.5)).xyz + texture2D(sampler0, v_texcoord0.xy + dir * (2.0/3.0 - 0.5)).xyz); vec3 rgbB = rgbA * (1.0/2.0) + (1.0/4.0) * ( texture2D(sampler0, v_texcoord0.xy + dir * (0.0/3.0 - 0.5)).xyz + texture2D(sampler0, v_texcoord0.xy + dir * (3.0/3.0 - 0.5)).xyz); float lumaB = dot(rgbB, luma); if((lumaB < lumaMin) || (lumaB > lumaMax)){ gl_FragColor.xyz=rgbA; } else { gl_FragColor.xyz=rgbB; } gl_FragColor.a = 1.0; } vs: postshader // by guest(r) - [email protected] // license: GNU-GPL attribute vec4 a_position; attribute vec2 a_texcoord0; uniform vec2 u_texelDelta; varying vec4 v_texcoord0; varying vec4 v_texcoord1; varying vec4 v_texcoord2; varying vec4 v_texcoord3; varying vec4 v_texcoord4; varying vec4 v_texcoord5; varying vec4 v_texcoord6; float scaleoffset = 2.8; void main() { float x = u_texelDelta.x*scaleoffset; float y = u_texelDelta.y*scaleoffset; gl_Position = a_position; v_texcoord0 = a_texcoord0.xyxy; v_texcoord1 = v_texcoord0; v_texcoord2 = v_texcoord0; v_texcoord4 = v_texcoord0; v_texcoord5 = v_texcoord0; v_texcoord1.y-=y; v_texcoord2.y+=y; v_texcoord4.x-=x; v_texcoord5.x+=x; }
God of War®: Ghost of Sparta v1.7.5-403-g128c0ad 2019-04-28 Error in shader compilation: info: 0:28(13): error: syntax error, unexpected '{', expecting ';' postshader varying vec4 v_texcoord2; varying vec4 v_texcoord3; varying vec4 v_texcoord4; varying vec4 v_texcoord5; varying vec4 v_texcoord6; void main() { float x = u_pixelDelta.x*((u_texelDelta.x/u_pixelDelta.x)/1.0); float y = u_pixelDelta.y*((u_texelDelta.y/u_pixelDelta.y)/1.0); vec2 dg1 = vec2( x,y); vec2 dg2 = vec2(-x,y); vec2 sd1 = dg1*0.5; vec2 sd2 = dg2*0.5; gl_Position = a_position; v_texcoord0=a_texcoord0.xyxy; v_texcoord1.xy = v_texcoord0.xy - sd1; v_texcoord2.xy = v_texcoord0.xy - sd2; v_texcoord3.xy = v_texcoord0.xy + sd1; v_texcoord4.xy = v_texcoord0.xy + sd2; v_texcoord5.xy = v_texcoord0.xy - dg1; v_texcoord6.xy = v_texcoord0.xy + dg1; v_texcoord5.zw = v_texcoord0.xy - dg2; v_texcoord6.zw = v_texcoord0.xy + dg2; attribute vec4 a_position; attribute vec2 a_texcoord0; varying vec2 v_texcoord0; void main() { v_texcoord0 = a_texcoord0; gl_Position = a_position; }
God of War®: Ghost of Sparta v1.8.0 2019-04-28 Unknown GetPointer 00000000 PC 08820704 LR 08820704
God of War®: Ghost of Sparta v1.8.0 2019-04-28 MIPSCompileOp: Invalid instruction 01b0ffff
God of War®: Ghost of Sparta v1.8.0 2019-04-28 MIPSCompileOp: Invalid instruction 0170ffff
God of War®: Ghost of Sparta v1.8.0 2019-04-28 MIPSCompileOp: Invalid instruction 00f0ffff
God of War®: Ghost of Sparta v1.8.0 2019-04-28 MIPSCompileOp: Invalid instruction 0110ffff
God of War®: Ghost of Sparta v1.8.0 2019-04-28 MIPSCompileOp: Invalid instruction 0150ffff
God of War®: Ghost of Sparta v1.8.0 2019-04-27 WriteToHardware: Invalid address 00000029 near PC 08ad6d94 LR 088bb45c
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-04-27 Unknown GE command : 03000301
God of War®: Ghost of Sparta v1.6.3-492-g9fddfff66 2019-04-27 Bad bounding box data: 000701
God of War®: Ghost of Sparta v1.8.0 2019-05-04 80631003=sceAtracSetAA3DataAndGetID(08c5f6c0, 0001e000, 00315ba8, 09fbba6c[ffffffff]): invalid ea3 magic bytes
God of War®: Ghost of Sparta v1.8.0 2019-04-27 WriteToHardware: Invalid address 00000029 near PC 08ae9890 LR 08ae9890
God of War®: Ghost of Sparta v1.8.0 2019-04-26 sceKernelLoadModule: unsupported options size=00000014, flags=08857c2c, pos=0, access=1, data=1, text=1
God of War®: Ghost of Sparta v1.8.0 2019-04-26 sceKernelLoadModule: unsupported options size=00000014, flags=08d11560, pos=0, access=1, data=2, text=2
God of War®: Ghost of Sparta v1.8.0 2019-04-26 sceKernelLoadModule: unsupported options size=00000014, flags=0892b680, pos=0, access=1, data=2, text=2
God of War®: Ghost of Sparta v1.6 2019-04-23 MIPSCompileOp: Invalid instruction 43480000
God of War®: Ghost of Sparta v1.8.0 2019-05-12 Unknown GetPointer 00000000 PC 08a4e76c LR 08a4e76c
God of War®: Ghost of Sparta v1.8.0 2019-04-19 Unknown GetPointer 00000000 PC 08816150 LR 08816164
God of War®: Ghost of Sparta v1.8.0 2019-05-08 Unknown GetPointer 00000000 PC 08815f14 LR 08000020
God of War®: Ghost of Sparta v1.8.0 2019-04-15 WriteToHardware: Invalid address 00000029 near PC 08abd390 LR 08a80578
God of War®: Ghost of Sparta v1.7.1 2019-04-14 MIPSCompileOp: Invalid instruction b0220b00
God of War®: Ghost of Sparta v1.7.1 2019-04-14 Branch in RSRTComp delay slot at 047ec010 in block starting at 047ec010
God of War®: Ghost of Sparta v1.7.1 2019-04-14 Branch in RSZeroComp delay slot at 08000218 in block starting at 08000208
God of War®: Ghost of Sparta v1.7.1 2019-04-14 Branch in RSZeroComp delay slot at 047ec000 in block starting at 047e1900
God of War®: Ghost of Sparta v1.7.1 2019-04-14 Branch in Jump delay slot at 00010028 in block starting at 00010000
God of War®: Ghost of Sparta v1.7.1 2019-04-14 An uneaten prefix at end of block: 08000224
God of War®: Ghost of Sparta v1.8.0 2019-04-11 WriteToHardware: Invalid address 00000000 near PC 08ab7c30 LR 08b7a35c
God of War®: Ghost of Sparta v1.8.0 2019-04-11 WriteToHardware: Invalid address 00000029 near PC 088ac8b8 LR 088ac8b8
God of War®: Ghost of Sparta v1.8.0 2019-04-10 Unknown GetPointer 00000000 PC 08ae90f0 LR 08ae90f0
God of War®: Ghost of Sparta v1.8.0 2019-04-10 WriteToHardware: Invalid address 00000029 near PC 08aebf74 LR 08aebf74
God of War®: Ghost of Sparta v1.8.0 2019-04-09 WriteToHardware: Invalid address 00000029 near PC 08aa8548 LR 08aaa9ac
God of War®: Ghost of Sparta v1.8.0 2019-04-07 Unknown GetPointer 00000000 PC 08a75080 LR 08a75094
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-04-06 Error in shader program link: info: (unknown reason) fs: 00000000:00800822 Tex TexAlpha LM 2x TFuncMod #version 100 precision lowp float; uniform sampler2D tex; varying vec4 v_color0; varying vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec4 s = vec4(v_color1, 0.0); vec4 t = texture2D(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t + s; v.rgb = v.rgb * 2.0; gl_FragColor = v; } vs: 01730100:00000b19 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3 (failed) #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform 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 lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); }
God of War®: Ghost of Sparta v1.6.3-432-gfd6c3145d 2019-04-06 Error in shader compilation: info: (unknown reason) 01730100:00000b19 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3 #version 100 precision highp float; attribute vec3 position; attribute mediump vec3 normal; attribute vec2 texcoord; attribute lowp vec4 color0; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform vec3 u_lightpos0; uniform lowp vec3 u_lightambient0; uniform lowp vec3 u_lightdiffuse0; uniform 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 lowp vec4 u_ambient; uniform lowp vec4 u_matspecular; uniform lowp vec3 u_matemissive; uniform lowp vec4 u_matambientalpha; varying lowp vec4 v_color0; varying lowp vec3 v_color1; varying mediump vec3 v_texcoord; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz); vec4 viewPos = u_view * vec4(worldpos, 1.0); gl_Position = u_proj * viewPos; lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = vec3(0.0); vec3 toLight; lowp vec3 diffuse; mediump float ldot; toLight = u_lightpos0; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse0 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse); toLight = u_lightpos1; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse1 * color0.rgb) * ldot; lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse); toLight = u_lightpos2; ldot = max(dot(toLight, worldnormal), 0.0); diffuse = (u_lightdiffuse2 * color0.rgb) * ldot; ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (ldot > 0.0) lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) ); lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse); v_color0 = clamp(lightSum0, 0.0, 1.0); v_color1 = clamp(lightSum1, 0.0, 1.0); v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); }
God of War®: Ghost of Sparta v1.7.5 2019-03-31 WriteToHardware: Invalid address 00000029 near PC 08815d90 LR 088167b4
God of War®: Ghost of Sparta v1.8.0 2019-03-27 WriteToHardware: Invalid address 00000029 near PC 08821284 LR 08821910
God of War®: Ghost of Sparta v1.8.0 2019-03-26 WriteToHardware: Invalid address 00000029 near PC 08a9b96c LR 08a9850c
God of War®: Ghost of Sparta v1.8.0 2019-03-25 WriteToHardware: Invalid address 00000029 near PC 08aff924 LR 08aff974
God of War®: Ghost of Sparta v1.8.0 2019-03-24 80631003=sceAtracSetAA3DataAndGetID(08c5f6c0, 0001e000, 00219e48, 09fbba6c[ffffffff]): invalid ea3 magic bytes
God of War®: Ghost of Sparta v1.8.0 2019-03-24 80631003=sceAtracSetAA3DataAndGetID(08c5f6c0, 0001e000, 001f6128, 09fbba6c[ffffffff]): invalid ea3 magic bytes
God of War®: Ghost of Sparta v1.8.0 2019-03-24 WriteToHardware: Invalid address 00000029 near PC 08834c9c LR 08834da8