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 Window
OpenGL 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 Shaders
OpenGL 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 Matrices
OpenGL 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 Color
Because 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.
Yo swift.
How about a tutorial for opengl billboards? That would be awesome for us doing 2d and new to opengl 4.
Nick
Will there be new tutorials coming out?
Regarding tutorials. I noticed there are no headers for windowing libraries or libraries for extension of opengl such as GLFW/FreeGLUT and GLEW respectively. Are you using core OpenGL?
The OpenGL 4.0 tutorials were written before FreeGLUT really supported OpenGL contexts beyond that of OpenGL 2.x. Which is why these tutorials are for Windows only. However I believe the latest FreeGLUT allows you to set a context using glutInitContextVersion.
I use Windows 7 64-bit and it supports OpenGL core 3.1 and GLSL 1.4, does that mean I cannot run the OpenGL 3.2 tutorial you have?
That is correct, however you should have no trouble with the tutorial if you drop the version inside the tutorial down to 3.1.
Cheers,
Swiftless
Hello Everyone – OpenGL 4.3 came out yesterday
Great tutorials, thank you very much!
I would still be programming in depreciated immediate mode if it weren’t for you.On top of that I’ve learned much of my legacy GL from here. Bravo Swiftless, can’t wait for more!
Thanks for the base code. I’m returning from mobile development (though I might continue doing both…), my old PC code was GL1 so this is a nice fresh start. Cheers, I’ve bookmarked your homepage for the future when I can donate
When is comming more tutorials
Thank you really much!!!
I was close to giving up on OpenGL because I couldn’t find any tutorials that uses the newer versions of OpenGL. I also couldn’t find any good tutorials for OGL + GLSL shaders, but even that did you explain.
Thx and greetings from Austria^^
Thank you for these tutorials! I’ve really been struggling to find some good texts on how to move from OpenGL 2.x to 3.x and 4.0! I just wished I had found your page earlier!