Qué aprender para ser programador de gráficos

Papel y alcance de la programación gráfica

  • La programación gráfica a menudo sirve a artistas y artistas técnicos; el programador posibilita su visión más que crear directamente los elementos visuales.
  • Hay muchos nichos de “gráficos”: renderizado en tiempo real para juegos, herramientas para cine/VFX, visualización, simulaciones, CAD, UI, etc., con habilidades y restricciones distintas.
  • Los Technical Artists hacen de puente entre el arte y el código; se los describe ampliamente como muy valiosos, pero también de definición amplia.

Matemáticas, teoría y percepción

  • Se hace un fuerte énfasis en álgebra lineal, trigonometría, geometría de coordenadas y cálculo (incluidas integrales sobre esferas para el renderizado físicamente basado).
  • Se destacan la probabilidad y la estadística para path tracing y denoising.
  • La ciencia del color, HDR, las funciones de transferencia y la percepción humana se describen como difíciles pero esenciales; la terminología en gráficos se considera históricamente confusa.
  • Algunos sostienen que aprender transformaciones en gráficos da una buena base para álgebra lineal; otros dicen que esto no se traslada mucho al trabajo moderno en ML.

Herramientas, APIs y rutas de aprendizaje

  • Ruta comúnmente recomendada:
    • Aprende los fundamentos matemáticos.
    • Implementa un rasterizador por software y un ray tracer (por ejemplo, al estilo de “ray tracing in a weekend”).
    • Pasa a las APIs: a menudo se sugiere OpenGL como primera API de bajo nivel; Vulkan/WebGPU se consideran más complejas.
    • Usa rutas de nivel superior como WebGL, A‑Frame, Khan Academy ProcessingJS o SDL si el objetivo es obtener retroalimentación rápida.
  • Se citan varias listas curadas de recursos, libros y tutoriales, especialmente para matemáticas y fundamentos.

Motores vs. juegos

  • Consejo recurrente y contundente:
    • Si quieres hacer juegos, usa motores existentes (Unreal, Unity, Godot, Bevy).
    • Si quieres aprender gráficos/motores, construye el tuyo, pero espera años de trabajo, especialmente en tooling.
  • Muchos señalan la trampa habitual de construir motores sin parar en lugar de publicar juegos.

Perspectivas laborales y condiciones del sector

  • Las opiniones divergen:
    • Algunos desaconsejan entrar profesionalmente en gráficos: cambios tecnológicos rápidos, dificultad para destacar y, especialmente, malas condiciones laborales en estudios de juegos (crunch, bajos salarios, inestabilidad por proyectos).
    • Otros responden que los gráficos son intelectualmente gratificantes, las habilidades se transfieren bien y los sectores no relacionados con juegos (visualización, simulación, infra de ML) pueden ofrecer buenas carreras.
    • Varios argumentan que es válido dedicarse a los gráficos por curiosidad y disfrute, independientemente del beneficio profesional.

IA y el futuro

  • Debate sobre la IA:
    • Algunos ven los LLM y los modelos de imagen/video como una liberación, al permitir motores, herramientas y arte más rápidos; se afirma que la IA puede servir de andamiaje para un motor completo rápidamente.
    • Otros son escépticos, enfatizando que la maestría sigue requiriendo comprensión profunda y que la IA no ataja el oficio ni garantiza rendimiento.