23 comments

[ 2098 ms ] story [ 3320 ms ] thread
Oh man, this has been posted probably 100 times now but this is still a great blog.

I guess today another 10,000 people will learn about how crash bandicoot was made.

https://xkcd.com/1053/

I was in video game development at the time and it was really exciting due to the switch from 2D to 3D for most games which made the math a programmer was required to know go way up in complexity.

And you hade new things called graphics cards that had their own apis to program to and drivers that didn't always do what they were supposed to do so you were always feeling around in the dark a bit when working with a new console or new graphics card. I remember so many bugs that weren't necessarily our fault, but the fault of buggy drivers or a misimplemened OpenGL call by the driver or console provider.

I couldn't imagine layering on top of that a lisp dialog to program your game in given that we were doing incredible things to shave off milliseconds. It seems counter intuitive to put a high level interpreted language ontop of that but these geniuses pulled it off!!

I got into professional games dev at 18. The first and only released game I worked on became the worst of both worlds. It was started as a 2D isometric game, but we ran out of RAM for all the sprites we'd rendered, so we changed to 2D landscape with 3D characters, which was a clusterfuck of rendering. The tile rendering of the backgrounds had to be interlaced with the rendering of the characters since the characters could walk under and behind objects, even semi-transparent objects. I was glad for all the demo code I'd written years before.
I was taking to a woman at a party a couple of years ago (an event related to a choir composition that my wife had done), and at some point she mentioned her son was a developer, specifically that he made video games. When I asked if she knew which games he worked on, she said Crash Bandicoot and suddenly I felt like I was talking to Ned royalty. I gushed a bit about what I had read on this blog post, but kept the conversation going so as not to dwell on it.
I am personal friends with Ned "The King" Royalty and appreciate Ned's contributions to games such as Crash bandicot
A little tangential/OT, but one of the things I admire about Andy Gavin and the Naughty Dog team is that they were capable of doing things on a brand new system that few ever figured out how to do.

Usually when a new system/console comes out it takes a while for developers to get used to its quirks and figure out optimizations and hacks to eke out whatever little performance gains you can under the constraints of the hardware.

One of the first games for the PS2 was Jak and Daxter: The Precursor Legacy, developed by Naughty Dog. What is remarkable is that Gavin had figured out that a lot of the assets and textures etc. that needed to be available in order to start the game could be loaded while the typical splash screens were displayed at the beginning.

I never noticed it when I played the game years ago, but I picked it up a while back and had a "wait, what?" moment when the PRESS START button appears, and instantly upon pressing it you're launched into the game and can interact with the world. No loading screen, no cutscene, just straight into the game.

Anyway, mad respect for a small team that managed to produce some of the most beloved games from that era.

One of the interesting points to me from reading this (or something similar about CB) the last time was this:

The PSX had no real 3D capability, you could just throw a list of triangles at it to draw. The problem here is that you have to sort the list of triangles yourself, since there is no such thing as a z-buffer.

For Crash Bandicoot, since the path is essentially linear, they were able to pre-sort most of the triangles at build time, which allowed them to achieve greater visual fidelity compared to contemporary titles that allowed for freer movement.

The Nintendo 64 has a z-buffer, but the slow fillrate means that depth-checking can hamper your frame time. World Driver Championship sorted their polygons PS1-style with unique microcode, and got a very nice framerate.

I sometimes wonder what the Nintendo 64’s library would have been like if they had sorted polygons on the CPU like other consoles of the era.

Crash Bandicoot, loved that game! Especially the levels where you had to run backwards, those were amazing fun
Related / Past discussions:

https://news.ycombinator.com/item?id=9737156

( How Naughty Dog Fit Crash Bandicoot into 2MB of RAM on the PS1) 934 points|ekianjo|10 years ago|247 comments

https://news.ycombinator.com/item?id=32663433

How Crash Bandicoot hacked the original Playstation (2020)

325 points|agomez314|3 years ago|71 comments

Crash Bandicoot: An oral history https://www.polygon.com/2017/6/22/15820540/crash-bandicoot-a...

https://news.ycombinator.com/item?id=14613982

152 points|Tomte|8 years ago|40 comments

Guess it's time for my annual reading of Andy's Crash blog :D
I've never come across this site before, but I remember watching a video on YouTube and one of the creators was talking about making Crash Bandicoot. As someone non-technical, but who grew up playing Crash Bandicoot, it gave me insight into the crazy amount of work that goes into making a game, but also just how much of a genius these people were that tried to push the limits of what the early gen consoles could do!
Now I need to grab my PS1 from the attic and give this a play!
“Hitting the hardware directly was against the rules. But by the time Sony saw the results they needed a Mario killer. It was too late for them to complain.”

Great read!