Making a Small Memory Hold a Bigger World

A PlayStation game could not simply keep every texture, animation, and level section ready in memory. The console’s main RAM was tiny compared with the amount of data on a CD, and reading from the disc took far longer than retrieving something already in memory. The solution was to treat memory as a constantly changing workspace: load the next pieces of the game while the player was still using the current ones, then make room by discarding data that was no longer needed.

Streaming Without a Visible Pause

That process—called streaming—sounds straightforward, but the game had to predict what the player would need next and fetch it in time. Custom code coordinated disc reads with gameplay, moving data through limited buffers and trying to keep the action going while the drive worked. If the next assets arrived late, the player could see a pause or a missing detail; if too much data was held at once, the game could run out of room for what it needed immediately.

The disc drive was also a moving mechanical device, not an instant library. Repeated, demanding reads meant more work for its spinning disc and read mechanism, adding wear risk to an already tight engineering tradeoff. Naughty Dog accepted that pressure to get more content through the console’s narrow memory bottleneck. The result was a game that could feel larger and more continuous than the hardware’s RAM alone seemed to allow—because the game was continually deciding what to forget and what to fetch next.