raze/wadsrc/static/engine/shaders/glsl/polymost.vp
Christoph Oelckers 57a455d6cb - swapped order of matrix application.
Model rotation must come before view rotation, this just never showed up because EDuke32 doesn't have both non-identity at the same time.
2020-01-19 13:59:45 +01:00

39 lines
836 B
Text

#version 330
out vec4 v_color;
out float v_distance;
out vec4 v_texCoord;
out vec4 v_detailCoord;
out float v_fogCoord;
out vec4 v_eyeCoordPosition;
uniform float u_usePalette;
uniform mat4 u_rotMatrix;
uniform mat4 u_modelMatrix;
uniform mat4 u_projectionMatrix;
uniform mat4 u_detailMatrix;
uniform mat4 u_textureMatrix;
in vec4 i_vertPos;
in vec4 i_texCoord;
in vec4 i_color;
void main()
{
vec4 vertex = u_modelMatrix * i_vertPos;
vec4 eyeCoordPosition = u_rotMatrix * vertex;
v_eyeCoordPosition = eyeCoordPosition;
gl_Position = u_projectionMatrix * eyeCoordPosition;
eyeCoordPosition.xyz /= eyeCoordPosition.w;
v_texCoord = u_textureMatrix * i_texCoord;
v_detailCoord = u_detailMatrix * i_texCoord;
v_fogCoord = abs(eyeCoordPosition.z);
v_color = i_color;
v_distance = eyeCoordPosition.z;
}