22 lines
446 B
GLSL
22 lines
446 B
GLSL
#ifdef OPENGL32
|
|
in vec4 position;
|
|
out float fogFactor;
|
|
#else
|
|
attribute vec4 position;
|
|
varying float fogFactor;
|
|
#endif
|
|
|
|
|
|
vec4 overridePosition(in vec4 position);
|
|
|
|
void main()
|
|
{
|
|
vec4 clipPos = trit_mvProj * position;
|
|
|
|
vec4 vEye = clipPos * trit_inverseProjection;
|
|
float fogExponent = length(vEye.xyz) * trit_fogDensity;
|
|
fogFactor = clamp(exp(-(fogExponent * fogExponent)), 0.0, 1.0);
|
|
|
|
gl_Position = overridePosition(clipPos);
|
|
}
|