What's the difference between a technique and a hack?

What's the difference between a technique and a hack?

Rate This
  • Comments 2

While answering a question on the Creators Club forums, I found myself thinking about the difference between general purpose rendering techniques, which tend to be flexible, reusable, and widely understood, versus game specific hacks, which rely on creativity and lateral thinking to achieve their desired result, often by efficiently taking advantage of some other work the game was already doing.

The world is full of knowledge about general purpose rendering techniques. These are presented at conferences, written about in books, and described on blogs and forums. But there is less information about game specific hacks, most likely because these are only relevant to the game they were designed for. Also I suspect some developers might be embarrassed to admit in public just how many shortcuts they took :-)

This struck me as a shame. Sure, these hacks may only be directly applicable to a particular game or platform, but the delicate balancing acts that can achieve interesting effects with a minimum of resources are relevant to all developers.

So I decided to talk about some of the techniques my team used to create MotoGP.

Background:

  • Shipped in 2002, with a sequel in 2003
  • One year of development for each version
  • 6 programmers, 12 artists, 2 designers, and 2 audio guys
  • Designed and optimized for the original Xbox, but we also shipped a PC version

MotoGP used two "proper" (aka. at least somewhat general purpose) rendering techniques that are, as far as I know, original and unique:

  • The road texture used realtime motion blur to reduce aliasing and create a sensation of speed. See how the tarmac is blurred along the direction of motion in these screenshots:

image    image

We also used a number of techniques I have written about elsewhere on this blog:

For laughs, we implemented some stylized rendering effects as unlockable Easter eggs. Our approach was similar to this XNA Framework sample, but with less sophisticated edge detection. I still think it looked pretty cool though:

image    image 

But wait, there is more! Unless you are making a motorbike racing game for Xbox-1 hardware, the following ideas may not all be immediately applicable, but I hope you will find some of them interesting and possibly even useful.

Stay tuned...

  • Very interested in why the second MotoGP took just as long as the first. How many changes to the core technology or engine happen between game one and two?

    Were they very different games on the inside?

  • > Very interested in why the second MotoGP took just as long as the first. How many changes to the core technology or engine happen between game one and two?

    We made incremental improvements throughout the engine (for instance the detail texture motion blur technique was added in v2) but the core of the game was the same.

    For the programming team, most of the second year was spent adding online networking and LIVE support.

    For the artists, they were building new tracks and bikes. The original game had 10 tracks: the sequel had 18.

Page 1 of 1 (2 items)
Leave a Comment
  • Please add 1 and 3 and type the answer here:
  • Post