Files
qglengine/shaders/shadow.glsl
2023-02-12 21:27:04 +03:00

24 lines
457 B
GLSL

// vert //
void main(void) {
qgl_MaterialIndex = qgl_Material;
qgl_FragTexture = qgl_getFragTexture();
gl_Position = qgl_ftransform();
}
// frag //
float z_near = 0.1f;
const float _pe = 2.4e-7;
void main(void) {
vec4 diffuse = qgl_materialTexture(QGL_MAP_DIFFUSE, qgl_FragTexture.xy, vec4(0));
if(diffuse.a < 0.5)
discard;
float z = gl_FragCoord.z;
z = ((_pe - 2.) * z_near) / (z + z + _pe - 2.); // infinite depth
qgl_FragData[0].r = z;
}