mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2024-12-29 03:19:44 +00:00
fbc7cf5e65
Use `gl_FragCoords` instead passing the normalised screen-space coordinates to the fragment shader in a numerically unstable way.
22 lines
461 B
GLSL
22 lines
461 B
GLSL
#version 120
|
|
|
|
uniform mat4 projectionMatrix;
|
|
|
|
varying vec4 position;
|
|
varying float linearDepth;
|
|
|
|
#include "shadows_vertex.glsl"
|
|
#include "depth.glsl"
|
|
|
|
void main(void)
|
|
{
|
|
gl_Position = projectionMatrix * (gl_ModelViewMatrix * gl_Vertex);
|
|
|
|
position = gl_Vertex;
|
|
|
|
vec4 viewPos = gl_ModelViewMatrix * gl_Vertex;
|
|
linearDepth = getLinearDepth(gl_Position.z, viewPos.z);
|
|
|
|
setupShadowCoords(viewPos, normalize((gl_NormalMatrix * gl_Normal).xyz));
|
|
}
|