Qué aprender para ser programador de gráficos en tiempo real

Fuentes: What To Learn To Be A Real Time Graphics Programmer

Esta guía didáctica, escrita por un programador veterano de gráficos, detalla las habilidades necesarias para incorporarse al mercado laboral como desarrollador de gráficos en tiempo real, un campo clave de la industria del videojuego y del renderizado. El autor parte de una advertencia sobre el papel real del aprendizaje automático: considera que el actual ciclo de entusiasmo en torno a los LLM es pasajero, aunque reconoce la utilidad de las técnicas de ajuste y optimización que aporta. Tras descartar el ML como eje formativo, articula el oficio como dos grandes bloques que conviene no estudiar a la vez: el lado de CPU, centrado en APIs explícitas como DirectX 12, Vulkan o Metal y en la programación de motores; y el lado de GPU, dedicado a las matemáticas de iluminación, sombras, oclusión ambiental y posprocesado, junto con el criterio para medir el rendimiento. Para el bloque de GPU recomienda practicar con un trazador de rayos partiendo del libro gratuito «Ray Tracing in One Weekend», y profundizar después en el renderizado basado en física (PBR) mediante las secciones de LearnOpenGL, la documentación de Filament de Google y el clásico «Physically Based Rendering: From Theory to Implementation». En el apartado algorítmico defiende un enfoque minimalista: álgebra lineal, trigonometría básica y algo de cálculo bastan para empezar, aunque el techo matemático sea ilimitado. Sobre lenguajes, sitúa C++ como estándar casi indiscutible en CPU, observa el papel creciente de Rust y WebGPU, y señala HLSL como el lenguaje de sombreadores más extendido, con GLSL como alternativa habitual.