4 This file contains information about Wine's implementation of
7 The current version requires :
8 * Mesa (tested with version 3.1 beta)
11 To minimize the impact on DirectDraw (i.e. to reuse most of the code
12 already done for DirectDraw), I decided not to start with an
13 implementation based on GLX, but on OSMesa. This way, all the OpenGL
14 rendering are done in a 'private' memory buffer, buffer that will
15 copied back to the DirectDraw Surface each time a 3D scene
16 finishes. It is not optimal for execution speed (on each frame, the
17 OpenGL buffer is converted from 32 to 16 bpp and copied onto the
18 screen) but is for development (I had almost nothing to change in
19 DirectDraw). Moreover, 99 % of the code in the Direct3D implementation
20 is 'device independant' (i.e. GLX / OSMesa / whatever), so that
21 changing to GLX will have only a minor impact on Direct3D's code.
26 The home of Mesa should soon be http://www.mesa3d.org/
27 But for now, check http://www.ssec.wisc.edu/~brianp/Mesa.html
29 For precompiled RPMs, use AltaVista or FTPSearch, but I prefer to 'Use
32 WARNING : if you experience crashes in D3DTexture2_Load, see file
33 d3dtexture.c for a 'cure'. You could also patch your version of Mesa
34 or wait for version 3.2b (that should have the bug corrected).
39 TODO (well, once the code will be put in the dll/ddraw directory)
44 Some programs with which I tested the code :
46 * BOIDS.EXE (DX5.0) : works great. Only thing missing is the
47 texturing and transparency on the spinning gobes. Lighting seems to
48 be a bit different than the Real One.
50 * TWIST.EXE (DX3.0) : vertex transformation works as it
51 should. Texturing and lighting still off.
53 * Tomb Raider II (DX5.0) : works perfectly (but slowly). All the
54 calls needed to make TR2 work have been written.
56 * Jedi Knight (DX3.0) : does not start
58 * Shadow of the Empire demo (DX3.0) : displays a mangled intro screen
59 (only blue squares on the screen)
61 * Forsaken Demo : starts to work. Texturing is missing and it is
64 * Grim Fandango (DX ?, seems to be 3.0 !!) : does not start.
68 * work on optimizing Execute Buffers (i.e. Direct3D 3.0)
69 * real GLX implementation (will need a complete rewrite of DirectDraw
70 also) to have 3DFx support
71 * restructuration of all the DDRAW.DLL (put that in the dll
72 directory, better separation of 'drivers, ...)
73 * start looking into DirectX 6.0
74 * inquire on Mesa / XFree86 mailing lists about direct access to
75 display hardware (for games such as Tomb Raider II that displays
76 vertices that are already in screen coordinates)
77 * look into thread safeness...
80 Lionel Ulmer - ulmer@directprovider.net
81 Last updated : Tue Jan 19 1999