/** * OpenGL RedBook Shader. * Example 7.8 */ #version 330 core uniform mat4 MVPMatrix; uniform mat4 MVMatrix; uniform mat3 NormalMatrix; layout (location = 0) in vec3 VertexPosition; layout (location = 1) in vec3 VertexNormal; layout (location = 2) in vec3 VertexColour; out vec4 Position; out vec3 Normal; out vec4 Colour; out int matIndex; void main() { Colour = vec4(1.0, 1.0, 1.0, 1.0f); Normal = NormalMatrix * VertexNormal; Position = MVMatrix * vec4(VertexPosition, 1.0); matIndex = 0; gl_Position = MVPMatrix * vec4(VertexPosition, 1.0); }