Merge branch 'mesa_7_6_branch'
[mesa.git] / docs / README.D3D
1
2 DirectX 6 Driver for Mesa 3.0
3
4
5 This software is distributed under the terms of the GNU Library
6 General Public License, see the LICENSE file for details.
7
8
9
10 What do you need ?
11 ------------------
12
13 - A PC with a DirectX 6 video driver installed.
14
15 - Mesa 3.0
16
17 - The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine).
18 The Voodoo2 requires the Glide library 2.51. The Glide 3.0 is not
19 compatible with the Glide 2.x so it doesn't work with the current
20 version of the driver;
21
22 - Visual C++ 5.0 is only compiler test but others should be ok with
23 changes to the makefiles (CFLAGS/LFLAGS).
24
25 - DirectX 6 SDK (was a MS download but not sure if still available).
26
27 - SoftIce or another debugger that will get DPF's is nice.
28
29
30 Tested on:
31 ----------
32 Windows 95
33 Windows 98
34 Windows NT 5.0 (beta 2)
35
36
37 What is able to do ?
38 --------------------
39
40 - the driver will try and use DirectX to rasterize the OpenGL primitives
41 that are sent to the driver. The driver will fall back to SW if the rendering
42 context is too big. The fallback to SW still uses DirectDraw. If the driver
43 fails to support and operation (accum, stencil, etc) then it will try and get
44 Mesa to render it in SW. DirectX 6 features that are unsupported by the
45 installed DirectX 6 driver will be mapped to some other best fit feature.
46
47
48 How to compile:
49 ---------------
50
51 These instructions assume you have Visual C++ installed.
52
53 You might need to increase you enviroment space. You can do this by
54 adding the following statement to you config.sys.
55
56 shell=C:\COMMAND.COM C:\ /p /e:8198
57
58 Next setup you compiler enviroment by running vcvars32.bat in the Visual C++
59 'bin' directoy.
60
61 c:\DevStudio\VC\bin\vcvars32.bat
62
63 Modify the D3D makefile to point at your SDK install. Example has the SDK
64 installed on my 'f' drive in the root.
65
66 file: \Mesa-3.0\src\makefile.d3d
67
68 SDKROOT=f:\mssdk
69
70 Now you can simply make the project. If you look in the makefile you can see
71 I have some different targets like 'install'.
72
73 nmake /f makefile.d3d
74
75
76 FAQ:
77 ----
78
79 1) I don't think the driver is using my DirectX driver.
80
81 This maybe true as the current version will only select the Primary D3D driver
82 installed. If you 3D card is the secondary (3dfx) then your out of luck for this
83 release.
84
85 2) The driver seems like its not HW accelerated.
86
87 If you have a video card with limited memory then you might want to try and
88 change your destop resolution to a low setting (640x480x16) so that the 3D part
89 of the card has more resources. Remeber the driver can't make the card better...
90
91 3) Nothing works.
92
93 Make sure you have a DirectX '6' driver installed. Check you driver docs for this
94 info or use the SDK info utilities.
95 The final 'dll' is named opengl32.dll and is either in the same directory as the
96 OpenGL program or in your system directory (x:\windows\system or x:\winnt\system32).
97 Check your destop resolution. Most DirectX 6 drivers will only support 16bit and
98 32bit color depth. To find out for sure you can check the DirectX Info Viewer in
99 the SDK.
100
101
102 4) Rendering doesn't look right.
103
104 Sometimes this is because the card doesn't support a feature that that is required.
105 This is usually due to unsupported alpha functions (test/blend) or texture mapping.
106 Some cards suffer from too small of an alpha channel. The driver does its best to
107 fallback on unsupported features. This is not to say the driver may not have a bug(s).
108
109 5) Textures look bad.
110
111 No mipmapping in this release.
112
113
114 Thanks to:
115 ----------
116
117 Brian Paul
118
119
120
121
122 Leigh McRae (leigh@altsoftware.com)
123 February 9, 1999
124