A graphics programmer is far more than just writing a few lines of Shader code or connecting different lines in
ShaderGraph. In my opinion, it typically requires a deep understanding of
Computer Graphics Theory and
Mathematics. Additionally, one needs to master various graphics APIs such as
Vulkan, and so on. As a Game-Developer, I focus mainly on real-time graphics technology related to game development.
In game development, a skilled graphics programmer can make a game look stunning and have highly efficient rendering performance. This is the true skill of a graphics programmer.
Becoming a graphics programmer requires an enormous amount of learning. If you have the following foundational knowledge, it can make your learning process smoother and easier.
- The more languages you know, the better.
- Linear Algebra
- Probability Theory
- High School Mathematics(Trigonometric functions…)
- Programming Languages
- Computer Science
- GPU Architecture
- Computer Graphics
The main purpose of this blog post is to provide some useful resources that the author has learned and found helpful for reference. These resources may include papers, books, source code, and so on.
- [BOOK] English Grammar in Use
- [BOOK] Advanced Grammer in Use
- [BOOK] THoMaS’ CalCUlUS
- [VIDEO] MIT 18.06, Linear Algebra
- [BOOK] Mathematics for 3D Game Programming and Computer Graphics
- [BOOK] 3D Math Primer for Graphics and Game Development
- [OTHER] A STUDY PATH FOR GAME PROGRAMMER
- [BOOK] IndieVisualLab-Unity Graphics Programming
- [BOOK] Unity Shader入門精要
- [VIDEO] Unity Shader簡單黎講, Youtube | Udemy
- [NEW][BOOK] CyberAgent Game Entertainment - Unity Performance Tuning Bible
- [NEW][ARTICLE] Ray Tracing in One Weekend Series
- [ARTICLE] Learn Open-GL