What is OpenGL? =============== OpenGL provides a specification for an application (Grand Prix Legends in this case) to render on graphics hardware. Many video card manufacturers are currently supporting or have plans to support OpenGL by providing software drivers for their cards that implement OpenGL. If OpenGL is implemented properly for their card, then the RASTOGL.DLL driver should allow Grand Prix Legends to work on said card. Disclaimer (i.e. please don't blame us!) ======================================== This driver, RASTOGL.DLL, is a beta version. As such, there may be some incompatibilities with various cards, and it may even crash your system (although it shouldn't cause any harm). We have tested it with only a few different OpenGL implementations, and there are some quirks even with those. It is of course a good idea to keep your eyes open for new OpenGL drivers on your video card manufacturer's Web site (sometimes the reference drivers available from the 3D accelerator chip manufacturer are better and more up to date than those from the card manufacturer). If you are not already intimately familiar with the process of updating your video drivers, then good luck, we hope you enjoy the "ease of use" afforded you by Windows. :) But seriously, just follow the instructions accompanying the drivers very carefully. Available resolutions may vary ============================== The list of available driving resolutions shown on the Options screen does not necessarily represent the resolutions available on your card. Your card may support more, in which case you won't be able to use those not listed; or it may support fewer, in which case you could see some goofy stuff if you select an unsupported resolution. It is always possible to go directly to the Options screen from the Main Menu without switching to the last mode you tried, so if a mode doesn't work, just start the game again if necessary (after rebooting, if necessary), and change the resolution to something else. 640x480 should work if nothing else does. (But we're still making no promises) Core.ini ======== It just wouldn't be in keeping with the times if we were not to provide you with some options to twiddle with. Grand Prix Legends (GPL) uses a file called CORE.INI to control lots of things that are too arcane to be put in the regular user interface. We have included a sample CORE.INI with this driver that contains the required text for controlling the OpenGL options. Those of you who have been playing GPL online may already be familiar with CORE.INI--just add the exact text given in this sample CORE.INI to your existing one. For the rest of you, just copy this sample CORE.INI to your GPL directory (\Sierra\GPL, if you installed it normally). Here's what you can change, and what it does--under the [ OpenGL ] section, there are three lines: TossHighestMip=0 MipFiltering=4 and MirrorsEvery=1 By changing the first line to: TossHighestMip=1 the textures in the game will take only 25% of the memory that they do when =0 is used. This can be helpful if the frame rate is slow, and your card has 8MB of texture memory or less. The images will be a little blurrier, but not too much, and it could help the speed. The second line allows you to control the type of filtering that is done by the accelerator. It is probably easier to just try them out than for me to try and explain all this, so: MipFiltering=0 no filtering, no mipmapping. MipFiltering=1 no filtering, with mipmapping. MipFiltering=2 bi-linear filtering, no mipmapping. MipFiltering=3 bi-linear filtering, with mipmapping. MipFiltering=4 tri-linear filtering. In general, the lower numbers should be faster, with poorer image quality. Some of us prefer 2 to 4, even on a chip that can do tri-linear, though, so try them out... The third line gives you a way to speed up the in-car view when using OpenGL drivers that don't (yet) do a good job of implementing glCopyTexSubImage2D (you don't need to know this). What you do need to know is that by changing the line to: MirrorsEvery=n where n is 2, 3, 4, 5, 6, 7, or 8, only a portion of the mirror will be drawn each frame. 2 means half the mirrors are drawn each frame, 3 means a third of the mirrors are drawn each frame, etc. By choosing a bigger number, the mirrors will look jerkier, but the main in-car view will run faster, giving you better control. Once NVidia, er, your 3D board or chip manufacturer fixes their drivers, you can change the line back to MirrorsEvery=1 to get the whole mirror image each frame. NVidia Riva TNT =============== Currently, one of the best OpenGL-capable chips is the NVidia Riva TNT. It has a few caveats that you should be aware of. The frame rate is much lower when in cockpit than when viewing the car from behind (the F10 view). This is because the mirror images are copied into texture memory each frame using an OpenGL call (glCopyTexSubImage2D, if you're a driver writer, never mind if not) which is not optimized in NVidia's latest GL drivers as of the day I'm writing this (10/28/98). In fact, it appears not to be optimized in several of the implementations we've looked at... But, you can use the MirrorsEvery CORE.INI variable (see above) to help speed the in-car view up until NVidia updates their drivers with an optimized version. There is one other known problem with the drivers that are currently shipping with the STB Velocity 4400 boards--another GL call doesn't work correctly (glPixelZoom, if you care), so the UI screens are a real adventure to navigate. The fix to this is to get the latest NVidia reference drivers (www.nvidia.com). OK, how do I install this GPL driver, so I can start driving? ============================================================= Just copy RASTOGL.DLL and CORE.INI into your main GPL directory-- C:\Sierra\GPL if you installed it normally. Then run the game, select Options, select Graphics Options, and pull down the 3D Accelerator menu. You should see OpenGL listed. Select it, then exit GPL and restart it. In the event that it REALLY doesn't work, you can edit the APP.INI file in the GPL directory and change the line: lastRasterizerDLL = rastOGL.dll ; Last rasterizer DLL selected to: lastRasterizerDLL = softdll.dll ; Last rasterizer DLL selected and save it. You should then be able to run the game and get to the Options screen, at least. David Kaemmer Papyrus Design Group 10/28/98 P.S. Now there are no excuses for using that F10 view! :)