DirectX 6 Driver for Mesa 3.0


This software is distributed under the terms of the GNU Library
General Public License, see the LICENSE file for details.



What do you need ?
------------------

	- A PC with a DirectX 6 video driver installed.

	- Mesa 3.0

	- The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine).
	  The Voodoo2 requires the Glide library 2.51. The Glide 3.0 is not
	  compatible with the Glide 2.x so it doesn't work with the current
	  version of the driver;

	- Visual C++ 5.0 is only compiler test but others should be ok with
       changes to the makefiles (CFLAGS/LFLAGS).

	- DirectX 6 SDK (was a MS download but not sure if still available).

	- SoftIce or another debugger that will get DPF's is nice.


Tested on:
----------
	Windows 95
  	Windows 98
	Windows NT 5.0 (beta 2)


What is able to do ?
--------------------

	- the driver will try and use DirectX to rasterize the OpenGL primitives
	that are sent to the driver.  The driver will fall back to SW  if the rendering 
	context is too big.  The fallback to SW still uses DirectDraw.  If the driver
	fails to support and operation (accum, stencil, etc) then it will try and get
	Mesa to render it in SW.  DirectX 6 features that are unsupported by the 
	installed DirectX 6 driver will be mapped to some other best fit feature.


How to compile:
---------------

	These instructions assume you have Visual C++ installed.

	  You might need to increase you enviroment space.  You can do this by 
	adding the following statement to you config.sys.

	shell=C:\COMMAND.COM C:\ /p /e:8198

	  Next setup you compiler enviroment by running vcvars32.bat in the Visual C++
 	'bin' directoy.

	c:\DevStudio\VC\bin\vcvars32.bat

	  Modify the D3D makefile to point at your SDK install.  Example has the SDK
	installed on my 'f' drive in the root.

	file: \Mesa-3.0\src\makefile.d3d

	SDKROOT=f:\mssdk

	  Now you can simply make the project.  If you look in the makefile you can see
	I have some different targets like 'install'.  

	nmake /f makefile.d3d


FAQ:
----

	1) I don't think the driver is using my DirectX driver.

 	  This maybe true as the current version will only select the Primary D3D driver
	installed.  If you 3D card is the secondary (3dfx) then your out of luck for this
	release.

	2) The driver seems like its not HW accelerated.

	  If you have a video card with limited memory then you might want to try and 
	change your destop resolution to a low setting (640x480x16) so that the 3D part
	of the card has more resources.  Remeber the driver can't make the card better...

	3) Nothing works.

	  Make sure you have a DirectX '6' driver installed.  Check you driver docs for this
	info or use the SDK info utilities.
	  The final 'dll' is named opengl32.dll and is either in the same directory as the 
	OpenGL program or in your system directory (x:\windows\system or x:\winnt\system32).
	  Check your destop resolution.  Most DirectX 6 drivers will only support 16bit and
	32bit color depth.  To find out for sure you can check the DirectX Info Viewer in
	the SDK.
	  

	4) Rendering doesn't look right.

	  Sometimes this is because the card doesn't support a feature that that is required.
	This is usually due to unsupported alpha functions (test/blend) or texture mapping.
	Some cards suffer from too small of an alpha channel.  The driver does its best to
	fallback on unsupported features.  This is not to say the driver may not have a bug(s).

	5) Textures look bad.

	  No mipmapping in this release.


Thanks to:
----------

Brian Paul




Leigh McRae (leigh@altsoftware.com)
February 9, 1999