blob: 42f8da0465024899d0a751962971536939920c27 [file] [log] [blame]
SKIP: FAILED
#version 310 es
precision mediump float;
const float shadowDepthTextureSize = 1024.0f;
struct Scene {
mat4 lightViewProjMatrix;
mat4 cameraViewProjMatrix;
vec3 lightPos;
};
layout(binding = 0) uniform Scene_1 {
mat4 lightViewProjMatrix;
mat4 cameraViewProjMatrix;
vec3 lightPos;
} scene;
struct FragmentInput {
vec3 shadowPos;
vec3 fragPos;
vec3 fragNorm;
};
const vec3 albedo = vec3(0.899999976f, 0.899999976f, 0.899999976f);
const float ambientFactor = 0.200000003f;
struct tint_symbol_3 {
vec3 shadowPos;
vec3 fragPos;
vec3 fragNorm;
};
struct tint_symbol_4 {
vec4 value;
};
uniform highp sampler2D shadowMap_shadowSampler;
vec4 tint_symbol_inner(FragmentInput tint_symbol_1) {
float visibility = 0.0f;
float oneOverShadowDepthTextureSize = (1.0f / shadowDepthTextureSize);
{
for(int y = -1; (y <= 1); y = (y + 1)) {
{
for(int x = -1; (x <= 1); x = (x + 1)) {
vec2 offset = vec2((float(x) * oneOverShadowDepthTextureSize), (float(y) * oneOverShadowDepthTextureSize));
visibility = (visibility + texture(shadowMap_shadowSampler, (tint_symbol_1.shadowPos.xy + offset), (tint_symbol_1.shadowPos.z - 0.007f)));
}
}
}
}
visibility = (visibility / 9.0f);
float lambertFactor = max(dot(normalize((scene.lightPos - tint_symbol_1.fragPos)), tint_symbol_1.fragNorm), 0.0f);
float lightingFactor = min((ambientFactor + (visibility * lambertFactor)), 1.0f);
return vec4((lightingFactor * albedo), 1.0f);
}
tint_symbol_4 tint_symbol(tint_symbol_3 tint_symbol_2) {
FragmentInput tint_symbol_5 = FragmentInput(tint_symbol_2.shadowPos, tint_symbol_2.fragPos, tint_symbol_2.fragNorm);
vec4 inner_result = tint_symbol_inner(tint_symbol_5);
tint_symbol_4 wrapper_result = tint_symbol_4(vec4(0.0f, 0.0f, 0.0f, 0.0f));
wrapper_result.value = inner_result;
return wrapper_result;
}
layout(location = 0) in vec3 shadowPos;
layout(location = 1) in vec3 fragPos;
layout(location = 2) in vec3 fragNorm;
layout(location = 0) out vec4 value;
void main() {
tint_symbol_3 inputs;
inputs.shadowPos = shadowPos;
inputs.fragPos = fragPos;
inputs.fragNorm = fragNorm;
tint_symbol_4 outputs;
outputs = tint_symbol(inputs);
value = outputs.value;
}
Error parsing GLSL shader:
ERROR: 0:45: 'assign' : cannot convert from ' temp highp 4-component vector of float' to ' temp mediump float'
ERROR: 0:45: '' : compilation terminated
ERROR: 2 compilation errors. No code generated.