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
    • English
    • Japanese
    • Chinese
    • The more languages you know, the better.
  • Mathematics
    • Calculus
    • Linear Algebra
    • Probability Theory
    • High School Mathematics(Trigonometric functions…)
    • Geometry
  • Programming Languages
    • C++
    • C#
  • 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.

Study Resources

Myself

Language

  • [BOOK] English Grammar in Use
  • [BOOK] Advanced Grammer in Use

Mathematics

Programming Language

Game Developement

Unity

Unreal

  • NONE…

Computer Graphics

Ray-Tracing

DirectX

OpenGL