Learning OpenGL in 2026
Learning OpenGL in 2026
I recently completed a 52 day series of videos where I learned OpenGL in 2026. I used a resource that was so bad I'm actually not going to recommend it here. One reason I continued with it was so I could do a full review of this terrible learning material without people claiming I don't know what I'm doing. I don't know what I'm doing, and that's thanks to this terrible course you can find online that everyone recommends and has horrible bugs in it.
The outcome of this was a series of videos that also has quite a lot of debugging sessiostns in it. If you're looking for videos showing real programmers solving real bugs then look for the videos with DEBUG in the titles. Those are ones where I had to find some obscure bug. You'll notice a lot of the sessions are debugging, and a lot of that has to do with the terrible quality of the original code combined with the terrible quality of OpenGL in general.
Also on Day 14 I refactor the original terrible code into something I can maintain, so if you're curious about how someone might refactor some code, then watch those.
YouTube Playlist
If you prefer YouTube this entire list is available there as the Learning OpenGL in 2026 playlist on Youtube. I find playlists on YouTube to be fairly random, so if you ever get lost then come back to this page to get the more accurate list.
Full Video List
Here is every video in order. I recommend you either watch these casually as background noise, or specifically focus on the ones labeled with DEBUG.
- Learning OpenGL in 2026: Day 1 -- The Triangle
- Learning OpenGL in 2026 -- Day 2 Shaders
- Learning C++ OpenGL in 2026 -- Day 3 Textures
- Learning OpenGL (with C++) In 2026 -- Day 4 Transforms and Physics
- Learning OpenGL (C++) in 2026 -- Day 5 : Coordinates
- Learning OpenGL in 2026 -- Day 6 : Cameras
- Learning OpenGL in 2026: Day 7 -- Loading Models
- Learning OpenGL in 2026: Day 8 -- Basic Lighting
- DEBUG Learning OpenGL in 2026 : Day 9 -- Debugging Light
- Learning OpenGL in 2026 -- Day 10: Materials
- Learning OpenGL in 2026 -- Day 11: Textures
- Learning OpenGL in 2026 -- Day 12 : Advanced Lighting
- Learning OpenGL in 2026 -- Day 13 : More Advanced Light
- Learning OpenGL in 2026 -- Day 14 : Refactoring Part 1
- Learning OpenGL in 2026 -- Day 15: Refactoring Part 2
- Learning OpenGL in 2026 -- Day 16: Refactoring Part 3 (Make It JSON)
- Learning OpenGL in 2026 -- Day 17: Fixing the Refactor
- Learning OpenGL in 2026 -- Day 18: Depth and Stencils
- Learning OpenGL in 2026 -- Day 19 : Blending Glass
- Learning OpenGL in 2026 -- Day 20: Face Culling
- DEBUG Learning OpenGL in 2026 -- Day 21: Framebuffers Part 1
- DEBUG Learning OpenGL in 2026 -- Day 22: Framebuffers Part 2
- DEBUG Learning OpenGL in 2026 -- Day 23: Framebuffers Part 3
- Learning OpenGL in 2026 -- Day 24 Postprocessing and Cubemaps
- Learning OpenGL in 2026 -- Day 25: Skymaps
- Learning OpenGL in 2026 -- Day 26: Geometry Shaders
- DEBUG Learning OpenGL in 2026 -- Day 27: Instancing
- DEBUG Learning OpenGL in 2026 -- Day 28: Debug Instancing
- DEBUG Learning OpenGL in 2026 -- Day 29: Instancing Solved
- DEBUG Learning OpenGL in 2026 -- Day 30: Instancing, Sorta...
- Learning OpengL in 2026 -- Day 31: Anti-Aliasing
- Learning OpenGL -- Day 32: Text Rendering
- DEBUG Learning OpenGL in 2026 -- Day 33: Shadow Mapping Pt1
- DEBUG Learning OpenGL in 2026 -- Day 34: Shadow Mapping Pt2
- DEBUG Learning OpenGL in 2026 : Day 35 Shadow Mapping Part 3
- DEBUG Learning OpenGL In 2026 : Day 36 -- Shadows Part 4
- DEBUG Learning OpenGL In 2026 : Day 37 -- Shadows Part 5
- DEBUG Learning OpenGL In 2026 : Day 38 -- Shadows Part 6
- DEBUG Learning OpenGL In 2026: Day 39 -- Shadows Pt7 Done
- Learning OpenGL in 2026 : Day 40 -- Refactor Shadow Mapping
- Learning OpenGL in 2026 : Day 41 -- At The End of My Rope
- Learning OpenGL in 2026 : Day 43 -- Normal Maps
- Learning OpenGL in 2026 : Day 44 -- Normal Maps Part 2
- Learning OpenGL in 2026 : Day 45 -- Parallax Maybe
- DEBUG Learning OpenGL in 2026 : Day 46 -- Animation Part 1
- DEBUG Learning OpenGL in 2026 : Day 47 -- Animation Part 2
- DEBUG Learning OpenGL in 2026 : Day 48 -- Animations Part 2
- DEBUG Learning OpenGL in 2026 : Day 49 -- Animations Part 3
- DEBUG Learning OpenGL in 2026 : Day 50 -- Animations Part 4
- DEBUG Learning OpenGL in 2026 : Day 51 -- Animations Part 5
- Learning OpenGL in 2026 : Day 52 -- Final Cleanups
The Bezos2 Sessions
I'm currently reimplementing Bezos Loves Slides using only OpenGL with Lua as the way you control it. This is mostly to confirm that I learned something from this terrible OpenGL course, but also to set myself up for another course in OpenGL to see if there's a better way to do it. I feel like there's a "modern" OpenGL method that's better documented in another book. I'll get a first version of Bezos2 kind of working then do another series on Learning OpenGL.
You can follow the Bezos2 Series on Youtube and I'm already 20 days in, but each day is much shorter. I'm also going pretty slow, implementing only small features each day and experimenting.
More from Learn Code the Hard Way
Learning OpenGL in 2026
The Entire 52 Day Playlist of me learning OpenGL in 2026.
My First Experience Entering a Game Jam
I want to run a Game Engine jam, so I entered one to see what they're like.
AI Didn't Kill Programming, You Did
You spent decades sucking all humanity out of programming and you're surprised it worked?
Announcing the Great Rewrite Project
I'm documenting my rewrite of this site from JavaScript to Go starting March 1, 2026.