Files
VoxelEngine/Assets/shaders/chunk.vert

25 lines
548 B
GLSL

#version 330 core
layout(location = 0) in vec3 aPos;
layout(location = 1) in vec2 aUv;
layout(location = 2) in float aShade;
out vec2 vUv;
out float vShade;
out float vWorldY;
out vec3 vWorldPos;
uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;
void main()
{
vUv = aUv;
vShade = aShade;
// World-space position uses row-vector convention (matches gl_Position below).
vec4 worldPos = vec4(aPos, 1.0) * model;
vWorldPos = worldPos.xyz;
vWorldY = worldPos.y;
gl_Position = worldPos * view * projection;
}