Stefan Wolff's Car Simulator

2005-04-06: A Honda S2000 fronting the camera on the Swiss-Stroll track.

What's all this then?

This page shows some information about my wheeled vehicle simulator. It has no name as of yet (suggestions welcome!). There's information on the history (which you should skip unless you're masochistic), features, news and screenshots for the reading impaired.


I decided early on in the project, that I'd do as much as possible myself. Basically, everything but the platform dependent code is written by myself: ``Why don't you use existing scene graph libraries, etc?,'' you may ask. My answer would be: ``Because it's all challenging - and fun!''. This was, I get to play with most of the fun stuff, yet I still gain valuable experience using a established APIs.

The platform dependent bits are handled using non-evil libraries such as SDL, OpenGL and OpenAL for portability. My main development platform is Linux - porting to Microsoft Windows was hassle-free the last time I tried. Nowadays, the source should compile with no modifications on both platforms.






2005-07-29: BMW M3 just about to roll over at Carlswood Remix.

2005-07-29: A Honda S2000 Spoon showing the reflection of a nearby tree at Schuchter Raceway, showcasing the real-time environment mapping.

2005-07-29: A Lamborghini LM002 demonstrating excessive body roll at Carlswood Remix.

Old screenshots


2005-04-06: Here are a couple of videos. My apologies to the car and track creators. The primitive graphics engine does not do their work any justice. The videos are meant to display the vehicle physics, not the graphics. [ 2005-04-11: The graphics engine has improved a lot since then. Videos to be updated Real Soon Now(TM)! ]

mountain_thrash_lo.mpeg displays an in-car view of a Honda S2000 rushing up a mountain side (``Swiss-Stroll''). 640x480 pixels, 44 seconds, 7.2 Mb.

mr2_drift.mpeg displays a Toyota MR2 GTi going through a banked right-hand turn, drifting slightly, at ``Ruudskogen'', as seen through a fixed camera. 640x480 pixels, 11 seconds, 3.6 Mb.

News (most recent at the top)

Updated the screenshots. The shader engine still needs plenty of tweaking, so I won't update the videos yet. They're mainly supposed to display the physics engine anyway. Nothing has happened since the last update, since I'm too busy writing my ph.d. thesis.
Implemented vertex-shading and environment mapping (using cube maps) over the weekend. Must update screenshots and videos soon!
Implemented object-dependent distance culling. Implemented DOF flags to improve the speed of tyre/road intersection detection.
Finally got around to implementing replays and video generation. The latter is not fully automated yet, though
The past few days saw the introduction of Racer tracks in the sim. I also did a texture cache and axis-aligned bounding box / quadtree sorta thing to speed up tyre/ground intersection testing. The car is riding directly on the polygons of the track - no splines. Checking a squillion polygons 1000 times per second for each wheel is currently the main bottleneck. Carlswood is fine at 160 fps, but Early Fall in Norway goes below 10 fps(!) from time to time.
Graphics were improved by writing some code to load and display .dof files (Ruud van Gaal's file format, used with permission. See Textures are not loaded yet.

Future Plans

These are the plans for the immediate future. Long-term plans involve world domination and are not listed here.



Don't write just to tell me this webpage looks dull. I know.

Additional Credits

Honda S2000 and Honda S2000 Spoon by Tops & Pws
Swiss-Stroll track by Tops.
BMW M3 by Mr. Whippy.
Carlswood track by Strat, remixed textures by Mitch.
MR2GTi by Tor Arne Hustvedt.
``Ruudskogen'' track by Tor Arne Hustvedt.
Lamborghini LM002 by Iroker.
Schuchter Raceway by Snowball.

Track/Car creators: If you want me to remove your work from this homepage, let me know.

Copyright and Fine Print

All copyrights acknowledged.

This page is copyright 2004-2005 Stefan Wolff.