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 |
Hits |
Message |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca068f0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06990 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca069b0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06930 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06950 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06850 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06890 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca068b0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06a90 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06b70 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca069f0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06970 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06af0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06bf0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06a50 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06ab0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06ad0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06b10 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06a30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06a70 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06a10 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06b50 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06b30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06bd0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06c10 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06c50 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06bb0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06d50 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06df0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06b90 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06c70 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06c30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06d10 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06cd0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06cb0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06c90 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06d30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06d70 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06cf0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06dd0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06d90 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06e70 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06e10 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06db0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06e30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06e50 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06e90 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6ca06eb0 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction b6c44f30 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 6e64ca70 |
| PSP™ Update ver 6.60 |
v1.18.1 |
2025-03-02 |
3 |
MIPSCompileOp: Invalid instruction 46c00460 |
| Assassin's Creed: Bloodlines™ |
v1.18.1 |
2025-03-02 |
1 |
UNIMPL sceIoDevctl("usbpspcm:", 03415002, 09c1dca4, 4, 00000000, 0) |
| Assassin's Creed: Bloodlines™ |
v1.18.1 |
2025-03-02 |
1 |
UNIMPL sceIoDevctl("usbpspcm:", 03415001, 09c1dca4, 4, 00000000, 0) |
| Prince of Persia - Revelations |
v1.18.1 |
2025-03-02 |
1 |
80630006=sceAtracSetDataAndGetID(09834e40, 00000800): invalid RIFF header |
| Prince of Persia - Revelations |
v1.18.1 |
2025-03-02 |
1 |
80630006=sceAtracSetDataAndGetID(0977e0c0, 00000800): invalid RIFF header |
| Prince of Persia - Revelations |
v1.18.1 |
2025-03-02 |
1 |
80630006=sceAtracSetDataAndGetID(09aa7400, 00000800): invalid RIFF header |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4276e770 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 423eb69c |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42ae8aab |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 420d9f38 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42361d56 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4297af54 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4202eaab |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4120f89f |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
3 |
MIPSCompileOp: Invalid instruction 4120f8a0 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42017110 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 420d9f30 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 41a825d6 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
4 |
MIPSCompileOp: Invalid instruction 41286fa0 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
2 |
MIPSCompileOp: Invalid instruction 41eff427 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4287e710 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42893b10 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
2 |
MIPSCompileOp: Invalid instruction 42ed0aab |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 41eff4b9 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 423eb3f0 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42842047 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 40a2fc3f |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
2 |
MIPSCompileOp: Invalid instruction 42893b17 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4261b2ab |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 41286f0c |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42276aab |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
3 |
MIPSCompileOp: Invalid instruction 428bc5a6 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 40aa0000 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 40a2f340 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
2 |
MIPSCompileOp: Invalid instruction 40a2d180 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 4282d1a4 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 42c6a000 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 429cec17 |
| Grand Theft Auto: Vice City Stories |
v1.18.1 |
2025-03-02 |
2 |
MIPSCompileOp: Invalid instruction 4273d552 |
| みんなのGOLF ポータブル |
v1.18.1 |
2025-03-10 |
7 |
sceNetAdhocMatchingInit(32768) at 08952f54 |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
3 |
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 r10p0-00rel0 [Revision 96995].
01f34551:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34551:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldn |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 9f402450 |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.18.1 |
2025-03-02 |
1 |
MIPSCompileOp: Invalid instruction 004afd9f |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
3 |
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 r10p0-00rel0 [Revision 96995].
01f34055:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34055:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLigh |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
3 |
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 r10p0-00rel0 [Revision 96995].
07f34055:41400b09 HWX C T N LM Bones:6 Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 WScale 3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 07f34055:41400b09 HWX C T N LM Bones:6 Light: 0: c:1 t:1 1: c:1 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3 WScale 3
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 lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2.x, u_bone4) + mul(w2.y, u_bone5);
vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz;
vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ld |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
4 |
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 r10p0-00rel0 [Revision 96995].
07730551:40c00b09 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:3 WScale 3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 07730551:40c00b09 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:3 WScale 3
attribute mediump vec4 w1;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform 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 lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3);
vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz;
vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
4 |
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 r10p0-00rel0 [Revision 96995].
01b34051:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01b34051:00000f09 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:1 3: c:0 t:1 MatUp:3
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
gl_Position = outPos;
}
|
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
4 |
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 r10p0-00rel0 [Revision 96995].
07f34104:41000b09 HWX C T N LM Bones:5 Light: 0: c:0 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 07f34104:41000b09 HWX C T N LM Bones:5 Light: 0: c:0 t:1 1: c:0 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3
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 lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3) + mul(w2, u_bone4);
vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz;
vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - 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;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * specularColor * ldot ;
}
lightSum0.rgb += (u_lightambient2 * ambientColor.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
4 |
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 r10p0-00rel0 [Revision 96995].
01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01730155:00000f09 HWX C T N LM RevN Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 MatUp:3
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(-normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
ligh |
| God of War®: Ghost of Sparta |
v1.18.1 |
2025-03-30 |
4 |
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 r10p0-00rel0 [Revision 96995].
07f34151:40c00b09 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3
#version 100
// Driver: Mali-470 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 07f34151:40c00b09 HWX C T N LM Bones:4 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:0 3: c:0 t:1 MatUp:3 WScale 3
attribute mediump vec4 w1;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3);
vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz;
vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldno |