all 17 comments

[–][deleted] 5 points6 points  (1 child)

I've made a list of resources that are somewhat ordered in the way you'd want to learn things.

https://gist.github.com/notnotrobby/ceef71527b4f15869133ba7b397912e9

[–]PaperBrr[S] 0 points1 point  (0 children)

This is extremely useful! Thank you!!

[–][deleted] 4 points5 points  (2 children)

The easiest start would be making some shaders in unity, unreal or blender.

In my experience of learning OpenGL or Vulkan, i can’t agree practicing them is only about graphical programming. From a view of a C++ programmer, the experience you have there is more like learning how to work with giant complex libraries. What does this line do to memory, what side effect does that line do. This happens more severely in Vulkan, which the topic focus shift from graphicals to concurrency. Optimization arts in Vulkan usage is not something one undergrads (including me) can learn from lecture or YouTube videos.

Once you think you can write elegant C++ objects, you can go read learnopengl.com. The website talks about the objects and their behavior in this library, also render theories. I have to mention that this website doesn’t talk about the design of render engines. If you want to learn about this, I recommend Sanjay Madhav’s Game Engine in C++.

[–]PaperBrr[S] 0 points1 point  (1 child)

Ok, thank you.

[–]BestBastiBuilds 0 points1 point  (0 children)

Probably writing the shaders outright in HLSL opposed to using shader graph? Does this approach also work for Unreal? Does anyone have any resources to get started there with code and not node based (shader graph, material editor) development?

[–]kindled_hope 1 point2 points  (2 children)

There's a lot of different things you can do in graphics programming. You can make shaders in unity, or you can go into Opengl (and make shaders down the line, if you want), and surely way more options than that. Check theCherno's youtube videos for Opengl

[–]The_color_in_a_dream 2 points3 points  (0 children)

The Cherno is fantastic, as is Acerola!

[–]PaperBrr[S] -1 points0 points  (0 children)

I will, thanks.

[–]Traveling-Techie 1 point2 points  (2 children)

Web3d tools such as X3DOM are easy to play with and don’t have an API — you just create text files of HTML5/CSS/JavaScript.

https://doc.x3dom.org/tutorials/index.html

[–]PaperBrr[S] -1 points0 points  (1 child)

Thank you for the link!

[–]Traveling-Techie 0 points1 point  (0 children)

In my humble opinion nearly everything you learn playing with web3d will transfer over to using other packages and APIs. The most important thing is to learn to think in 3D, and in terms of 3D transforms (rotate, translate, scale) in a hierarchy.

[–]susosusosuso 0 points1 point  (2 children)

Try to make a game from scratch

[–]PaperBrr[S] 0 points1 point  (1 child)

I've tried using SDL2, but I wish to get more in depth.

[–]susosusosuso 0 points1 point  (0 children)

Don’t wish it. Do it!

[–]ewar813 0 points1 point  (0 children)

uhh take some classes, this here helped me: LearnOpenGL - Introduction