La Nintendo 64 ha cargado con la misma reputación desde 1996: grandes videojuegos, pero una niebla terrible. Esa pared gris que ocultaba cualquier cosa a más de 6 metros no era una elección de estilo. Era una limitación de hardware con la que todo desarrollador que trabajaba en la plataforma terminaba topándose, y la mayoría simplemente la aceptaba. Durante 30 años, nadie descubrió cómo sortearla a gran escala.
El desarrollador James Lambert acaba de lograrlo.
El problema de la niebla en N64, finalmente explicado
Lambert, quien anteriormente creó Portal 64 (un demake que corre en hardware real de N64) y un romhack de Super Mario 64 con soporte para VR, ahora ha centrado su atención en un proyecto de game jam llamado Junkrunner 64. El videojuego corre en hardware real de N64 y en emuladores de alta precisión, incluido Ares, y presenta algo que nadie esperaba ver en la plataforma: una distancia de dibujado comparable a la de The Elder Scrolls V: Skyrim, el RPG de mundo abierto de Bethesda de 2011 que corría en hardware lanzado 15 años después de la N64.
"Puedes pararte en una esquina del mapa y ver hasta el otro extremo", comenta Lambert en su video de análisis. Cuando superpone una comparación de tamaño, el mapa de Junkrunner 64 hace que el mundo de The Legend of Zelda: Ocarina of Time en la misma plataforma parezca minúsculo. ¿El equivalente más cercano en términos de escala? Skyrim.
El culpable técnico detrás de toda esa niebla en N64 es algo llamado Z-fighting. El Z-buffer de la consola, que rastrea la profundidad de los objetos para que se rendericen en el orden correcto, simplemente no es lo suficientemente preciso para manejar geometría distante. A medida que los objetos se alejan de la cámara, la N64 pierde el rastro de cuál está más cerca y las cosas comienzan a dibujarse en el orden incorrecto. Una montaña lejana se renderiza sobre una colina cercana. La niebla fue la solución a la que recurrieron todos los desarrolladores porque ocultaba el problema antes de que fuera visible.
Cómo lo resolvió Lambert realmente
Aquí está el punto: la solución a la que llegó Lambert es elegante precisamente porque refleja las técnicas que usan los motores modernos, solo que adaptadas para hardware de 1996.
"La solución es que simplemente dibujo el mundo dos veces", explica Lambert. "Primero dibujo todo lo que está lejos, escalado a aproximadamente 100, y luego hago una pasada separada donde dibujo todo lo que está cerca". El mundo está dividido en mosaicos (tiles) con múltiples niveles de detalle (LOD). Los mosaicos distantes se renderizan con bajo detalle y, a medida que el jugador se acerca, versiones de mayor detalle los reemplazan. Antes de que se renderice cualquier mosaico, el motor verifica si siquiera está en el campo de visión del jugador. Si no es así, se omite por completo.
El resultado es un mundo en capas construido de atrás hacia adelante, donde la geometría de bajo detalle llena el horizonte y los mosaicos de alto detalle toman el control en primer plano, sin necesidad de una pared de niebla para ocultar las uniones.
info
La ROM de Junkrunner 64 de Lambert está disponible para descargar en GitHub para cualquiera que quiera probarla en un emulador de N64.El colaborador Pyroxene se encargó de la construcción real del mapa, creando las múltiples variaciones de LOD para cada sección del mundo abierto. Una vez que todo estuvo ensamblado, Pyroxene confirmó que el videojuego alcanzaba "una buena, y a veces incluso excelente, tasa de cuadros" en el hardware. Para una consola de 30 años corriendo un mundo del tamaño de Skyrim, eso no es poca cosa.

Hover cycle hits 180 mph boosting
Haciendo que un mapa grande valga la pena explorar
Construir el mundo abierto era solo la mitad del problema. Lambert reconoció que la escala por sí sola no hace que un videojuego valga la pena. "Este mapa masivo es genial, pero en realidad empeora el videojuego si no hay nada que hacer en él y el desplazamiento es muy lento", dice.
La respuesta para el desplazamiento fue la moto deslizadora (hover cycle) del jugador, que alcanza velocidades de alrededor de 180 mph cuando está totalmente mejorada y usando el impulso. La respuesta para la exploración fue más meditada: el mapa comienza completamente oculto y los jugadores lo revelan pieza por pieza a medida que se mueven por el mundo. Es una elección de diseño que le da a la exploración un propósito real, algo que muchos videojuegos de mundo abierto modernos con mapas llenos de íconos han abandonado silenciosamente.
Lambert ha sido claro en que Junkrunner 64 es un proyecto de game jam y es poco probable que se expanda a algo más grande por sí solo. Lo que importa es hacia dónde va la tecnología a continuación. Las técnicas desarrolladas aquí se integran directamente en el proyecto de N64 más grande que Lambert anunció anteriormente, un videojuego cooperativo al estilo Magicka que ahora tendrá un motor de mundo abierto adecuado sobre el cual construirse.
Para cualquiera que creció entrecerrando los ojos a través de la niebla de la N64 preguntándose de qué era realmente capaz el hardware, esta es la respuesta. Mantente atento al próximo proyecto de Lambert y revisa las últimas noticias de videojuegos para más historias de la escena de desarrollo retro. Asegúrate de revisar más:


