Programmer Shares Experiences of Developing on N64 and GameCube
Posted by Thomas Whitehead
'N64: Everything just kinda works'
There may be some who read this article that are aspiring game designers, possibly playing around with PC development tools or maybe even a Raspberry Pi device — that's a super-cheap computer, for those that don't know. Beyond that group there are surely plenty of gamers curious about how a game goes from code to a piece of interactive entertainment with hours of play time. While learning about development in detail will take months and years of learning and experience, it's still possible to have a brief insight from those in the industry.
Cory Bloyd, a programmer with experience on big releases, wrote a short and informal comment on Reddit with brief outlines of his development experiences. He covered nine systems in total, covering three console generations, and these included entries on Nintendo 64 and GameCube. Most of it is understandable for anyone, with just a few examples of techno-jargon to send you to a google search, and we've copied the Nintendo entries for you below.
- N64: Everything just kinda works. For the most part, it was fast and flexible. You never felt like you were utilizing it well. But, it was OK because your half-assed efforts usually looked better than most PS1 games. Each megabyte on the cartridge cost serious money. There was a debugger, but the debugger would sometimes have completely random bugs such as off-by-one-errors in the type determination of the watch window (displaying your variables by reinterpreting the the bits as the type that was declared just prior to the actual type of the variable --true story).
- GameCube: I didn't work with the GC much. It seems really flexible. Like you could do anything, but nothing would be terribly bad or great. The GPU wasn't very fast, but it's features were tragically underutilized compared to the Xbox. The CPU had incredibly low-latency RAM. Any messy, pointer-chasing, complicated data structure you could imagine should be just fine (in theory). Just do it. But, more than half of the RAM was split off behind an amazingly high-latency barrier. So, you had to manually organize your data in to active vs bulk. It had a half-assed SIMD that would do 2 floats at a time instead of 1 or 4.
As he's writing from personal experience the most recent Nintendo systems miss out in favour of their HD rivals. So, what do you think, is that what you'd expect a programmer to say about working on these systems, and do you actually think about how games are put together as you play them?