# OpenGL 4 Tutorials

OpenGL 3.x and 4.0 have introduced a new way of programming in OpenGL. Virtually all parts of the immediate mode pipeline are now either deprecated or have been removed, and a more shader oriented approach has taken place. Unfortunately if you are completely new to computer graphics, this does slightly raise the learning curve, but I am still going to try taking it step by step for all of you. Here I am going to write some up to-date tutorials on programming with OpenGL 3.x and OpenGL 4. These tutorials are going to be for Windows machines as currently my OSX powered Macbook pro doesn’t support OpenGL 3 and up. Stay tuned for these tutorials.

- 1. OpenGL 4 WindowOpenGL 3.x and OpenGL 4.x came out all of a sudden, but not many people made the switch. Here you will learn how to create a window with an OpenGL 3.2 capable context, which can be used as a basis for further tutorials.
- 2. OpenGL 4 ShadersOpenGL 3.x and OpenGL 4.x rely on you to use shaders for all of your effects. This tutorial will show you how to incorporate the shaders from the GLSL section of the site into our new framework.
- 3. OpenGL 4 MatricesOpenGL 3.x and OpenGL 4.x remove all matrix functions and force the developer to handle all matrices themselves. This is both a good and a bad thing. For beginners it takes a little more effort to understand OpenGL itself, and for professionals, it allows you complete freedom over your matrices.
- 4. OpenGL 4 Vertex Array Objects (VAO)OpenGL 3.x and OpenGL 4.x deprecated virtually all client side rendering calls such as glEnable(GL_TRIANGLES) and glVertex3f, so how do we render things these days?. This tutorial will show you how to use Vertex Array Objects and Vertex Buffer Objects to render in compliance with OpenGL 3.x and up at blistering speeds compared to previous ...
- 5. OpenGL 4 Vertex Buffer Objects (VBOs) for ColorBecause OpenGL 3.x and OpenGL 4.x deprecated and then removed virtually all of the fixed function pipeline, how do we colour our polygons these days?. This tutorial will show you how to use two Vertex Buffer Objects inside of a Vertex Array Object to both draw and colour our shapes at the same time.