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.12.3 |
2022-05-21 |
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].
01f34151:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
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*distan |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-21 |
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].
01f34151:00000b3d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
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)), |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-21 |
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].
01f34515:00000f3d 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 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform 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;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
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 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-21 |
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].
01f34515:00000b3d 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 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform 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;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
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) * li |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-20 |
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].
01f34015:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform 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 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;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
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);
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_ |
God of War™: Ghost of Sparta |
v1.12 |
2022-05-19 |
GetFramebufferCandidates(DEPTH): Multiple (2) candidate framebuffers. texaddr: 04710000 offset: 0 (512x512 stride 512, CLUT16) |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-16 |
Unexpected mpeg first timestamp: efcc9fbf2ec / 16478883279596 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00015f00): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 0000b300): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00010300): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 0000b400): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00000b00): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00000a00): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00003b00): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00004900): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00007300): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 00002f00): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bd6708, 0000e800): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
Rendering to framebuffer offset: 040cc000 +65x0 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
80630007=sceAtracSetData(2, 08bb6700, 00020000): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-11 |
sceGeBreak(mode=0, unknown=08bac174): unknown ptr (valid) |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-06 |
ReadFromHardware: Invalid address 24e24120 near PC 24e24120 LR 24e24120 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 40e0fc38 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 40b85e5c |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 41989914 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
Jump to invalid address: 015bc140 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
Jump to invalid address: 05cb2a00 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
Jump to invalid address: 05270080 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 00000078 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 0000001e |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-05-06 |
ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 088e4334 |
God of War™: Ghost of Sparta |
v1.11.2 |
2022-05-01 |
WriteToHardware: Invalid address 00000064 near PC 08abab04 LR 08abad3c |
God of War™: Ghost of Sparta |
v1.11.2 |
2022-05-01 |
ReadFromHardware: Invalid address 00000068 near PC 08abab04 LR 08abad3c |
God of War™: Ghost of Sparta |
v1.12.2 |
2022-04-23 |
UNIMPL sceIoChstat(ms0:/PSP/SAVEDATA/ULUS10505DATA/BBS1.DAT, 09faad70, 00000002) |
God of War™: Ghost of Sparta |
v1.12.2 |
2022-04-23 |
sceIoChstat: change attr to 0000 requested |
God of War™: Ghost of Sparta |
v1.8.0 |
2022-04-21 |
ReadFromHardware: Invalid address 00000044 near PC 088e46e4 LR 088e46fc |
God of War™: Ghost of Sparta |
v1.8.0 |
2022-04-21 |
ReadFromHardware: Invalid address 00000040 near PC 088e46e4 LR 088e46fc |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-04-19 |
WriteToHardware: Invalid address 00000064 near PC 08a83a4c LR 08a840ec |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-04-19 |
ReadFromHardware: Invalid address 00000068 near PC 08a83a4c LR 08a840ec |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-04-17 |
Jump to invalid address: 017c16c0 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-04-17 |
Jump to invalid address: 077f1980 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-04-17 |
Jump to invalid address: 03992840 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-04-17 |
Unknown GE command : fbaa584b |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-04-15 |
Video out requested, not supported: mode=0 size=512,272 |
God of War™: Ghost of Sparta |
v1.10-6-g8ac4efd3c |
2022-04-03 |
sceKernelCreateSema(RealMutex) unsupported options parameter, size = 33144 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-04-01 |
BlockTransfer: Bad source transfer address af19c450! |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-04-01 |
Unknown GE command : 39898917 |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-03-31 |
80630007=sceAtracSetData(2, 08d4b180, 00010000): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-03-31 |
80630007=sceAtracSetData(2, 08d4b180, 00015700): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-03-31 |
80630007=sceAtracSetData(2, 08d4b180, 0000d800): atracID uses different codec type than data |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-03-29 |
Bad bounding box data: ff6ac4 |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-03-29 |
Unknown GE command : 39031c08 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-27 |
Unexpected mpeg first timestamp: 7794b617261 / 8217537114721 |
God of War™: Ghost of Sparta |
v1.11.2 |
2022-03-13 |
ReadFromHardware: Invalid address 00000804 near PC 08a319e4 LR 08a319d4 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-08 |
Unexpected mpeg first timestamp: e6ff5e811df / 15874029785567 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-07 |
WriteToHardware: Invalid address 00000367 near PC 08000000 LR 08000000 |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-03-07 |
ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 08b86584 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-03 |
sceGeBreak(mode=1, unknown=09f9af80): unknown ptr (valid) |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-03 |
__KernelStopThread: thread 295 does not exist |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-27 |
sceGeBreak(mode=0, unknown=08f6c8fc): unknown ptr (valid) |
God of War™: Ghost of Sparta |
v1.10.2 |
2022-02-22 |
Unknown syscall in known module 'sceNpService': 0xa01443aa |
God of War™: Ghost of Sparta |
v1.10.2 |
2022-02-22 |
Unknown syscall in known module 'sceNpService': 0x506c318d |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-02-22 |
Bad vertex address 06676600! |
God of War™: Ghost of Sparta |
v1.11.3 |
2022-02-22 |
Unknown GE command : fefcecbf |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-19 |
sceKernelLoadModule: unsupported options size=00000014, flags=08bd0020, pos=0, access=1, data=2, text=2 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-17 |
80631003=sceAtracSetAA3DataAndGetID(08c60dc0, 0001e000, 000736a4, 09fbba6c[ffffffff]): invalid ea3 magic bytes |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-17 |
80631003=sceAtracSetAA3DataAndGetID(08c60dc0, 0001e000, 00499998, 09fbba6c[ffffffff]): invalid ea3 magic bytes |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-17 |
80631003=sceAtracSetAA3DataAndGetID(08c60dc0, 0001e000, 0022fa18, 09fbba6c[ffffffff]): invalid ea3 magic bytes |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-16 |
sceKernelLoadModule: unsupported options size=00000014, flags=09fbec58, pos=0, access=1, data=2, text=2 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
MIPSCompileOp: Invalid instruction 40cefda9 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
MIPSCompileOp: Invalid instruction b1000000 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-05-06 |
MIPSCompileOp: Invalid instruction 44fa0000 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
Jump to invalid address: 017f07c0 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
Jump to invalid address: 06210680 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
Jump to invalid address: 05cc1c80 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
MIPSCompileOp: Invalid instruction 000009e8 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-15 |
ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 0885a848 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-13 |
Failed decrypting the PRX (ret = -4, size = 5616137, psp_size = 5616480)! |
God of War™: Ghost of Sparta |
v1.11.3-834-gbb38cf842 |
2022-02-12 |
ReadFromHardware: Invalid address 2370646c near PC 2370646c LR 08bd7de8 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-11 |
ReadFromHardware: Invalid address 008308ef near PC 008308ef LR 08bd7de8 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-11 |
WriteToHardware: Invalid address 9f6d1140 near PC 08a78e64 LR 08a78e64 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-07 |
Unexpected mpeg first timestamp: 420004 / 4325380 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-24 |
ReadFromHardware: Invalid address deadbeef near PC 09fff45c LR 08807438 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-16 |
FBO created from existing depthbuffer as color, 04088000/04110000 and 04000000/04088000 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-15 |
sceKernelLoadModuleByID: unsupported options size=00000014, flags=08b792fc, pos=0, access=1, data=2, text=2 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-15 |
sceKernelLoadModuleByID: unsupported options size=00000014, flags=08b792fc, pos=0, access=1, data=1, text=1 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-14 |
Jump to invalid address: 02d9ca20 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-14 |
Branch in Jump delay slot at 00010008 in block starting at 00010000 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-14 |
Jump to invalid address: 02d9c900 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-02-11 |
sceKernelLoadModule: unsupported options size=00000014, flags=089fe978, pos=0, access=1, data=1, text=1 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-01 |
Could not setup streams, unexpected stream count: 13414 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-03-01 |
Unexpected mpeg first timestamp: d59a080000 / 917412249600 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-09 |
__KernelStopThread: thread 452 does not exist |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-07 |
ReadFromHardware: Invalid address a05a1e1d near PC a05a1e1d LR a05a1e1d |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
MIPSCompileOp: Invalid instruction 46777677 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
MIPSCompileOp: Invalid instruction 0190003b |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
Jump to invalid address: 07fdce48 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
MIPSCompileOp: Invalid instruction 032009f9 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
Jump to invalid address: 0fe40000 |
God of War™: Ghost of Sparta |
v1.12.3 |
2022-01-06 |
Jump to invalid address: 03bfbfbc |