Esta serie de artículos propone desmitificar el funcionamiento interno de las APIs gráficas modernas —OpenGL, Vulkan, Metal y DirectX— construyendo desde cero un clon simplificado en C++ sin recurrir a librerías de terceros. El autor, docente de gráficos por ordenador, señala que muchos estudiantes tropiezan al iniciarse en estas herramientas y por eso diseñó un curso breve y progresivo: tras 10 a 20 horas de programación, sus alumnos son capaces de producir renderizadores capaces. El proyecto final ocupa unas 500 líneas de código y consiste en un renderizador por software —no por GPU— que toma como entrada un modelo 3D compuesto por una malla triangular y texturas, y produce como salida una imagen renderizada. Como no existe interfaz gráfica, el programa genera directamente el archivo de imagen. Para minimizar dependencias externas, se ofrece una única clase de gestión del formato TGA —uno de los más sencillos y compatibles con RGB, RGBA y escala de grises— que sirve como base para la manipulación de píxeles. La única funcionalidad inicial, además de cargar y guardar imágenes, es la de establecer el color de un píxel individual; ni el trazado de líneas ni el de triángulos existen de antemano, sino que se implementan manualmente. El autor recomienda no usar su código como atajo: el valor del ejercicio reside en programar cada paso para comprender cómo asignan los píxeles los renderizadores modernos. El código completo está disponible en GitHub, junto con el punto de partida que se entrega a los estudiantes al comenzar la práctica.
