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: Chains of Olympus |
v1.14.2 |
2023-04-01 |
sceKernelCreateThread(name=layout): unsupported attributes 00000006 |
God of War: Chains of Olympus |
v1.14.2 |
2023-04-01 |
sceKernelCreateThread(name=god_g999_Base): unsupported attributes 00000006 |
God of War: Chains of Olympus |
v1.14.2 |
2023-04-01 |
sceKernelCreateThread(name=god_game): unsupported attributes 00000006 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-30 |
00000400=sceGeEdramSetAddrTranslation(00001000) |
God of War: Chains of Olympus |
v1.14.1 |
2023-03-30 |
UI scissor out of bounds in GameSettingsScreen: 275,0-1512,810 / 1771,810 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-30 |
sceKernelRegisterSubIntrHandler(30, 1, 088917e0, 00000000): duplicate handler |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-29 |
MIPSCompileOp: Invalid instruction 00080505 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-29 |
MIPSCompileOp: Invalid instruction 43886e8a |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-29 |
Jump to invalid address: 038c6d00 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1502,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1502,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1502,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1516,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1516,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1516,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1458,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1458,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1458,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1338,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1338,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1338,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1489,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1489,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1489,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1521,288-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1521,191-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14 |
2023-03-29 |
UI scissor out of bounds in SavedataScreen: 1521,93-0,93 / 1334,750 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-28 |
UI scissor out of bounds in GamePauseScreen: 982,17-279,527 / 1208,544 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-31 |
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].
01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + 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 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-26 |
WriteToHardware: Invalid address 000002c7 near PC 0881ce5c LR 0881ce5c |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-25 |
WriteToHardware: Invalid address 00000111 near PC 089e264c LR 089e2c1c |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-25 |
WriteToHardware: Invalid address 11f4e00d near PC 089e2274 LR 089cfd8c |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-25 |
ReadFromHardware: Invalid address 11f4e011 near PC 089e2274 LR 089cfd8c |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-25 |
ReadFromHardware: Invalid address 00000004 near PC 089e5694 LR 089e5694 |
God of War: Chains of Olympus |
v1.14 |
2023-03-25 |
UI scissor out of bounds in GameSettingsScreen: 226,0-959,544 / 1118,544 |
God of War: Chains of Olympus |
v1.14 |
2023-03-25 |
UI scissor out of bounds in GameSettingsScreen: 0,132-265,2013 / 544,1118 |
God of War: Chains of Olympus |
v1.14 |
2023-03-25 |
UI scissor out of bounds in GameSettingsScreen: 211,0-897,544 / 544,1118 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-23 |
WriteToHardware: Invalid address 000002c8 near PC 088c283c LR 088c32a4 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-23 |
ReadFromHardware: Invalid address ffffffa0 near PC 088c283c LR 088c32a4 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-23 |
Error in shader program link: info: Error: shader version mismatch
fs: 00180000:00800382 Tex 2x TClampST TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 650 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00180000:00800382 Tex 2x TClampST TFuncMod
uniform sampler2D tex;
uniform vec4 u_texclamp;
in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec2 fixedcoord = vec2(clamp(v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w));
vec4 t = texture(tex, fixedcoord.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);
fragColor0 = v;
}
vs: 00000000:00000012 THR Tex
#version 320 es
// Driver: Adreno (TM) 650 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000012 THR Tex
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_fogdepth = fog;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
God of War: Chains of Olympus |
v1.11.3 |
2023-03-21 |
Jump to invalid address: 02e28b00 |
God of War: Chains of Olympus |
v1.14.3 |
2023-03-19 |
UI scissor out of bounds in GamePauseScreen: 1155,11-538,295 / 967,544 |
God of War: Chains of Olympus |
v1.14.3 |
2023-03-19 |
UI scissor out of bounds in GamePauseScreen: 0,11-1138,295 / 967,544 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-19 |
__KernelStopThread: thread 306 does not exist (helper deleted) |
God of War: Chains of Olympus |
v1.14.1 |
2023-03-18 |
UI scissor out of bounds in MainScreen: 72,0-1166,721 / 1600,720 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-17 |
Branch in JumpReg delay slot at 08fca08c in block starting at 08fca044 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-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 r8p0-00dev0 [Revision 96995].
01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + 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 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x | |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-16 |
sceKernelLoadModuleByID: unsupported options size=00000014, flags=00000000, pos=0, access=0, data=2, text=2 |
God of War: Chains of Olympus |
v1.13.2 |
2023-03-16 |
sceKernelLoadModuleByID: unsupported options size=00000014, flags=00000000, pos=0, access=0, data=1, text=1 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-25 |
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 r8p0-00dev0 [Revision 96995].
01f34444:00010b39 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34444:00010b39 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform 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 vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = mul(vec4(position, 1.0), u_texmtx).xyz * vec3(u_uvscaleoffset.xy, 1.0);
|
God of War: Chains of Olympus |
v1.14.4 |
2023-03-13 |
__KernelStopThread: thread 793 does not exist (helper deleted) |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-13 |
__KernelStopThread: thread 419 does not exist (helper deleted) |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-13 |
sceKernelLoadModule: unsupported options size=00000014, flags=0899a900, pos=0, access=1, data=2, text=2 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-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 r6p2-01rel0 [Revision 96995].
01f24040:00000b39 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:2 Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f24040:00000b39 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:2 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-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 r6p2-01rel0 [Revision 96995].
01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f14404:00000b39 HWX C T N LM Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:1 3: c:0 t:1 MatUp:1 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + 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 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x | |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-25 |
Ignoring possible texturing from framebuffer at 04154000 +0x136 / 256x272 |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-13 |
WriteToHardware: Invalid address 10000024 near PC 088119c4 LR 08811aa4 |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-13 |
ReadFromHardware: Invalid address 3645c82c near PC 08996754 LR 08994f34 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-11 |
sceKernelLoadModule: unsupported options size=00000014, flags=08a69258, pos=0, access=1, data=2, text=2 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-11 |
sceKernelLoadModule: unsupported options size=00000014, flags=08a69258, pos=0, access=1, data=1, text=1 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-13 |
UI scissor out of bounds in MainScreen: 53,0-1126,721 / 1544,720 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-11 |
Unknown GE command : efd6f3b0 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-11 |
UI scissor out of bounds in GameSettingsScreen: 292,0-1240,721 / 1544,720 |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-10 |
ReadFromHardware: Invalid address 018180bc near PC 08ae1e88 LR 089b75ec |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-10 |
WriteToHardware: Invalid address 0a13d954 near PC 08af207c LR fffff7ff |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-10 |
WriteToHardware: Invalid address 0a13d950 near PC 08af207c LR fffff7ff |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-10 |
ReadFromHardware: Invalid address 0a13d950 near PC 08af207c LR fffff7ff |
God of War: Chains of Olympus |
v1.13.2-2494-g6a6ec80f6 |
2023-03-10 |
ReadFromHardware: Invalid address 00000004 near PC 08995ecc LR 08995edc |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-09 |
UI scissor out of bounds in GameSettingsScreen: 0,145-272,1864 / 544,1088 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-09 |
UI scissor out of bounds in GameSettingsScreen: 476,0-1678,272 / 1088,544 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-11 |
__KernelStopThread: thread 309 does not exist (helper deleted) |
God of War: Chains of Olympus |
v1.14.1 |
2023-03-09 |
UI scissor out of bounds in GameSettingsScreen: 224,0-933,544 / 1100,544 |
God of War: Chains of Olympus |
v1.14.1 |
2023-03-08 |
UI scissor out of bounds in GameSettingsScreen: 336,0-1399,816 / 1650,816 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-05 |
UI scissor out of bounds in GameSettingsScreen: 140,0-878,600 / 1024,552 |
God of War: Chains of Olympus |
v1.14.2 |
2023-03-05 |
UI scissor out of bounds in GameSettingsScreen: 131,0-823,611 / 960,562 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 02434f40 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0242e9c0 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Branch in Jump delay slot at 0890b438 in block starting at 0890a098 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0243b500 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Branch in Jump delay slot at 0890b434 in block starting at 0890a098 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0243b4c0 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0246c840 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0244c740 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0240a090 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Branch in Jump delay slot at 0890a294 in block starting at 0890a098 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 0240a040 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Branch in Jump delay slot at 0890a290 in block starting at 0890a098 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 02409ff0 |
God of War: Chains of Olympus |
v1.14.4 |
2023-03-04 |
Jump to invalid address: 02428460 |
God of War: Chains of Olympus |
v1.14.4 |
2023-02-26 |
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].
01f34444:00010b39 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34444:00010b39 HWX C T N LM Tex TexProjPos UVMtx Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:1 3: c:0 t:1 MatUp:3 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform 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 vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = mul(vec4(position, 1.0), u_texmtx).xyz * vec3(u_uvscaleoffset.xy, 1.0);
|
God of War: Chains of Olympus |
v1.14.4 |
2023-02-26 |
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].
01f24040:00000b39 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:2 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f24040:00000b39 HWX C T N LM Tex Light: 0: c:0 t:0 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:2 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z |
God of War: Chains of Olympus |
v1.14.4 |
2023-02-26 |
Unusual bezier/spline vtype: 1200c7be, morph: 0, bones: 4 |
God of War: Chains of Olympus |
v1.14.4 |
2023-02-26 |
Unknown GE command : 4f6f2131 |
God of War: Chains of Olympus |
v1.14.1 |
2023-02-26 |
UI scissor out of bounds in MainScreen: 66,0-1148,720 / 1604,719 |
God of War: Chains of Olympus |
v1.14.1 |
2023-02-26 |
UI scissor out of bounds in CwCheatScreen: 566,0-1038,720 / 1604,719 |
God of War: Chains of Olympus |
v1.14.1 |
2023-02-26 |
UI scissor out of bounds in GameSettingsScreen: 322,0-1270,720 / 1604,719 |
God of War: Chains of Olympus |
v1.13.2 |
2023-02-26 |
MIPSCompileOp: Invalid instruction 42bda1fc |
God of War: Chains of Olympus |
v1.13.2 |
2023-02-26 |
Jump to invalid address: 04f2d400 |
God of War: Chains of Olympus |
v1.13.2 |
2023-02-26 |
MIPSCompileOp: Invalid instruction 44226bd4 |
God of War: Chains of Olympus |
v1.13.2 |
2023-02-26 |
Jump to invalid address: 05f43b30 |