Catlantean 3D es un proyecto personal de un desarrollador que se ha propuesto construir un first-person shooter completo y publicable, usando técnicas gráficas propias de principios de los 90 y limitándose deliberadamente al modo gráfico VGA Mode-X (320x240, 256 colores). El objetivo no es la nostalgia ciega, sino reproducir la nitidez y la deliberación visual de juegos como Doom o Duke Nukem, donde cada uno de los 256 colores disponibles debe elegirse con cuidado.
El artículo, publicado en el blog del proyecto, se centra en la creación de assets, un aspecto que el autor considera descuidado en la mayoría de blogs de desarrollo. La paleta de 768 bytes se ha iterado无数次, ajustando los tonos según las necesidades de los sprites y las texturas. Para el render, el motor emplea un raycaster clásico con el algoritmo DDA, que dibuja columnas de muro y, después, suelos y techos como scanlines horizontales.
El apartado más técnico se dedica a la iluminación, el gran reto de un motor basado en paleta. En lugar de buscar tonos más oscuros recorriendo la paleta en tiempo de ejecución, el desarrollador precalcula un colormap: una matriz donde cada color tiene 31 variantes más oscuras. En tiempo de render, basta con un cálculo O(1) por columna o scanline para indexar el color oscurecido. La "cercanía" entre colores se mide en espacio Oklab, cuya fórmula refleja mejor la percepción humana que la distancia euclídea, y se aplica un ligero desplazamiento hacia tonos cálidos (hue shifting) en las sombras, una técnica habitual en pixel art.
Por último, los sprites se modelan y animan en Blender y se renderizan mediante scripts en Python, lo que reduce el trabajo de iteración. El autor confirma su intención de lanzar Catlantean 3D en Steam el año que viene, tras más de un año de desarrollo en tiempo libre.
