This is an introduction to graphics programming, below you will find some suggestions, resources, frameworks, and a list of mentors who can help!
Everyone is different with regards to how they learn. Often though, having a project and goal in mind can be very helpful. For example, “I’m going to build a particle system demo using Vulkan/C++”.
Keep the project simple, especially at first. Focus on learning one technique and keep the rest of the work very easy. Don’t try to build a whole game at once. Build a lighting effect or a little fluid/particle sim, or a shader. Keep the scope limited.
Focus your energy on relevant skills to developing that project or goal and ignore the rest at first. This is good because:
There’s too much to learn all at once
Focusing on skills you need to build things as opposed to theory is important
Building demos can help you get jobs more easily than anything else
As you build a project or demo, post updates and post the source on Github. This can be a great way to meet people and get visibility for your work, get hired, etc. And you’ll help teach other beginners as well.
Scanning the latest SIGGRAPH papers can give you an idea of what kind of work is interesting to graphics researchers.
Here are some great beginner friendly resources:
If you’re a graphics coder reading this wondering how you can host a workshop too, check out this guide.
Here are a few great frameworks for graphics:
Stephanie maintains a mentor list with many graphics programmers. They all love helping others, so feel free to reach out to them!
An important point: The vast majority of graphics coders don’t know math very well. Don’t be scared away if you aren’t a math person.