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 |
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a1d822 Tex TexAlpha LM Fog 2x TFuncMod AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
if (v.a < 0.002) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730111:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730111:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01030000:00000b1d HWX C T N LM Fog Tex Light: MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01834000:00000b1d HWX C T N LM Fog Tex Light: 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730111:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34111:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730115:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730400:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a1d822 Tex TexAlpha LM Fog 2x TFuncMod AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
if (v.a < 0.002) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01f34004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01710400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01f14004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform 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 vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34044:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01f34004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34004:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:0 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f14044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform 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 vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01330000:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:0 1: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01710044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730100:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34115:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscale |
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a0d822 Tex TexAlpha LM Fog 2x TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01f34115:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730044:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a0d822 Tex TexAlpha LM Fog 2x TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730115:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01710400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730100:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01330000:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00802 Tex LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01730400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01330000:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730044:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:1 1: c:0 t:1 2: c:0 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform 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 lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730100:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01730115:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00022 Tex TexAlpha Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 00000000:0000091c HWX C T Fog Tex
#version 100
precision highp float;
attribute vec3 position;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34115:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * li |
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01834000:00000b1d HWX C T N LM Fog Tex Light: 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:01a0d822 Tex TexAlpha LM Fog 2x StenToAlpha StenUniform TFuncMod AlphaTest >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
float aResult = texture2D(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 01f34115:00000f1d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:0 3: c:0 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform 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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(-normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse);
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * ldot;
lightSum0.rgb += (u_lightambient3 * color0.rgb + diffuse |
| God of War™: Ghost of Sparta |
v1.6.3 |
2023-06-08 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying highp float v_fogdepth;
varying highp vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = v.rgb * 2.0;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 01710400:00000b1d HWX C T N LM Fog Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
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;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying highp vec3 v_texcoord;
varying highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = vec3(0.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
1 |
Error in shader program link: info: L0007 Fragment shader uses a varying v_fogdepth that has not been declared in the vertex shader.
fs: 00000000:00200002 Tex Fog TFuncMod
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
2 |
Error in shader program link: info: L0007 Fragment shader uses a varying v_fogdepth that has not been declared in the vertex shader.
fs: 00000000:0021d022 Tex TexAlpha Fog TFuncMod AlphaTest0 >
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform sampler2D testtex;
in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
2 |
Error in shader program link: info: L0008 The fragment floating-point variable v_color0 does not match the vertex variable v_color0.
The qualifier does not match.
fs: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 >
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform sampler2D testtex;
flat in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000093c HWX C T Fog Tex Cull
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
2 |
Error in shader program link: info: L0008 The fragment floating-point variable v_color0 does not match the vertex variable v_color0.
The qualifier does not match.
fs: 00004000:00000002 Tex Flat TFuncMod
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
flat in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 00000000:0000093c HWX C T Fog Tex Cull
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
4 |
Error in shader program link: info: L0008 The fragment floating-point variable v_color0 does not match the vertex variable v_color0.
The qualifier does not match.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform sampler2D testtex;
in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
3 |
Error in shader program link: info: L0008 The fragment floating-point variable v_color0 does not match the vertex variable v_color0.
The qualifier does not match.
fs: 00000000:0001d002 Tex TFuncMod AlphaTest0 >
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform sampler2D testtex;
in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
4 |
Error in shader program link: info: L0008 The fragment floating-point variable v_color0 does not match the vertex variable v_color0.
The qualifier does not match.
fs: 00004000:0001d022 Tex TexAlpha Flat TFuncMod AlphaTest0 >
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform sampler2D testtex;
flat in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) DISCARD;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| PES 2013 |
v1.11.3 |
2023-06-08 |
4 |
Error in shader program link: info: L0007 Fragment shader uses a varying v_texcoord that has not been declared in the vertex shader.
L0007 Fragment shader uses a varying v_fogdepth that has not been declared in the vertex shader.
fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod
#version 320 es
#extension GL_ARM_shader_framebuffer_fetch : require
// Mali-G52 MC2 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Mali-G52 MC2 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
void main() {
v_color0 = color0;
vec4 outPos = mul(u_proj_through, vec4(position.xyz, 1.0));
gl_Position = outPos;
}
|
| NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.13.2 |
2023-06-08 |
1 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:00000802 Tex LM TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
fragColor0 = v;
}
vs: 01070000:00020b31 HWX T N LM Tex UVEnv Light: 0: c:0 t:0 MatUp:7 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
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 vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal)), 1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal))) * 0.5, 1.0);
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.13.2 |
2023-06-08 |
1 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:06000002 Tex StenToAlphaDual Sten0 TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 00000000:003e0330 HWX N Tex UVEnv 3: c:0 t:0 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos3;
uniform lowp vec4 u_matambientalpha;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
v_color0 = u_matambientalpha;
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal)), 1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal))) * 0.5, 1.0);
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.13.2 |
2023-06-08 |
1 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:0a200002 Tex Fog StenToAlphaDual Sten1 TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = vec4(v.rgb, 1.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 00000000:003e0334 HWX N Fog Tex UVEnv 3: c:0 t:0 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos3;
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;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out 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);
v_color0 = u_matambientalpha;
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal)), 1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal))) * 0.5, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.13.2 |
2023-06-08 |
1 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:06200002 Tex Fog StenToAlphaDual Sten0 TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
in lowp vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = vec4(v.rgb, 0.0);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 00000000:003e0334 HWX N Fog Tex UVEnv 3: c:0 t:0 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos3;
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;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
out 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);
v_color0 = u_matambientalpha;
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal)), 1.0 + (length(u_lightpos3) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos3), worldnormal))) * 0.5, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| God of War: Chains of Olympus |
v1.13.2 |
2023-06-08 |
2 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:02800802 Tex LM 2x StenToAlphaDual StenUniform TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 01010000:00120b39 HWX C T N LM Tex UVEnv Light: 0: c:0 t:0 1: c:0 t:0 MatUp:1 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform vec3 u_lightpos1;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal)), 1.0 + (length(u_lightpos1) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos1), worldnormal))) * 0.5, 1.0);
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| God of War: Chains of Olympus |
v1.13.2 |
2023-06-08 |
2 |
Error in shader program link: info: Vertex info
-----------
(0) : fatal error C9999: Can't convert to expr: 1f + @TMP0, 1f + @TMP1
fs: 00000000:02800802 Tex LM 2x StenToAlphaDual StenUniform TFuncMod
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 01030000:00120b39 HWX C T N LM Tex UVEnv Light: 0: c:0 t:0 1: c:0 t:0 MatUp:3 Cull
#version 410
#extension GL_EXT_gpu_shader4 : enable
// GeForce 410M/PCI/SSE2 - GLSL 410
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform vec3 u_lightpos1;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = splat3(0.0);
v_texcoord = vec3(u_uvscaleoffset.xy * vec2(1.0 + (length(u_lightpos0) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos0), worldnormal)), 1.0 + (length(u_lightpos1) == 0.0 ? worldnormal.z : dot(normalize(u_lightpos1), worldnormal))) * 0.5, 1.0);
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[0] = projZ * outPos.w + outPos.w;
gl_Position = outPos;
}
|
| Pro Evolution Soccer 2011 |
v1.6.3 |
2023-06-07 |
1 |
Error in shader program link: info: Link failed because of missing shader.
fs: 00000000:00000002 Tex TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| Pro Evolution Soccer 2011 |
v1.6.3 |
2023-06-07 |
1 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00004000:00000002 Tex Flat TFuncMod
#version 300 es
#extension GL_ARM_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| LEGO® Batman™: The Videogame |
v1.6.3 |
2023-06-07 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0020d022 Tex TexAlpha Fog TFuncMod AlphaTest >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 00000000:0005095c HWX C T Fog Tex TexProjUV UVMtx
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
in 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 lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = (u_texmtx * vec4(texcoord.xy, 0.0, 1.0)).xyz * vec3(u_uvscaleoffset.xy, 1.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| LEGO® Batman™: The Videogame |
v1.6.3 |
2023-06-07 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:00000382 Tex TClampST TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform vec4 u_texclamp;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
float mymod(float a, float b) { return a - b * floor(a / b); }
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);
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| NBA2K13 |
v1.6.3 |
2023-06-05 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0000f000 AlphaTest >=
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
fragColor0 = v;
}
vs: 01010000:00000900 HWX T Light: MatUp:1
#version 300 es
precision highp float;
in vec3 position;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
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 vec4 u_depthRange;
out lowp vec4 v_color0;
vec4 depthRoundZVP(vec4 v) {
float z = v.z / v.w;
z = z * u_depthRange.x + u_depthRange.y;
z = floor(z);
z = (z - u_depthRange.z) * u_depthRange.w;
return vec4(v.x, v.y, z * v.w, v.w);
}
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = depthRoundZVP(u_proj * viewPos);
lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
}
|
| NBA2K13 |
v1.6.3 |
2023-06-05 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0000f000 AlphaTest >=
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
fragColor0 = v;
}
vs: 01010000:00000908 HWX C T Light: MatUp:1
#version 300 es
precision highp float;
in vec3 position;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
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 vec4 u_depthRange;
out lowp vec4 v_color0;
vec4 depthRoundZVP(vec4 v) {
float z = v.z / v.w;
z = z * u_depthRange.x + u_depthRange.y;
z = floor(z);
z = (z - u_depthRange.z) * u_depthRange.w;
return vec4(v.x, v.y, z * v.w, v.w);
}
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = depthRoundZVP(u_proj * viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
}
|
| eFootball Chelito 19 |
v1.6.2 |
2023-06-05 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00004000:0001d002 Tex Flat TFuncMod AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
varying vec4 v_color0;
varying highp vec3 v_texcoord;
void main() {
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
gl_FragColor = v;
}
vs: 40000000:00000012 THR Tex Flat
#version 100
precision highp float;
attribute vec4 position;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj_through;
varying lowp vec4 v_color0;
varying highp vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| eFootball Chelito 19 |
v1.6.2 |
2023-06-05 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:0001d000 AlphaTest0 >
#version 100
precision lowp float;
uniform sampler2D testtex;
varying vec4 v_color0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) discard;
gl_FragColor = v;
}
vs: 00000000:0000000a THR C
#version 100
precision highp float;
attribute vec4 position;
attribute lowp vec4 color0;
uniform mat4 u_proj_through;
varying lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| God of War®: Ghost of Sparta |
v1.15.4 |
2023-06-05 |
2 |
Error in shader program link: info: L0001 The fragment shader uniform floating-point u_texelDelta does not match the vertex shader uniform floating-point u_texelDelta.
The precision does not match.
fs: postshader
#version 310 es
precision mediump float;
precision highp int;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
uniform vec2 u_texelDelta;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
vec3 processGAUSS_S(inout vec3 color)
{
float GAUSSS_SPAN_MAX = 1.5;
float GAUSSS_KERNEL_SIZE = 5.0;
vec2 offsetS = (u_pixelDelta * GAUSSS_SPAN_MAX) / vec2(GAUSSS_KERNEL_SIZE);
vec3 cGaussS0 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -2.0))).xyz * 1.0;
vec3 cGaussS1 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0))).xyz * 3.0;
vec3 cGaussS2 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, -1.0))).xyz * 8.0;
vec3 cGaussS3 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, -1.0))).xyz * 3.0;
vec3 cGaussS4 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-2.0, 0.0))).xyz * 1.0;
vec3 cGaussS5 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 0.0))).xyz * 8.0;
vec3 cGaussS6 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0))).xyz * 10.0;
vec3 cGaussS7 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0, 0.0))).xyz * 8.0;
vec3 cGaussS8 = texture(sampler0, v_texcoord0 + (offsetS * vec2(2.0, 0.0))).xyz * 1.0;
vec3 cGaussS9 = texture(sampler0, v_texcoord0 + (offsetS * vec2(-1.0, 1.0))).xyz * 3.0;
vec3 cGaussS10 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 1.0))).xyz * 8.0;
vec3 cGaussS11 = texture(sampler0, v_texcoord0 + (offsetS * vec2(1.0))).xyz * 3.0;
vec3 cGaussS12 = texture(sampler0, v_texcoord0 + (offsetS * vec2(0.0, 2.0))).xyz * 1.0;
color = (((((((((((cGaussS0 + cGaussS1) + cGaussS2) + cGaussS3) + cGaussS4) + cGaussS5) + cGaussS6) + cGaussS7) + cGaussS8) + cGaussS9) + cGaussS10) + cGaussS11) + cGaussS12;
color /= vec3(58.0);
return color;
}
vec3 processSHADEBOOST(inout vec3 color)
{
float sat = 1.89999997615814208984375;
float brt = 0.699999988079071044921875;
float con = 1.2000000476837158203125;
float AvgLumR = 1.5;
float AvgLumG = 1.5;
float AvgLumB = 1.5;
if (SEPIA == 1)
{
sat = 0.00999999977648258209228515625;
brt = 1.75;
con = 1.0;
AvgLumR = 0.439999997615814208984375;
AvgLumG = 0.2599999904632568359375;
AvgLumB = 0.07999999821186065673828125;
}
if (GRAYSCALE == 1)
{
sat = 0.0;
brt = 1.0;
con = 1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (NEGATIVE == 1)
{
sat = 1.0;
brt = 1.0;
con = -1.0;
AvgLumR = 1.0;
AvgLumG = 1.0;
AvgLumB = 1.0;
}
if (PSPCOLORS == 1)
{
sat = 1.0;
brt = 1.0;
con = 1.0;
AvgLumR = 0.959299981594085693359375;
AvgLumG = 1.0738999843597412109375;
AvgLumB = 1.46039998531341552734375;
}
vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB);
vec3 conRGB = vec3(0.5);
vec3 brtColor = color * brt;
vec3 intensity = vec3(((brtColor.x * 0.2125000059604644775390625) + (brtColor.y * 0.7153999805450439453125)) + (brtColor.z * 0.07209999859333038330078125));
vec3 satColor = mix(intensity, brtColor, vec3(sat));
vec3 conColor = mix(conRGB, satColor, vec3(con));
vec3 mixColor = AvgLumin * conColor;
color = mixColor;
return color;
}
void main()
{
SEPIA = 0;
GRAYSCALE = 0;
NEGATIVE = 0;
PSPCOLORS = 5;
vec3 color = texture(sampler0, v_texcoord0).xyz;
vec3 param = color;
vec3 _311 = processGAUSS_S(param);
color = _311;
vec3 param_1 = color;
vec3 _314 = processSHADEBOOST(param_1);
color = _314;
_RES |
| FIFA 21 Beta T. Bendezu & Alexander |
v1.6.3 |
2023-06-05 |
1 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 40000000:00000914 HWX T Fog Tex Flat
#version 100
precision highp float;
attribute vec3 position;
attribute vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
varying lowp vec4 v_color0;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = u_matambientalpha;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| FIFA 14 |
v1.6.3 |
2023-06-04 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:0000038e Tex TClampST TFuncRepl
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform vec4 u_texclamp;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
float mymod(float a, float b) { return a - b * floor(a / b); }
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.a);
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| とある魔術の禁書目録 |
v1.12.2 |
2023-06-03 |
1 |
Error in shader program link: info: (unknown reason)
fs: thin3d
#version 300 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
|
| とある魔術の禁書目録 |
v1.12.2 |
2023-06-03 |
1 |
Error in shader program link: info: (unknown reason)
fs: thin3d
#version 300 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0) * oColor0; }
vs: thin3d
|
| PES 2014 |
v1.9.0 |
2023-06-02 |
1 |
Error in shader program link: info: L0100 GLSL allows exactly two attached shaders (one of each type) per program
fs: thin3d
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
| FIFA 13 |
v1.6.3 |
2023-06-01 |
1 |
Error in shader program link: info: Link failed because of missing vertex shader.
fs: 00000000:0000d000 AlphaTest >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
fragColor0 = v;
}
vs: 00000000:00000108 HWX C
#version 300 es
precision highp float;
in vec3 position;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
}
|
| MLB 11 The Show™ |
v1.6.3 |
2023-06-01 |
1 |
Error in shader program link: info:
fs: 00000000:00800382 Tex 2x TClampST TFuncMod
#version 300 es
precision lowp float;
uniform sampler2D tex;
uniform vec4 u_texclamp;
in vec4 v_color0;
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 = v.rgb * 2.0;
fragColor0 = v;
}
vs: 00000000:0000001a THR C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| MLB 11 The Show™ |
v1.6.3 |
2023-06-01 |
1 |
Error in shader program link: info:
fs: 00000000:00800002 Tex 2x TFuncMod
#version 300 es
precision lowp float;
uniform sampler2D tex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
v.rgb = v.rgb * 2.0;
fragColor0 = v;
}
vs: 00000000:00000918 HWX C T Tex
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
| STAR OCEAN: First Departure |
v1.15.4 |
2023-06-01 |
1 |
Error in shader program link: info: Error: output v_color0 interpolation mismatch with other stage.
Error: Input Output Mismatch.
fs: 00184000:00000002 Tex Flat TFuncMod
#version 320 es
#extension GL_EXT_shader_framebuffer_fetch : require
// Driver: Adreno (TM) 610 - GLSL 320
#define DISCARD discard
precision lowp float;
precision highp int;
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00184000:00000002 Tex Flat TFuncMod
uniform sampler2D tex;
uniform float u_texNoAlpha;
uniform float u_texMul;
flat in lowp vec4 v_color0;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
t.a = max(t.a, u_texNoAlpha);
vec4 v = p * t;
v.rgb *= u_texMul;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 320 es
// Driver: Adreno (TM) 610 - GLSL 320
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:0000000a THR C
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;
}
|
| Dragon Ball Z: Tenkaichi Tag Team |
v1.6.3 |
2025-04-23 |
8 |
Error in shader program link: info: Variable u_texelDelta has unmatched precision qualifier in different shaders
fs: postshader
//Note : Recommend to use PPSSPP v1.1.1-183-gb411fc0 or newer for full functionality, there were some bugs in earlier versions.
//Note2 : Upscaling, smoothing and sharpening filters are not set to be mixed between each other since the results are pointless(they counter each other).
// Only last one applies, so pick just one of them, mess around with it's settings and add other effects as needed.
//======================================================================================================================================================================
//SMOOTHING FILTERS: //If you love smooth graphics ~ those are also great for downscaling - to do that, you need to use higher rendering res than your display res
//================
#define FXAA 0 //ON:1/OFF:0 /default FXAA, orginal info below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering
#define Gsmoothing 3.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
//SHARPENING FILTERS: //if you need very sharp image, add lots of aliasing
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 7.5 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 0 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
//UPSCALING FILTERS: //To use those, you have to set rendering res to smaller than window/display size(x1 for best results) and screen scaling filter to "nearest"
//Starting from v1.1.1-28-g70e9979 you can also add Upscaling=True to ini file(check example) to do it automatically
//================
#define xBR 1 //ON:1/OFF:0 /5xBR upscale, nice for 2D games especially those that might be buggy with higher rendering res, initially made by Hyllian - license below
#define VariantB 0 //ON:1/OFF:0 /slightly less effect on fonts, dots and other small details
//================
#define xHQ 0 //ON:1/OFF:0 same as 4xHQ in PPSSPP, but actually using output resolution
#define scaleoffset 0.75 //Default: 0.75 /you can tweek it between 0.5 and 1.0, Note: to little = no effect, to high = ugliness
//================
//OTHER FILTERS: //Most effects from here on can be fully mixed without loosing previous effects. Exceptions: Natural Colors, Advanced Cartoon
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define MIKU 0 //Hatsune<3 this is an optional bloom filter for all those pale anime faces which get white otherwise:P tested on Miku in white dress
#define samples 3 //Default: 4 /higher = more glow, worse performance
#define quality 0.22 //Default: 0.18 /lower = smaller glow, better quality
#define Bpower 1.0 //Default: 1.0 /amount of bloom mixed
//================
#define COLORED 1 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.5 //Default: 0.5 /strenght of the effect
//================
#define NATURALC 0 //ON:1/OFF:0 /by popular demand, natular colors, note: this shader can't be fully mixed with smoothing/sharpening/upscaling effects
#define ncpower 0.5 //Default:0.5 / higher = more natural color, check note line above
//================
#define ACARTOON 0 / |
| Dragon Ball Z: Tenkaichi Tag Team |
v1.6.3 |
2025-03-02 |
6 |
Error in shader program link: info: Link Error: Fragment shader was not successfully compiled.
fs: postshader
// PPSSPP: Grabbed from Processing and slightly modified.
// FXAA shader, GLSL code adapted from:
// http://horde3d.org/wiki/index.php5?title=Shading_Technique_-_FXAA
// Whitepaper describing the technique:
// http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf
//======================================================================================================================================================================
//Extra options:
#define FXAA 0 //ON:1/OFF:0 /default FXAA, info above
//there's no extra config for fxaa here since from what I checked this simple fxaa version offers only more blur or less aa;c, you can check it yourself below
//================
#define GAUSS_SQ 0 //ON:1/OFF:0 /full square gauss filtering, don't use with either FXAA nor sharpen filters
#define Gsmoothing 3.5 //Default: 3.5 /increase for smoother(blurry) graphics
//================
#define GAUSS_S 0 //ON:1/OFF:0 /simple gauss filtering by Bigpet, slightly different from above /you can find standalone in https://github.com/hrydgard/ppsspp/issues/7242
//================
#define MIKU 0 //Hatsune<3 this is an optional filter for all those pale anime faces which get white with bloom/colored:P tested on Miku in white dress
//================
#define BLOOM 0 //ON:1/OFF:0 /bloom implementation from "my heroics" blog http://myheroics.wordpress.com/2008/09/04/glsl-bloom-shader/
#define samples 4 //Default: 4 /higher = more glow, worser performance
#define quality 0.25 //Default: 0.25 /lower = smaller glow, better quality
#define factor 0.002 //Default: 0.002 /just an extra tweak for the bloom slightly higher values might look better in some cases, but too much can cause artifacts
#define Bpower 0.5 //Default: 0.5 /amount of bloom mixed
//================
#define COLORED 0 //ON:1/OFF:0 /coloring part of KrossX Overlay Bloom shader from here http://www.mediafire.com/krossx#ste5pa5ijfa0o
#define Cpower 0.5 //Default: 0.5 /amount of effect mixed
//================
#define SHARPEN 0 //ON:1/OFF:0 /a simple sharpen filter, might be counterproductive to FXAA and BLOOM, hence disabled by default
#define value 7.5 //Default: 7.5 /higher = more visible effect
//================
#define S_COM_V2 1 //Sharpen Complex v2 from https://github.com/mpc-hc similar to above in effect, maybe more accurate
#define S_val0 5.0 //Default: 5.0 /higher ~ increases sharpness /negative ~ can add extra blurr/strange effect
//================
#define SHADEBOOST 0 //ON:1/OFF:0 /color correction from GSdx/pcsx2 plugin, initially taken from http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=21057
#define saturation 1.0 //Default: 1.0 //negative will look like inverted colors shader
#define brightness 1.0 //Default: 1.0
#define contrast 1.0 //Default: 1.0 //negative will be... well negative;p
#define red 1.0 //Default: 1.0
#define green 1.0 //Default: 1.0
#define blue 1.0 //Default: 1.0
//Shadeboost presets: //Shadeboost must be activated, presets override options above
int SEPIA = 0; //Moody coolors:)
int GRAYSCALE = 0; //Just for lols?
int NEGATIVE = 0; //As above
int PSPCOLORS = 0; //Makes the colors as on older PSP screens(colder)
//All presets are simple switch ON:1/OFF:0,
//================
#define GAMMA 0 //simple gamma function after reading http://filmicgames.com/archives/299
#define correction 1.0 //Default: 1.0
//================
#define SCANLINES 0 //Ugly lines which never existed on psp, yet are popular among some people(I had to, sorry:P)
#define SLsize 1 //Default: 1 /basically sets how wide each line is, from 1 to looks_weird_when_too_high
#define SLcolor 2.8 //Default: 2.8 /brightens screen to compensate for dark lines
#defi |
| God of War®: Ghost of Sparta |
v1.14.4 |
2023-05-31 |
1 |
Error in shader program link: info: (unknown reason)
fs: 00180000:02a00822 Tex TexAlpha LM Fog 2x StenToAlphaDual StenUniform TFuncMod
#version 400
// Driver: Intel(R) HD Graphics 4000 - GLSL 400
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00180000:02a00822 Tex TexAlpha LM Fog 2x StenToAlphaDual StenUniform TFuncMod
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
out vec4 fragColor1;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
fragColor1 = vec4(0.0, 0.0, 0.0, v.a);
}
vs: 00000000:00000039 C LM Tex Cull
#version 400
// Driver: Intel(R) HD Graphics 4000 - GLSL 400
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000039 C LM Tex Cull
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
in lowp vec3 color1;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_color1 = color1;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
if (u_depthRange.y - u_depthRange.x >= 1.0) {
gl_ClipDistance[0] = outPos.w + outPos.z;
} else if (u_depthRange.x + u_depthRange.y <= 65534.0) {
gl_ClipDistance[0] = outPos.w - outPos.z;
} else {
gl_ClipDistance[0] = 0.0;
}
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[1] = projZ * outPos.w + outPos.w + 0.000001;
gl_Position = outPos;
}
|
| God of War®: Ghost of Sparta |
v1.14.4 |
2023-05-31 |
1 |
Error in shader program link: info: (unknown reason)
fs: 00180000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 400
// Driver: Intel(R) HD Graphics 4000 - GLSL 400
#define DISCARD discard
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00180000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
in lowp vec4 v_color0;
in lowp vec3 v_color1;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 00000000:00000039 C LM Tex Cull
#version 400
// Driver: Intel(R) HD Graphics 4000 - GLSL 400
#define gl_VertexIndex gl_VertexID
#define lowp
#define mediump
#define highp
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 00000000:00000039 C LM Tex Cull
in vec4 position;
in highp float fog;
in vec2 texcoord;
in lowp vec4 color0;
in lowp vec3 color1;
uniform lowp float u_rotation;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
out lowp vec4 v_color0;
out lowp vec3 v_color1;
out mediump vec3 v_texcoord;
out mediump float v_fogdepth;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
v_color1 = color1;
v_fogdepth = fog;
vec4 pos = position;
vec4 outPos = pos;
if (u_depthRange.y - u_depthRange.x >= 1.0) {
gl_ClipDistance[0] = outPos.w + outPos.z;
} else if (u_depthRange.x + u_depthRange.y <= 65534.0) {
gl_ClipDistance[0] = outPos.w - outPos.z;
} else {
gl_ClipDistance[0] = 0.0;
}
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMin.w <= 0.0 || projZ * outPos.w > -outPos.w) {
if ((projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y) || (projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y)) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
if (u_cullRangeMin.w <= 0.0) {
if (projPos.z < u_cullRangeMin.z || projPos.z > u_cullRangeMax.z) {
outPos.xyzw = u_cullRangeMax.wwww;
}
}
gl_ClipDistance[1] = projZ * outPos.w + outPos.w + 0.000001;
gl_Position = outPos;
}
|
| Prince of Persia The Forgotten Sands™ |
v1.9.0 |
2023-05-31 |
1 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: thin3d
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
| NARUTO SHIPPUDEN: Ultimate Ninja Impact |
v1.15.4 |
2023-05-30 |
4 |
Error in shader program link: info: (unknown reason)
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
/*
Hyllian's xBR-lv2 Shader Accuracy (tweak by guest.r)
Copyright (C) 2011-2015 Hyllian - [email protected]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Incorporates some of the ideas from SABR shader. Thanks to Joshua Street.
*/
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
#define CornerA 0 //ON:1/OFF:0 / A, B, C, D are just different variants of corner rounding
#define CornerB 0 //ON:1/OFF:0 / activate only one
#define CornerD 0 //ON:1/OFF:0
// CornerC //used as default if none of the above is defined
const float XBR_SCALE = 3.0;
const float lv2_cf = 2.0;
const float coef = 2.0;
const vec3 rgbw = vec3(14.352, 28.176, 5.472);
const vec4 eq_threshold = vec4(15.0, 15.0, 15.0, 15.0);
const vec4 Ao = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bo = vec4( 1.0, 1.0, -1.0,-1.0 );
const vec4 Co = vec4( 1.5, 0.5, -0.5, 0.5 );
const vec4 Ax = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bx = vec4( 0.5, 2.0, -0.5,-2.0 );
const vec4 Cx = vec4( 1.0, 1.0, -0.5, 0.0 );
const vec4 Ay = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 By = vec4( 2.0, 0.5, -2.0,-0.5 );
const vec4 Cy = vec4( 2.0, 0.0, -1.0, 0.5 );
const vec4 Ci = vec4(0.25, 0.25, 0.25, 0.25);
uniform sampler2D sampler0;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
varying vec2 v_texcoord0;
// Difference between vector components.
vec4 df(vec4 A, vec4 B) {
return vec4(abs(A-B));
}
// Compare two vectors and return their components are different.
vec4 diff(vec4 A, vec4 B) {
return vec4(notEqual(A, B));
}
// Determine if two vector components are equal based on a threshold.
vec4 eq(vec4 A, vec4 B) {
return (step(df(A, B), eq_threshold));
}
// Determine if two vector components are NOT equal based on a threshold.
vec4 neq(vec4 A, vec4 B) {
return (vec4(1.0, 1.0, 1.0, 1.0) - eq(A, B));
}
float c_df(vec3 c1, vec3 c2) {
vec3 df = abs(c1 - c2);
return df.r + df.g + df.b;
}
void main() {
bool upscale = u_texelDelta.x > (1.6 * u_pixelDelta.x);
vec3 res = texture2D(sampler0, v_texcoord0.xy).xyz;
// Let's skip the whole scaling if output size smaller than 1.6x of input size
if (upscale) {
vec4 edri, edr, edr_l, edr_u, px; // px = pixel, edr = edge detection rule
vec4 irlv0, irlv1, irlv2l, irlv2u;
vec4 fx, fx_l, fx_u; // inequations of straight lines.
vec2 pS = 1.0 / u_texelDelta.xy;
vec2 fp = fract(v_texcoord0.xy*pS.xy);
vec2 TexCoord_0 = v_texcoord0.xy-fp*u_pixelDelta.xy;
vec2 dx = vec2(u_texelDelta.x,0.0);
vec2 dy = vec2(0.0,u_texelDelta.y);
vec2 y2 = dy + dy; vec2 x2 = dx + dx;
vec4 delta = vec4(1.0/XBR_SCALE, 1.0/XBR_SCALE, 1.0/XBR_SCALE, 1.0/XBR_SCALE);
vec4 delta_l = vec4(0.5/XBR_SCALE, 1.0/XBR_SCALE, 0.5/XBR_SCALE, 1.0/XBR_SCALE);
vec4 delta_u = delta_l.yxwz;
vec3 A = texture2D(sampler0, TexCoord_0 -dx - |
| eFootball Chelito 19 |
v1.13.2 |
2023-05-30 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: thin3d
#version 320 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
|
| eFootball Chelito 19 |
v1.13.2 |
2023-05-30 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: thin3d
#version 320 es
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0) * oColor0; }
vs: thin3d
|
| eFootball Chelito 19 |
v1.6.3 |
2023-09-12 |
2 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in highp float v_fogdepth;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:0000091c HWX C T Fog Tex Flat
#version 300 es
precision highp float;
in vec3 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
flat out lowp vec4 v_color0;
out highp vec3 v_texcoord;
out highp float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
v_color0 = color0;
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
}
|
| PES 2014 |
v1.6.3 |
2023-05-29 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
Link Error: Fragment shader is missing.
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in highp vec3 v_texcoord;
inout vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 01770000:00000b10 HWX T N Tex Light: 0: c:0 t:0 1: c:0 t:0 2: c:0 t:0 MatUp:7
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out highp vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0);
vec3 toLight;
lowp vec3 diffuse;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse);
toLight = u_lightpos2;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * ldot;
lightSum0.rgb += (u_lightambient2 * u_matambientalpha.rgb + diffuse);
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
| NARUTO: Ultimate Ninja Heroes |
v1.6.3 |
2023-05-28 |
1 |
Error in shader program link: info:
fs: 00000000:0000d002 Tex TFuncMod AlphaTest >
#version 300 es
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
float aResult = texture(testtex, vec2(v.a * 0.996094 + 0.001953, 0)).a;
if (aResult < 0.5) discard;
fragColor0 = v;
}
vs: 01070000:00000b10 HWX T N Tex Light: MatUp:7
#version 300 es
precision highp float;
in vec3 position;
in mediump vec3 normal;
in vec2 texcoord;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
gl_Position = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0);
mediump float ldot;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
}
|
| DRAGON BALL Z SHIN BUDOKAI ANOTHER ROAD |
v1.15.3 |
2023-05-28 |
6 |
Error in shader program link: info: (unknown reason)
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
/*
Hyllian's 5xBR v3.5a Shader
Copyright (C) 2011 Hyllian/Jararaca - [email protected]
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
uniform sampler2D sampler0;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
varying vec2 v_texcoord0;
const float coef = 2.0;
const vec3 rgbw = vec3(16.163, 23.351, 8.4772);
const vec4 Ao = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bo = vec4( 1.0, 1.0, -1.0,-1.0 );
const vec4 Co = vec4( 1.5, 0.5, -0.5, 0.5 );
const vec4 Ax = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bx = vec4( 0.5, 2.0, -0.5,-2.0 );
const vec4 Cx = vec4( 1.0, 1.0, -0.5, 0.0 );
const vec4 Ay = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 By = vec4( 2.0, 0.5, -2.0,-0.5 );
const vec4 Cy = vec4( 2.0, 0.0, -1.0, 0.5 );
vec4 df(vec4 A, vec4 B) {
return abs(A-B);
}
vec4 weighted_distance(vec4 a, vec4 b, vec4 c, vec4 d, vec4 e, vec4 f, vec4 g, vec4 h) {
return (df(a,b) + df(a,c) + df(d,e) + df(d,f) + 4.0*df(g,h));
}
void main(){
bool upscale = u_texelDelta.x > (1.6 * u_pixelDelta.x);
vec3 res = texture2D(sampler0, v_texcoord0.xy).xyz;
// Let's skip the whole scaling if output size smaller than 1.6x of input size
if (upscale) {
bvec4 edr, edr_left, edr_up, px; // px = pixel, edr = edge detection rule
bvec4 interp_restriction_lv1, interp_restriction_lv2_left, interp_restriction_lv2_up;
bvec4 nc; // new_color
bvec4 fx, fx_left, fx_up; // inequations of straight lines.
vec2 pS = 1.0 / u_texelDelta.xy;
vec2 fp = fract(v_texcoord0.xy*pS.xy);
vec2 TexCoord_0 = v_texcoord0.xy-fp*u_pixelDelta.xy;
vec2 dx = vec2(u_texelDelta.x,0.0);
vec2 dy = vec2(0.0,u_texelDelta.y);
vec2 y2 = dy + dy; vec2 x2 = dx + dx;
vec3 A = texture2D(sampler0, TexCoord_0 -dx -dy ).xyz;
vec3 B = texture2D(sampler0, TexCoord_0 -dy ).xyz;
vec3 C = texture2D(sampler0, TexCoord_0 +dx -dy ).xyz;
vec3 D = texture2D(sampler0, TexCoord_0 -dx ).xyz;
vec3 E = texture2D(sampler0, TexCoord_0 ).xyz;
vec3 F = texture2D(sampler0, TexCoord_0 +dx ).xyz;
vec3 G = texture2D(sampler0, TexCoord_0 -dx +dy ).xyz;
vec3 H = texture2D(sampler0, TexCoord_0 +dy ).xyz;
vec3 I = texture2D(sampler0, TexCoord_0 +dx +dy ).xyz;
vec3 A1 = texture2D(sampler0, TexCoord_0 -dx -y2).xyz;
vec3 C1 = texture2D(sampler0, TexCoord_0 +dx -y2).xyz;
vec3 A0 = texture2D(sampler0, TexCoord_0 -x2 -dy).xyz;
vec3 G0 = texture2D(sampler0, TexCoord_0 -x2 +dy).xyz;
vec3 C4 = texture2D(sampler0, TexCoord_0 +x2 -dy).xyz;
vec3 I4 = texture2D(sampler0, TexCoord_0 +x2 +dy).xyz;
vec3 G5 = texture2D(sampler0, TexCoord_0 -dx +y2).xyz;
vec3 I5 = texture2D(sampler0, TexCoord_0 +dx +y2).xyz;
vec3 B1 = texture2D(sampler0, TexCoord_0 -y2).xyz;
vec3 D0 = texture2D(sampler0, TexCoord_0 -x2 ).xyz;
vec3 H5 = texture2D(sampler0, TexCoord_0 +y2).xyz;
vec3 F4 = texture2D(sampler0, TexCoord_0 +x2 ).xyz;
vec4 b = vec4(dot(B ,rgbw), dot(D ,rgbw), dot(H ,rgbw), dot(F ,rgbw));
vec4 c = vec4(dot(C ,rgbw), dot(A ,rgbw), dot(G ,rgbw), dot(I ,rgbw));
vec4 d = vec4(b.y, b.z, b.w, b.x);
vec4 e = vec4(dot(E,rgbw));
vec4 f = vec4(b.w, b.x, b.y, b.z);
vec4 g = vec4(c.z, c.w, c.x, c.y);
vec4 h = vec |
| NARUTO: Ultimate Ninja Heroes |
v1.9.0 |
2023-05-28 |
2 |
Error in shader program link: info: Link Error: Fragment shader is missing.
fs: thin3d
#ifdef GL_ES
precision mediump float;
#endif
#ifdef GL_ES
precision lowp float;
#endif
#if __VERSION__ >= 130
#define varying in
#define texture2D texture
#define gl_FragColor fragColor0
out vec4 fragColor0;
#endif
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform sampler2D Sampler0;
void main() { gl_FragColor = texture2D(Sampler0, oTexCoord0).zyxw * oColor0; }
vs: thin3d
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
oColor0 = Color0;
oTexCoord0 = TexCoord0;
}
|
| eFootball Chelito 19 |
v1.6.3 |
2023-05-28 |
1 |
Error in shader program link: info:
fs: 00004000:00200022 Tex TexAlpha Fog Flat TFuncMod
#version 300 es
precision lowp float;
uniform sampler2D tex;
flat in vec4 v_color0;
uniform vec3 u_fogcolor;
in mediump float v_fogdepth;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
fragColor0 = v;
}
vs: 40000000:00000014 Fog Tex Flat
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
uniform highp vec2 u_fogcoef;
flat 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 = position.w;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
| eFootball Chelito 19 |
v1.6.3 |
2026-11-07 |
7 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00000000:0001d000 AlphaTest0 >
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
uniform sampler2D testtex;
in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:0000000a THR C
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|
| God of War®: Ghost of Sparta |
v1.7.4 |
2023-05-27 |
1 |
Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 07f34551:41000b1d HWX C T N LM Fog Tex Bones:5 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 (failed)
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute mediump float w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular |
| God of War®: Ghost of Sparta |
v1.7.4 |
2023-05-27 |
1 |
Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 07f34551:41000b1d HWX C T N LM Fog Tex Bones:5 Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 (failed)
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute mediump float w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2 * u_bone4;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(no |
| God of War®: Ghost of Sparta |
v1.7.4 |
2023-05-27 |
1 |
Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking
fs: 00000000:00a00822 Tex TexAlpha LM Fog 2x TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = v;
}
vs: 07f34511:41400b1d HWX C T N LM Fog Tex Bones:6 Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 (failed)
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute mediump vec2 w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform mat4 u_bone5;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
|
| God of War®: Ghost of Sparta |
v1.7.4 |
2023-05-27 |
1 |
Error in shader program link: info: L0101 All attached shaders must be compiled prior to linking
fs: 00000000:01a00802 Tex LM Fog 2x StenToAlpha StenUniform TFuncMod
#version 100
precision lowp float;
uniform sampler2D tex;
uniform float u_stencilReplaceValue;
varying vec4 v_color0;
varying vec3 v_color1;
uniform vec3 u_fogcolor;
varying mediump float v_fogdepth;
varying mediump vec3 v_texcoord;
void main() {
vec4 s = vec4(v_color1, 0.0);
vec4 t = texture2D(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a) + s;
v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0);
float fogCoef = clamp(v_fogdepth, 0.0, 1.0);
v = mix(vec4(u_fogcolor, v.a), v, fogCoef);
gl_FragColor = vec4(v.rgb, u_stencilReplaceValue);
}
vs: 07f34511:41400b1d HWX C T N LM Fog Tex Bones:6 Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 WScale 3 (failed)
#version 100
precision highp float;
attribute mediump vec4 w1;
attribute mediump vec2 w2;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform mat4 u_bone4;
uniform mat4 u_bone5;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
mat4 skinMatrix = w1.x * u_bone0 + w1.y * u_bone1 + w1.z * u_bone2 + w1.w * u_bone3 + w2.x * u_bone4 + w2.y * u_bone5;
vec3 skinnedpos = (skinMatrix * vec4(position, 1.0)).xyz ;
vec3 worldpos = (u_world * vec4(skinnedpos, 1.0)).xyz;
mediump vec3 skinnednormal = (skinMatrix * vec4(normal, 0.0)).xyz ;
mediump vec3 worldnormal = normalize((u_world * vec4(skinnednormal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1;
ldot = max(dot(toLight, worldnormal), 0.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) );
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = max(dot(toLight, worldnormal), 0.0);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * ldot;
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * (pow(ldot, u_matspecular.a) * lightScale);
lightS |
| eFootball Chelito 19 |
v1.14.4 |
2023-08-06 |
5 |
Error in shader program link: info: (unknown reason)
fs: postshader
#ifdef GL_ES
precision mediump float;
#endif
/*
Hyllian's xBR-lv2 Shader Accuracy (tweak by guest.r)
Copyright (C) 2011-2015 Hyllian - [email protected]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Incorporates some of the ideas from SABR shader. Thanks to Joshua Street.
*/
#ifdef GL_ES
precision mediump float;
precision mediump int;
#endif
#define CornerA 0 //ON:1/OFF:0 / A, B, C, D are just different variants of corner rounding
#define CornerB 0 //ON:1/OFF:0 / activate only one
#define CornerD 0 //ON:1/OFF:0
// CornerC //used as default if none of the above is defined
const float XBR_SCALE = 3.0;
const float lv2_cf = 2.0;
const float coef = 2.0;
const vec3 rgbw = vec3(14.352, 28.176, 5.472);
const vec4 eq_threshold = vec4(15.0, 15.0, 15.0, 15.0);
const vec4 Ao = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bo = vec4( 1.0, 1.0, -1.0,-1.0 );
const vec4 Co = vec4( 1.5, 0.5, -0.5, 0.5 );
const vec4 Ax = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 Bx = vec4( 0.5, 2.0, -0.5,-2.0 );
const vec4 Cx = vec4( 1.0, 1.0, -0.5, 0.0 );
const vec4 Ay = vec4( 1.0, -1.0, -1.0, 1.0 );
const vec4 By = vec4( 2.0, 0.5, -2.0,-0.5 );
const vec4 Cy = vec4( 2.0, 0.0, -1.0, 0.5 );
const vec4 Ci = vec4(0.25, 0.25, 0.25, 0.25);
uniform sampler2D sampler0;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
varying vec2 v_texcoord0;
// Difference between vector components.
vec4 df(vec4 A, vec4 B) {
return vec4(abs(A-B));
}
// Compare two vectors and return their components are different.
vec4 diff(vec4 A, vec4 B) {
return vec4(notEqual(A, B));
}
// Determine if two vector components are equal based on a threshold.
vec4 eq(vec4 A, vec4 B) {
return (step(df(A, B), eq_threshold));
}
// Determine if two vector components are NOT equal based on a threshold.
vec4 neq(vec4 A, vec4 B) {
return (vec4(1.0, 1.0, 1.0, 1.0) - eq(A, B));
}
float c_df(vec3 c1, vec3 c2) {
vec3 df = abs(c1 - c2);
return df.r + df.g + df.b;
}
void main() {
bool upscale = u_texelDelta.x > (1.6 * u_pixelDelta.x);
vec3 res = texture2D(sampler0, v_texcoord0.xy).xyz;
// Let's skip the whole scaling if output size smaller than 1.6x of input size
if (upscale) {
vec4 edri, edr, edr_l, edr_u, px; // px = pixel, edr = edge detection rule
vec4 irlv0, irlv1, irlv2l, irlv2u;
vec4 fx, fx_l, fx_u; // inequations of straight lines.
vec2 pS = 1.0 / u_texelDelta.xy;
vec2 fp = fract(v_texcoord0.xy*pS.xy);
vec2 TexCoord_0 = v_texcoord0.xy-fp*u_pixelDelta.xy;
vec2 dx = vec2(u_texelDelta.x,0.0);
vec2 dy = vec2(0.0,u_texelDelta.y);
vec2 y2 = dy + dy; vec2 x2 = dx + dx;
vec4 delta = vec4(1.0/XBR_SCALE, 1.0/XBR_SCALE, 1.0/XBR_SCALE, 1.0/XBR_SCALE);
vec4 delta_l = vec4(0.5/XBR_SCALE, 1.0/XBR_SCALE, 0.5/XBR_SCALE, 1.0/XBR_SCALE);
vec4 delta_u = delta_l.yxwz;
vec3 A = texture2D(sampler0, TexCoord_0 -dx - |
| eFootball Chelito 19 |
v1.6.3 |
2023-05-26 |
1 |
Error in shader program link: info:
fs: 00000000:0001d022 Tex TexAlpha TFuncMod AlphaTest0 >
#version 300 es
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = p * t;
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:00000018 C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
| eFootball Chelito 19 |
v1.6.3 |
2023-05-26 |
1 |
Error in shader program link: info:
fs: 00000000:0001d002 Tex TFuncMod AlphaTest0 >
#version 300 es
precision lowp float;
uniform sampler2D tex;
uniform sampler2D testtex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
if (v.a < 0.002) discard;
fragColor0 = v;
}
vs: 00000000:00000018 C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
| eFootball Chelito 19 |
v1.6.3 |
2023-05-26 |
1 |
Error in shader program link: info:
fs: 00000000:00000002 Tex TFuncMod
#version 300 es
precision lowp float;
uniform sampler2D tex;
in vec4 v_color0;
in mediump vec3 v_texcoord;
out vec4 fragColor0;
void main() {
vec4 t = texture(tex, v_texcoord.xy);
vec4 p = v_color0;
vec4 v = vec4(t.rgb * p.rgb, p.a);
fragColor0 = v;
}
vs: 00000000:00000018 C Tex
#version 300 es
precision highp float;
in vec4 position;
in vec2 texcoord;
in lowp vec4 color0;
uniform mat4 u_proj;
out lowp vec4 v_color0;
out mediump vec3 v_texcoord;
void main() {
v_texcoord = vec3(texcoord, 1.0);
v_color0 = color0;
gl_Position = u_proj * vec4(position.xyz, 1.0);
}
|
| Pro Evolution Soccer 2013 |
v1.13.1 |
2023-05-25 |
1 |
Error in shader program link: info: Link failed because of missing fragment shader.
fs: thin3d
vs: thin3d
#version 320 es
#if __VERSION__ >= 130
#define attribute in
#define varying out
#endif
attribute vec3 Position;
attribute vec4 Color0;
attribute vec2 TexCoord0;
varying vec4 oColor0;
varying vec2 oTexCoord0;
uniform mat4 WorldViewProj;
uniform vec2 TintSaturation;
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
void main() {
gl_Position = WorldViewProj * vec4(Position, 1.0);
vec3 hsv = rgb2hsv(Color0.xyz);
hsv.x += TintSaturation.x;
hsv.y *= TintSaturation.y;
oColor0 = vec4(hsv2rgb(hsv), Color0.w);
oTexCoord0 = TexCoord0;
} |
| Grand Theft Auto: Liberty City Stories |
v1.6.3 |
2023-05-25 |
1 |
Error in shader program link: info: Link Error: Vertex shader is missing.
fs: 00004000:00000000 Flat
#version 300 es
#extension GL_EXT_shader_framebuffer_fetch : require
precision lowp float;
flat in vec4 v_color0;
inout vec4 fragColor0;
void main() {
vec4 v = v_color0 ;
fragColor0 = v;
}
vs: 40000000:0000000a THR C Flat
#version 300 es
precision highp float;
in vec4 position;
in lowp vec4 color0;
uniform mat4 u_proj_through;
flat out lowp vec4 v_color0;
void main() {
v_color0 = color0;
gl_Position = u_proj_through * vec4(position.xyz, 1.0);
}
|