In 2026: Yes yes, please please learn this if you're beginning computer graphics. This is basically the One and Only Holy Bible of graphics programming, and dealing with a slightly outdated and weird API doesn't make it worse even a teeny bit. You will never get the same quality of fundamental education material from any of the other tutorials (especially Vulkan ones, since most of them assume you already know the basics and delve straight into writing thousands of lines of code that doesn't even perform better than OpenGL). You need to first learn the really basic things like homogeneous coordinates, matrix transforms, vertex and fragment shaders, various shading models like Phong and PBR, multi-pass rendering, etc, before actually diving into lower-level details where you want to optimize things.

Vulkan and DX12 are currently flawed APIs that are unnecessarily complex and doesn't even match the performance characteristics of current-gen hardware (see the titular post: https://www.sebastianaaltonen.com/blog/no-graphics-api) - if you want to really learn the low-level details you should start diving into something like CUDA or get into graphics driver development (start by reading Mesa open source driver code - which you will then learn why Vulkan is flawed)

> You will never get the same quality of fundamental material

If you're looking for fundamental material, the last thing you want is learning a very (not slightly) outdated and weird API.

> Vulkan and DX12 are currently flawed APIs that are unnecessarily complex and doesn't even match the performance characteristics of current-gen hardware

And OpneGL is worse

> If you're looking for fundamental material, the last thing you want is learning a very (not slightly) outdated and weird API.

I've never seen a more detailed tutorial than LearnOpenGL that actually goes through the concepts of graphics programming thoroughly and actually make things other than just "learn how to use the API". That alone should be enough to cement the site's longevity.

> And OpneGL is worse

It's never late to learn Vulkan / DX12 after learning learnopengl.com! The value of learnopengl.com isn't in the APIs, it's about learning the basic concepts of graphics programming. If you start learning with Vulkan without any prerequisite knowledge, you'll be bogged in low-level details from the start that isn't really related with learning the actual fundamentals. (And you'll probably have to unlearn Vulkan and DX12 again once a new API has surfaced)

> It's never late to learn Vulkan / DX12 after learning learnopengl.com!

Why would you do that? Why would you want to learn an API for graphics cards from the 90s instead of an API for the graphics card from the 2010s?

> The value of learnopengl.com isn't in the APIs, it's about learning the basic concepts of graphics programming.

Then you should learn concepts of graphics programming that isn't defined with code snippets like

    #version 330 core
    struct Material {
?

> And you'll probably have to unlearn Vulkan and DX12 again once a new API has surfaced

Strange. You "have to unlearn a newer API when an even newer one has surfaced, but you should learn this ancient API anyway".

Edit. See also another comment: https://news.ycombinator.com/item?id=49027094

Have you actually read the linked site beyond its name? The site is about fundamentals. Yes, it contains OpenGL code, but what it covers is the fundamentals of real time graphics, not just OpenGL API.

>covers is the fundamentals of real time graphics

It does not cover all the fundamentals. It hardly explains the necessary math.

> Have you actually read the linked site beyond its name? The site is about fundamentals.

Is it? All the fundamentals are tied to how it's done in OpenGL with somewhat sparse explanations in between. And many "fundamentals" are literally something like

    #version 330 core
    struct Material {

Yes, it is. Most articles there are practically API-agnostic. Just because the code examples happen to be written with OpenGL it doesn't mean it's about OpenGL.

https://learnopengl.com/PBR/Lighting

Even the code snippets start with "#version 330", if you implement these in another tech stack (say vulkan+slang) the relevant shader code would look very similar. It's quite strange to me that you think just because of "#version 330" it's not about fundamentals, tbh.

It's not just because of that. Everything is steeped in OpenGL API. All the "fundamentals" are about OpenGL.

Another link floated to the top of HN discussion just now, and every sibgle link there is better than these "fundamentals": https://news.ycombinator.com/item?id=49022038 E.g. "Computer Graphics from Scratch" https://gabrielgambetta.com/computer-graphics-from-scratch/ or Mathematics for Computer Graphics https://www.amazon.co.uk/Mathematics-Computer-Graphics-John-...

Here's the Vulkan version of that:

    #version 450
    struct Material {
Despite the name, GLSL is still used all over the place in Vulkan pipelines. The site teaches you the shader approach (rather than the fixed function pipeline of the 90s) which is what the "modern" Vulkan stack uses too.

That was the absolute minimal example of where "fundamentals" immediately devolve into a very specific code targeting a very specific API. See also sibling comment: https://news.ycombinator.com/item?id=49027094

> And OpneGL is worse

I disagree. OpenGL is truly bad, but there is no API in this world as bad as Vulkan.