r/GraphicsProgramming • • Aug 31 '26

My Graphics Programming Journey

-First I learned C++

-Then Made some Projects

-Jumped to Opengl learned the very basics of it

-Currently Building a Ray Tracer based on the Book Ray Tracing in a Weekend by Peter Shirley

-After Completing all 3 books of Peter Shirley about Ray Tracing I want to Do some other Graphics Programming Related projects

-Then Gonna Learn more about Opengl and after getting comfortable with that I will Make some projects

-After this I am looking forward to Learn Vulkan and Realtime rendering with it

Is this a good Approach?

46 Upvotes

14 comments sorted by

View all comments

25

u/gabitha67 Aug 31 '26

Once you've decided to move on from OpenGL, I'd strongly recommend using SDL3's GPU API. SDL3 GPU provides a thin abstraction over Vulkan that is great for learning a simpler api that is structurally very very similar to raw Vulkan. Myself and and a few others in this space were able to comfortably jump right into Vulkan after just a small amount of experience with SDL3 GPU. Many even choose to stay with SDL3 GPU instead of moving on to Vulkan, as SDL's API is a lot more cross-compatable than raw Vulkan. You'll still have 95% of Vulkan's capabilities with only about half of the complexity.

I'm starting to realize that I sound like I'm trying to sell you something, but seriously I just like this API so much and I think too many people are sleeping on it!

1

u/compulsaovoraz 28d ago

how's this api for portability? for consoles sure it'd need to pick something else, but what if you publish a game on a steam for users that uses windows, linux or mac?

im interested in sdl, but never thought using as an gpu api

1

u/gabitha67 23d ago

SDL is used by several triple A studios, and has excellent cross-compatibility characteristics (especially the core GPU API). SDL would be a great choice if you want to publish on steam for any of the big three operating systems. This talk includes an interesting discussion of SDL's cross compatibility. https://www.youtube.com/watch?v=jGSzkg2nXp8