Cool stuff. I assume the car is a sprite? How many rotated sprites do you think you'll need? Or are going to go for an on-the-fly rotation?
It's a bitmap indeed. For the empty car, I have 4096 sprites (3 axes, 16 orientations on each axis). Passenger overlay is not yet created, but would need the same number of sprites at least.
For this roller coaster, the 'roll' is always 0, so you could reduce the set to just 256 sprites. In the general case however, you'll probably need all (or most) sprites.
The current sprite sheet is 1.3MB (at a tile-size of 64 pixels wide, 8bpp), with all orientations. It has a lot of 'empty space' around the cars, but if you add passenger sprites, and have several different roller coasters flying through loops at the screen, it adds up quickly. I really wonder how the original program managed to handle such amounts.
My project: Messing about in FreeRCT
, dev blog
, and IRC #freerct at oftc.net