Graphics Programmer Study (Updating)
Introduction
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 DirectX
, OpenGL
, 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.
- Language
- Mathematics
- Programming Languages
- Computer Science
- GPU Architecture
- Computer Graphics
- Algorithm
- …
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.
Study Resources
Myself
- [GITHUB] Unity Rendering Playground
- [GITHUB] Unity Shader入門精要 - 筆記
- [GITHUB] Algorithm-C++
Language
- [BOOK] English Grammar in Use
- [BOOK] Advanced Grammer in Use
Mathematics
- [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
Programming Language
- [BOOK] C++ Primer
- [BOOK] C# in Depth
Game Developement
- [OTHER] A STUDY PATH FOR GAME PROGRAMMER
Unity
- [BOOK] IndieVisualLab-Unity Graphics Programming
- [BOOK] Unity Shader入門精要
- [VIDEO] Unity Shader簡單黎講, Youtube | Udemy
- [BOOK] CyberAgent Game Entertainment - Unity Performance Tuning Bible
Unreal
- NONE…
Computer Graphics
- [VIDEO] GAMES Series
- [BOOK] Fundamentals of Computer Graphics
- [BOOK] 全局光照技術
Ray-Tracing
- [ARTICLE] Ray Tracing in One Weekend Series
DirectX
OpenGL
- [ARTICLE] Learn Open-GL