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!  :)
