Hasty Briefsbeta

Bilingual

What to learn to be a graphics programmer

a day ago
  • #Career Advice
  • #Rendering Techniques
  • #Graphics Programming
  • Graphics programming involves two main areas: CPU-side learning (modern explicit APIs like DirectX12/Vulkan/Metal and engine programming) and GPU-side learning (math of lighting/shading, rendering techniques, and performance optimization).
  • Start with simpler APIs (e.g., OpenGL, WebGL) for GPU focus or basic triangle rendering for CPU focus. Path tracing (via 'Ray Tracing in One Weekend') and Physically Based Rendering (PBR) are key for realistic rendering and asset consistency across lighting conditions.
  • Build a portfolio with: an engine-like renderer in C++ using modern APIs with PBR lighting and effects, a path tracer for photorealistic images, and bonus integration for verification.
  • Essential math includes linear algebra, trigonometry, and some calculus. Algorithm basics (data structures, sorting) are needed, with C++ as the primary language for CPU-side and HLSL/GLSL for shaders.
  • ML has limited practical use in programming now but may be useful for learning math/algorithms. The future may bring advanced AI, but current LLMs are like a rehearsal.