This README file describes the working of the Direct
3D patch.  This file updated last on April 15, 1997.
Please note that this is an initial beta release of
the 3D driver and does not support all 3D cards or all
3D features of the cards.
MDK Direct3D notes.

1. Drivers.

The proper functioning of Direct3D is entirely dependant
on the user having the correct drivers on their machines.
MDK uses several features of Direct3D which may not be in
some of the older drivers supplied with cards.  At the end
of this document are the URL's for the places where we found
the drivers we tested MDK with.  Note that some of these
drivers do not do everything that MDK needs them to do.
If this is the case with the driver for your card, then
contact the manufacturer directly and enquire about the
availability of new drivers.  A complete list of what MDK
needs the driver to do and what is optional is available
to card vendors to help in this respect.

2. The Direct3D options page and checking your driver.

In the options menu there is a new entry, Direct3D.
Selecting this allows you to configure how MDK uses Direct3D.
The entries in the Direct3D options menu are:-

Bilinear filtering    (on/off/not available)
Turns bilinear filtering on and off for smoother textures.

Smooth shaded stream (on/off/not available)
The stream section of the game has been improved graphically
on cards which handle RGB gouraud shaded alpha blending.

Masked Textures (Chroma key/texture alpha)
Determines how MDK handles making parts of textures see through.
This is mainly used in the explosion texture.  If explosions
have a black outline then this mode is probably set wrong.  If
explosions have a black outline even after changing this option 
then you need new drivers.

Texture Error Detection (Direct3D / Direct3D + Shiny)
Some drivers do not return errors when a texture fails to
load properly, causing improper display of the scene.  Because
of this, MDK checks the free texture memory before and after a
texture load, and if this is the same, it says the texture has
failed to load.  The Direct3D section must be selected on
drivers which do not support returning the free texture memory.
If your textures do not appear, and the game runs very slowly,
then the "Direct3D" option should be selected.  If the game runs
fine, but some textures show garbage (one culprit = 2Mb Mystique)
then the "Direct3D + Shiny" option should be selected.
If a mixture of both is seen (white textures with Direct3D + Shiny
and some garbage with Direct3D) then your drivers are very bad indeed,
and should be replaced ASAP.

Max. Texture size (64x64 128x128, 256x256)
This limits the maximum size that a texture can be.  On some 2Mb cards,
it is very unwise to select the 256x256 option.  On a 2Mb Mystique,
the game will run correctly with the 256x256 option selected, but on
other 2Mb cards, you may need to select the 128x128 option or even the
64x64 option.  This option, as all the options, can be changed mid-game
so if a particular room needs more texture space, just drop the max texture
size down a bit.

Test.
This enables the Direct3D features test.
The tests are, in order:-
Flat color
Textured
Transparency
Gouraud transparency
Lines
Gouraud lines
Transparent lines

Each test will show markedly different results from the last, so
if you are unsure as to whether or not something changed, then the
feature probably isn't working and you should try to get new drivers.
The gouraud lines and transparent lines are a little different to the
other tests in that they show a box of colour made up of horizontal
lines.  The Gouraud shaded box should be smoothly shaded from black
to white, and the transparent lines should allow you to see the
flat color test through it.
During testing we had one crash problem with an older 3dfx driver when
we tried to do the lines test, so if after a couple of seconds on the
gouraud transparency screen, the test hangs, then your driver does not
properly handle the line commands, and you should attempt to install a
new version.

Any options you change on the Direct3D options screen will be saved to
disk on exit of the game.


3. Driver URLs:-
Here are the URLs where you should be able to find the latest version
of the drivers for your 3D card.  You can look under either card
manufacturer or chip manufacturer, but I recommend the card manufacturer
to fully support all features of your card.

All drivers (probably the best place to look):
http://www.avault.com/hardware/biosdrv.asp

3dfx
http://www.3dfx.com/game_dev/updates_bench.html

ATI
http://www.atitech.com/drivers/drivers.html

Canopus
http://www.canopuscorp.com

Cirrus Logic
http://www.cirrus.com/support

Creative
http://creative-ca.creaf.com/wwwnew/products/graphics/ps_graph.html

Diamond
http://www.diamondmm.com/product-support/drivers/driver-index.html

Intergraph
http://www.intergraph.com/ics/I3D100

Rendition
http://www.rendition.com/index2.html

S3
http://www.s3.com/bbs/0main/topindex.html

Sierra
http://www.sierra.com/hardware/screamin3d


4. FAQ

Q. Why doesn't the XXX feature work on my card?
A. It probably does work on your card, its just that you have old
   drivers (or the card manufacturer has released unfinished drivers).
   Look at the URLs above to download new drivers, or contact the
   card manufacturer to complain if you have the latest drivers.

Q. My textures just show white and my framerate is really slow. What
   is wrong?
A. The Texture Error Detection selection in the Direct3D options menu
   is set to "Direct3D + Shiny" and your driver does not correctly
   report free texture memory.  Try setting it to "Direct3D".

Q. Why are of my textures corrupted?
A. The Texture Error Detection is set to "Direct3D" and your driver is
   very naughty and returns no errors when a texture upload fails.  Try
   changing the error detection mode to "Direct3D + Shiny" which tries to
   predict when a texture error has occured and fix it. If you already have
   this option selected or you get white textures with this option selected,
   then you need new drivers.

Q. Why do some textures not appear and the framerate slow down at certain points
   in the game?
A. You have your max texture size set too large for the memory present on your
   3D card.  Try lowering it.  Although MDK tries to intelligently keep the
   latest textures on the video card, sometimes just too many textures are needed
   to complete a scene.  This varies room to room and even viewpoint to viewpoint,
   so the texture size option can be altered mid-game safely to get around this.

Q. Why do my explosions have a black outline?
A. See the explanation of Masked Textures option, above.

Q. Why does my sound go all screwy when there are polygons on screen?
A. Some drivers hog the hardware cycles for transferring data, making the
   sound slow down/dropmout.  The only known fix is to download new drivers.

Q. Why do you keep telling me to download new drivers?
A. When Microsoft wrote DirectX, they put a burden on the card manufacturers
   to write drivers for their cards to get the best performance from them.
   However, it seems that the DirectX standard for drivers was not very clear,
   and so card manufacturers were left guessing what to do for certain things.
   This has led to driver delays and incompatibilities (not good for a "standard"),
   and drivers missing key features, or reporting the presence of key features,
   but not implementing them...

Q. Why isn't my framerate as fast as I think it should be?
A. How fast do you want it to be?
A2.Ask the card manufacturer when you ask about the latest drivers...
