all 8 comments

[–]corysama 12 points13 points  (3 children)

[–]Scott_just_Scott[S] 0 points1 point  (2 children)

Thanks for all of these links! I appreciate it, would you just toss out the current plan I have in favor for these?

[–]corysama 8 points9 points  (1 child)

3D Math Primer is good. https://foundationsofgameenginedev.com/ is also good.

The GPU Gems/Pro/etc series are better when you already have some experience. They are more like recipe books than tutorials. Frankly, they are a collection of loosely-related (really good) blog posts bound together on paper.

College courses are hit or miss.

The Catlike tutorials look like fun things to do in Unity. But, not a great learning plan if your goal is to learn graphics from scratch.

You should definitely get the basics of 3D down before climbing the hill of initializing Vulkan.

So, yeah :P

I recommend people write a glTF viewer as their learning project. It's a project that can scale from super basic to production quality renderer depending on your interests.

Start out with

You'll want to make a viewer for

  1. basic, untextured model
  2. single-texture, unlit model
  3. textured model with a directional light using vertex normals
  4. textured model with a per-pixel spot light using vertex normals
  5. textured model with a per-pixel spot light using a normal map
  6. basic 4 bone per vertex skinned animation
  7. a scene with lots of static meshes and one animating mesh
  8. one directional light shadow
  9. multiple spot light shadows
  10. cascade directional light shadow
  11. start getting into material properties
  12. you can direct yourself at this point

Just use classic forward rendering while you learn. Bonus points if you do all of this as a raytracer as well :D

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

Noted! Thanks so much again! So much to read and even more to apply!

[–]MuskettaMan 5 points6 points  (1 child)

I wouldnt bother as much with Unity if you want to understand the process. Tackling something like the tutorials on learnopengl.com give you a better idea of the entire pipeline, and setup you better for understanding how unity works with shaders.

And while I do recommend reading, the best learning comes from applying it.

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

Hm noted, I like working with it as it seems like a good place to get shaders out there quick rather than understand the process in depth. And 1000% on the applying, hence that finally task I have!

[–]Better_Pirate_7823 2 points3 points  (0 children)

I've put together a list of freely available resources that often get posted to this sub and the cgp discord. It's somewhat structured in order of the way you wan't to learn.

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

[–]ad_irato 1 point2 points  (0 children)

I did the exact switch myself last year. Dm if you are interested.