Alright, so, are there any people out there that would like to work on a Direct3D implementation for the winehq.com tree? I'd love to contribute but I don't know D3D well enough (I'll read up on it). I'm hoping there're a few people out there that would like to, yes?
On Thu, 2002-06-06 at 09:00, Lionel Ulmer wrote: > Hi all, > > As I once started working on Direct3D in Wine and was one of the contributor > to the DDraw code, let me answer some of these questions :-) > > > * What are the tasks for implementing Direct3D? > > It's not easy to separate the tasks. For one, documenting and > re-appropriating the DDraw code would be the first thing to do. > > <start of minor rant> > > As other people discussed it, the current DDraw code in WineHQ's CVS tree is > from TransGaming. I do not say that it's worse than the previous code (it's > certainly better and respects the DLL separation stuff), but my biggest > problem with it is that it was entirely developped 'in-house' and sumbitted > 'as is' to the WineHQ tree without really involving any of the WineHQ > DirectX developpers (like Marcus or me). Now don't undertand this wrong, I > am certainly also to blame because I found other interests at that time and > mostly stopped working on Wine. > > This means that now that TG does not really contribute back much to WineHQ > (even in pure 2D stuff), we have a large piece of code that nobody really > bothered to undertand and is largely unmaintained. > > Now I understand why Linus absolutely refuses big patches doing a lot of > stuff in one go and wants small incremental patches :-) > > Finally, saying 'now let's start working on Direct3D' will not help much if > we do not find at least 3 or 4 people interested in working on it. I once > submitted some D3D work but nobody ever contributed to it and it was mostly > unmaintained once I stopped working on it (and I fear that would be the same > for other parts of Wine like Multimedia, the debugger for example, if Eric > did take some prolonged vacations :-) ) > > So the current situation is *not* TransGaming fault, but largely the > community's for not doing anything at all and letting things in the state it > was (well, not TG's fault except if you consider that they 'bought out' the > people who would have worked on it in their free time, but that is just > plain good business sense :-) ). > > <end of minor rant> > > > * Can older versions be implemented independently from the newer ones? > > This is the big problem when doing DDraw work, designing stuff that : > > a) can work accross multiple DDraw versions (ie find the common stuff and > implement hardware acceleration here and then doing the rest in some > 'emulation' layer). > > b) can work accross multiple object 'types' (for example, a surface can be > the front / back buffer, a texture, a ZBuffer, a compressed texture, some > random buffer, an overlay, ...). > > c) respects the DLL separation (ie puts all 'hardware' related stuff like > X11 calls or OpenGL in the X11drv). > > > * Do we have nothing at all or do we have something? What changes need > > to be done to this something to make it better. > > We still have the old Direct3D code that I wrote to support DirectX 5 / 6 in > CVS (not functionnal, but enough to see the ideas :-) ). > > > * What modifications are necessary to other parts (x11drv, DirectDraw) > > to implement Direct3D? > > As said before, a lot of X11drv work and a DDraw rework :-) > > > * Are there other DirectX areas that are lacking and that will prevent > > games from working even if we get Direct3D working (DirectPlay, > > DirectInput)? > > Mostly all the DirectX 8 (Dinput and DSound 8) if we want to support > Direct3D 3. Otherwise, we should have almost everything needed in the other > DirectX stuff to implement Direct3D. > > > * One item I can suggest is adding support for XVideo to DirectDraw (I > > believe that's where it fits) to enable hardware scaling and YUV > > conversion when playing videos. This would be more for media players > > than games but could be useful anyway. > > I have a patch than I am slowly working on to re-add the Xv support to DDraw > (it's based on some work that Marcus did). But as explained before, it's not > that easy to do :-) > > Lionel > > -- > Lionel Ulmer - http://www.bbrox.org/ > -- Chris [EMAIL PROTECTED]