Un modder detalla cómo Rockstar Games encajó el mundo abierto de Liberty City de GTA III en los míseros 32 MB de memoria de la PS2

GTA 3 cambió prácticamente el panorama de los juegos de mundo abierto cuando se lanzó en 2001, y es notable cómo Rockstar Games consiguió que Grand Theft Auto III funcionara en la PlayStation 2, que sólo tenía 32 MB de RDRAM para trabajar.
A pesar de ello, Rockstar Games exprimió un mundo abierto de 4 kilómetros de ancho, poblado de numerosos peatones, coches únicos como el Banshee, y tres islas explorables: Portland, Staunton Island y Shoreside Vale, en el sistema. Entonces, ¿cómo lo consiguió Rockstar Games en los 32 MB de memoria de la PS2?
Ahí es donde Mark Brown de Game Maker's Toolkit interviene. En su último vídeo de YouTube, no sólo desmenuzó el motivo, sino que obtuvo el código fuente de GTA 3, reescribió partes enteras del programa y recompiló un ejecutable completamente nuevo, que reveló el sistema de transmisión oculto del juego. Lo explicó en el vídeo:
"Ahora puede ver el truco: cómo Grand Theft Auto 3 carga y descarga un pequeño número de activos en la memoria mientras se mueve por Liberty City. Construye en secreto el mundo delante de ti, y lo borra en silencio a tus espaldas. Básicamente, en lugar de intentar meter toda una ciudad en la memoria, Rockstar construyó una ventana móvil que muestra lo justo de la ciudad para que la ilusión funcione"
He aquí cómo Rockstar Games consiguió encajar el mapa de 4 km de Liberty City de GTA 3 en 32 MB de memoria de PS2
El ejecutable de GTA 3 modificado por Brown permite a los jugadores ver cómo aparecen y desaparecen trozos de la ciudad en tiempo real, dependiendo de dónde se sitúe Claude. También detalló el número de coches únicos que el juego podía mostrar en las carreteras a la vez mientras se conducía, lo que explica el hecho de ver un EC Cheetah circulando despreocupadamente por la carretera después de hacerse con uno.
Anteriormente, el antiguo programador de Grand Theft Auto III , Obbe Vermeij, detalló los retos de llevar el juego a la PS2 en otra entrevista, afirmando:
"No había forma de que cupiera todo el mapa de GTA 3 en la memoria de la PS2. La transmisión implica cargar los modelos desde el DVD a medida que el jugador se desplaza. Este fue el reto técnico más difícil durante el desarrollo de GTA 3, y fue codificado por Adam Fowler"
Para contextualizar, sobre el papel parece imposible ejecutar Grand Theft Auto 3 en la PS2, ya que sólo los activos suman unos 130 MB, casi cuatro veces más de lo que la consola podía contener en cualquier momento. Rockstar utilizó montones de soluciones provisionales.
La primera solución fue dividir Liberty City en tres secciones distintas: Portland, Staunton Island y Shoreside Vale. Cada una de estas islas se cargaría por separado. Sin embargo, sólo Portland suponía entre 40 y 50 MB de activos.
Así que Rockstar dividió cada isla en miles de sectores diminutos. El juego mantenía en la memoria las que estaban justo en su campo de visión e intercambiaba constantemente trozos de activos dentro y fuera de la limitada RDRAM mientras conducía y deambulaba por Liberty City.
Incluso la lentitud de la unidad de DVD complicó el desarrollo, ya que el equipo tuvo que ser muy cuidadoso sobre cuándo extraer datos para evitar que el juego se congelara.
Top 10 Análisis
» Top 10 Portátiles Multimedia
» Top 10 Portátiles de Juego
» Top 10 Portátiles de Juego ligeros
» Top 10 Portátiles Asequibles de Oficina/Empresa
» Top 10 Portátiles de Juego Ligeros
» Top 10 Portátiles de Oficina/Empresa Premium
» Top 10 Estaciones de Trabajo
» Top 10 Subportátiles
» Top 10 Ultrabooks
» Top 10 Convertibles
» Top 10 Tablets
» Top 10 Tablets Windows
» Top 10 Tablets de menos de 250 Euros
» Top 10 Phablets (>5.5")
» Top 10 Smartphones
» Top 10 Smartphones (≤5")
» Top 10 Smartphones de menos de 300 Euros
» Top 10 Smartphones de menos de 120 Euros
» Top 10 Portátiles de menos de 1000 Euros
» Top 10 Portátiles de menos de 500 Euros
» Top 10 Portátiles de menos de 300 Euros
» Los Mejores Displays de Portátiles Analizados por Notebookcheck













