Kind #880: Vulkan error in shader compilation: info: %s / code: %s
Game: PES FL 2022C (EQGAMER4_1.01)
Vulkan error in shader compilation: info: ERROR: 0:74: 'gl_Position' : identifier not previously declared
ERROR: 1 compilation errors. No code generated.
/ code: #version 450
#extension GL_ARB_separate_shader_objects : enable
#extension GL_ARB_shading_language_420pack : enable
#define mul(x, y) ((x) * (y))
#define splat3(x) vec3(x)
precision highp float;
// 01000000:80000b30 HWX T N Tex Light: LightUberShader Cull
layout (std140, set = 0, binding = 3) uniform baseVars {
mat4 u_proj;
mat4 u_proj_through;
mat3x4 u_view;
mat3x4 u_world;
mat3x4 u_texmtx;
vec4 u_uvscaleoffset;
vec4 u_depthRange;
vec4 u_matambientalpha;
vec4 u_cullRangeMin;
vec4 u_cullRangeMax;
uint u_spline_counts;
uint u_depal_mask_shift_off_fmt;
uint u_colorWriteMask;
float u_mipBias;
vec3 u_fogcolor; uint u_alphacolorref;
vec3 u_texenv; uint u_alphacolormask;
vec3 u_blendFixA; float u_stencilReplaceValue;
vec3 u_blendFixB; float u_rotation;
vec4 u_texclamp;
vec2 u_texclampoff;
vec2 u_fogcoef;
};
layout (std140, set = 0, binding = 4) uniform lightVars {
vec4 u_ambient;
vec3 u_matdiffuse;
vec4 u_matspecular;
vec3 u_matemissive;
uint u_lightControl; // light ubershader
vec3 u_lightpos0;
vec3 u_lightpos1;
vec3 u_lightpos2;
vec3 u_lightpos3;
vec3 u_lightdir0;
vec3 u_lightdir1;
vec3 u_lightdir2;
vec3 u_lightdir3;
vec3 u_lightatt0;
vec3 u_lightatt1;
vec3 u_lightatt2;
vec3 u_lightatt3;
vec4 u_lightangle_spotCoef0;
vec4 u_lightangle_spotCoef1;
vec4 u_lightangle_spotCoef2;
vec4 u_lightangle_spotCoef3;
vec3 u_lightambient0;
vec3 u_lightambient1;
vec3 u_lightambient2;
vec3 u_lightambient3;
vec3 u_lightdiffuse0;
vec3 u_lightdiffuse1;
vec3 u_lightdiffuse2;
vec3 u_lightdiffuse3;
vec3 u_lightspecular0;
vec3 u_lightspecular1;
vec3 u_lightspecular2;
vec3 u_lightspecular3;
};
layout (location = 0) in vec3 position;
layout (location = 2) in vec3 normal;
layout (location = 1) in vec2 texcoord;
layout (location = 1) out lowp vec4 v_color0;
layout (location = 0) out highp vec3 v_texcoord;
layout (location = 3) out highp float v_fogdepth;
invariant gl_Position;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = u_matambientalpha;
vec3 diffuseColor = u_matdiffuse.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
lowp float angle;
if ((u_lightControl & 1u) != 0x0u) {
uint comp = (u_lightControl >> 0x04u) & 0x3u;
uint type = (u_lightControl >> 0x06u) & 0x3u;
if (type == 0x0u) {
toLight = u_lightpos0;
} else {
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
}
ldot = dot(toLight, worldnormal);
if (comp == 0x2u) {
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
}
switch (int(type)) {
case 1:
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
break;
case 2:
angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight);
if (angle >= u_lightangle_spotCoef0.x) {
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y));
} else {
lightScale = 0.0;
}
break;
default:
lightScale = 1.0;
break;
}
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (comp == 0x1u) {
if (ldot >= 0.0) {
ldot = dot(normalize(toLigStatus: new. 1 hits from 2023-05-15 19:10:34 to 2023-05-15 19:10:34 UTC. Message #2332377.
Individual reports are stored since 2026-11-12, the newest 100 per message; none for this message yet. Older hits only exist as the counters above. Hover a cell for details.