For those that grabbed my little FPS demo, you should know what I'm talking about.
You'll notice that the down hills that often end up being fatal often come out of the blue. Literally, you're watching the car and suddenly its leaping off a cliff and plummeting to its untimely demize. When you're controlling it yourself, this is still a problem at high speed, because there isn't enough time between you seeing the cliff face and hitting the brake. You invariably fly off at almost full speed and crash at the bottom, rather than braking and driving down the hill safely.
For this reason mainly, the player is going to have to know what terrain is coming up next. I have a number of ideas for this, but there are problems with these ideas, so any suggestions would be welcome.
Idea 1
Using the data of the map, create an image of the entire track using the built in drawing commands, save this bitmap to memory, then display a map of the current area the car is in, somewhere on the screen. Do this by using get image on the large full track picture on the section required and displaying it.
Possible problems - The track bitmap could be absolutely huge. If the track has a lot of height variation and is a very long track, then there could be a 20000*1000 bitmap in memory, for example. Also, will get image from a large bitmap be slow? I dont want any FPS dent from using get image.
Idea 2
Similar to the idea above, but make the map of the required area on the fly, using line commands and box commands etc. Display this in the corner somewhere.
Downside is speed probably. I have a feeling, although I havent tested it, that drawing 2D lines onto a 3D screen every programming loop will dent FPS.
Idea 3
Instead of having a boxed map of the close terrain in a corner of the screen, lines could be drawn on the far right of the screen, which represent the gradient beyond the right of the screen. So basically, the gradient of the track is drawn without any backdrop or anything, directly over the road on the far right of the screen. Similar to how rally games would flash up a left/right turning arrow in the middle of the screen as a corner approaches.
Idea 4
Forget maps, and simply have the camera zoom out more and more as the car speeds up, so you can always see far enough in front of the car when its travelling quickly.
The downside of this is speed, as the more of the matrix (and other objects on the track), the slower the whole thing will run.
This is a bit of a brain teaser. Speed is more important to me than any fancy graphics, so FPS is the main factor to consider. Anyone got any ideas on how to solve this? The player needs to know whats coming up on the road ahead, otherwise he's never gonna be able to slow down in time. Also, when I start adding other things like power up and jumps, traps, etc etc. they need to know they're coming up too.

Machine: P4 2200, 1GB RAM, GeForce4 64MB, Audigy Platinum
http://www.breakbeat-terrorism.co.uk
(It's not all about the coding)