When you hear the name Crash Bandicoot, you probably think of it as Sony’s platformy, mascoty answer to Mario and Sonic. Before getting the full Sony marketing treatment, though, the game was developer Naughty Dog’s first attempt at programming a 3D platform game for Sony’s brand-new PlayStation. And developing the game in 1994 and 1995—well before the release of Super Mario 64—involved some real technical and game design challenges.
In our latest War Stories video, coder Andy Gavin walks us through a number of the tricks he used to overcome some of those challenges. Those include an advanced virtual memory swapping technique that divided massive (for the time) levels into 64KB chunks. Those chunks could be loaded independently from the slow (but high-capacity) CD drive into the scant 2MB of fast system RAM only when they were needed for Crash’s immediate, on-screen environment.
The result allowed for “20 to 30 times” the level of detail of a contemporary game like Tomb Raider, which really shows when you look at the game’s environments. Similar dynamic memory management techniques are now pretty standard in open-world video games, and they all owe a debt of gratitude to Gavin’s work on Crash Bandicoot as a proof of concept.