Graphics Programming - Resources for Beginners
This is an introduction to graphics programming, below you will find some suggestions, resources, frameworks, and a list of mentors who can help!
Pick a Project
- 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.
Beginning Resources
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.
Graphics Frameworks
Here are a few great frameworks for graphics:
Find a Mentor!
Stephanie maintains a mentor list with many graphics programmers. They all love helping others, so feel free to reach out to them!
More Advanced
Relation to Math
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.
Attribution