From ca2835943ca4327ad08b54af480e0c6333df201f Mon Sep 17 00:00:00 2001 From: talha Date: Mon, 22 Apr 2024 03:38:29 +0500 Subject: Completed main levels to progress to text-rendering and 2d development. - Only lessons left are geometry shaders and anti-aliasing - will get to those later on soon - need to do text rendering now --- .../basic quads/shaders/refr.vs.glsl | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 source/lessons/instanced_rendering/basic quads/shaders/refr.vs.glsl (limited to 'source/lessons/instanced_rendering/basic quads/shaders/refr.vs.glsl') diff --git a/source/lessons/instanced_rendering/basic quads/shaders/refr.vs.glsl b/source/lessons/instanced_rendering/basic quads/shaders/refr.vs.glsl new file mode 100644 index 0000000..0554f0a --- /dev/null +++ b/source/lessons/instanced_rendering/basic quads/shaders/refr.vs.glsl @@ -0,0 +1,20 @@ +#version 330 core +layout(location=0) in vec3 aPos; +layout(location=1) in vec3 aNormal; + +uniform mat4 View; +uniform mat4 Model; +uniform mat4 Projection; + +out vec3 Normal; +out vec3 Position; + +void main() { + // @note: This is the calculation for getting the normal vector + // one that is unaffected by non-uniform scaling that is. + // look at the lighting chapter in learnopengl.com to understand this more + Normal = mat3(transpose(inverse(Model))) * aNormal; + Position = vec3(Model * vec4(aPos, 1.0)); + gl_Position = Projection * View * Model * vec4(aPos, 1.0); +}; + -- cgit v1.2.3