Simon’s Graphics Blog

Really Old Demos - The Buggy Demo

· Read in about 2 min · (313 Words)
DirectX demo code

This demo is just here for posterity - it formed part of my August 2002 coding portfolio when I was first applying for jobs in the games industry. Be warned, there”s some seriously dodgy coding going on here…

The Buggy Demo

This demo was my first released finished project. It combines stencil shadowing with an open source physics engine written by Russ Smith.

Screenshot

Screenshot

Screenshot

The screenshots show the only level of the demo, which contains a central stack of spheres waiting to be driven into and scattered, a raised platform with a thin ramp winding up to the top, and a set of jumps. The scene can be rendered with up to two light sources, the directions of which can be reassigned in real time.

Downloads

For a decent framerate a card with native vertex shader support (e.g. GeForce3) is required, otherwise a CPU of 1 GHz should be sufficient.

buggy-binary.zip

The source code requires Visual Studio 7, the DirectX 8.1 SDK and ODE 0.03 or above to compile. The textures required for the demo aren”t included in the zip; download the binaries to get the textures.

buggy-source.zip

ODE can be downloaded from Russ Smith’s site at http://www.q12.org/ode/. If you’re having problems compiling a compatible version of ODE, I’ve uploaded some compiled libraries of roughly version 0.03 that are known to function correctly with the demo. You can download those here:

ode-lib-003.zip

In addition, you will need the nvidia shader assembler which is used to compile vertex shader assembler from within the IDE. You can download nvasm here.

Acknowledgements

I’d like to thank the following people and websites for contributions to this demo:

  • StormVision 3D Textures for most of the textures used the demo.
  • The population of #flipcode for comments, suggestions and additional artwork.
  • Nate Waddoups for adding joystick support.

If you’ve warped this demo into something interesting then please let me know! :)

Comments