|Home||Racer's nerve center back in 2003; from left to right: Linux, Amiga, Mac, PC and SGI IRIX.|
Here's some information about the internals of the program, and references to topics that you may find useful when you're doing your own carsim.
The source code is largely being developed on Windows these days. Originally Racer was started on an SGI O2 running IRIX (a Unix variant). These machines had nice solid OpenGL capabilities, but SGI is sadly no longer a player in the low-end market.
On the PC, I use Microsoft Visual C++ 9.0 (Visual Studio 2008); and on Linux I use G++ version 2.91.66. Originating from the SGI, I use a library named QLib to abstract the OS. This library was created inhouse for a lot of other applications. Next to QLib, which became a bit large, other parts are in use. I'll sum them up for the PC version:
For sound, I have chosen FMOD; great API with little nonsense calls (unlike DirectSound for example). On Win32, DirectInput is very useful to deal with wheels, multiple buttons etc. I've looked at OpenAL, but it looks a bit less supported, although I could use it on the SGI platform. Perhaps I'll switch one day and use OpenAL after all. Doesn't matter really for now, that can be changed later on without too much hassle.
The ini files you may see here & there are based on the QInfo class in QLib. This is a class based a bit on the Windows .INI files, but it handles trees instead of just section/value. It is much like the Windows registry,only less crowded.
Here is more information about the internals of the game and general information on racing simulation programming.
PROBLEMS THAT YOU MAY ENCOUNTER
Alas, the areas of programming a carsim are countless (but that's what makes it a challenge). Here are helpful links to help you with the problems you may and probably will encounter:
If you are adventurous, you may want to port Racer over to your favorite platform. Check out some hints here.
Information on physics on this site:
Following are a few links on the net with more information on car physics (not necessarily related to simulation):
ADVANCED RACER TOPICS
Rarely used technical features in Racer:
(last updated December 30, 2014 )