Doyle Thai
3894d33485
Premultiply transformation matrix onto vertices before sending onto GPU to preserve transformation properties of entities before being batched into a general group. This removes the model matrix from the shader pipeline- instead in rendering code we deal in world space (which works out to be more intuitive). Only in the last step in GLSL we convert back to normalised coordinates.
12 lines
220 B
GLSL
12 lines
220 B
GLSL
#version 330 core
|
|
layout(location = 0) in vec4 data; // (vec2)pos, (vec2)texCoord
|
|
|
|
uniform mat4 projection;
|
|
out vec2 texCoord;
|
|
|
|
void main()
|
|
{
|
|
gl_Position = projection * vec4(data.xy, 0.0f, 1.0f);
|
|
texCoord = data.zw;
|
|
}
|