If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
No announcement yet.
Direct3D 9 Support Released For Linux Via Gallium3D, Running Games
So this is limited to Nouveau / open Radeon only? I'd rather see DX11 support added to Wine. There are new games coming with DX11 requirement which won't be usable with Wine. For example Witcher 3 (and it's not clear whether they'll ever release an OpenGL/Linux version).
They may well release some kind of OpenGL version for Mac OSX, afterall The Witcher 2 came with a Mac version, but they will NOT release a Linux version because they can't get it to run on the Raspberry Pi. Where did you read about The Witcher 3 not support DX versions earlier than DX11?
If not, and as most of the proprietary driver code is shared between operating systems, Nvidia and AMD just need to "enable it" for Linux builds ?
Patent problems? Probably not, but this is Microsoft and they do have money.
As far as how proprietary code goes, that's not how things work. In order to use this you'd need a driver that support Gallium 3D. Both AMD and Nvidia proprietary drivers don't use any Gallium or Mesa. They have their own secret layer of stuffs. Only the open source drivers for their GPU's are using Gallium 3D.
Intel has open source drivers but they only use Mesa, and no Gallium. The way things are right now Nouveau the Nvidia open source driver, is piss slow. AMD open source drivers are nearly as fast as proprietary.
It's a good time to be an AMD graphics owner right now.
If the patch gets accepted by Wine and Mesa, and people begin to use it, it might be worth it for NVidia to enable it in their binary blob.
Nvidia will probably never support this, as with AMD. Far more so with Nvidia, since they don't release any code.
The problem is will this state tracker see continued development? If nobody works on it, then it'll be left for dead. Then there's Wine, who seems to hate the idea cause it's Linux only. CodeWeavers basically runs Wine and they do make CrossOver. So it's against their business model I think?
Christoph Bumiller seems to have done most of the work, since he's got games working. So someone could take it and make a WineDX version that specifically uses the DX9 state tracker.
They may well release some kind of OpenGL version for Mac OSX, afterall The Witcher 2 came with a Mac version, but they will NOT release a Linux version because they can't get it to run on the Raspberry Pi.
Then they also shouldn't release a Windows version, because I can't run it on my EeePC 701.
It doesn't matter if it's on it's death-bed. They're lots of D3D9 Games that people could play, remember even win98 has DX9 support. That's a lot of Games for people to play, fun games, unlike most redundant cash-grab garbage today.
You're right about having a large collection of games and install base now (even winxp is still second to win7 in market share by only a slim margin) and I definitely agree, I'm just worried that the ms BS machine will try and put the lid on it, although I sure hope other parties step up and keep d3d9 afloat.
Minor point but you're thinking of DRM. DRI is an X11 extension that allows X applications to authenticate and use DRM drivers with X11 surfaces. We've since gone to DRI2 and soon DRI3.
And finally, to everyone:
You do not get an unconditional magic 2x speed boost running this. It's completely up to how the application works.
Direct3D 9 means only Direct3D 9. Not 8.1, not ddraw, just 9.0c.
1.) seems a smart of choice learn from failure and make it windows apps only is reasonable enough
2.) the backend seems it stays out the way so wine developers should be more receptive about this change than last time
I'm still not convinced it will go well with Wine developers. They're a conservative bunch. Heck, they don't even have PulseAudio support yet. But I'd love to see that. It would probably mean that r600g would run faster than fglrx when playing certain games on Wine. It would also be nice to see benchmarks.
Right now it's so much easier and less error prone to just boot windows when you wanna play.... For many years nothing will change in Linux when it comes to games. Things are starting to move but it will take many years before we will be able to play windows games on Linux at similar performance.
Nor Nvidia, nor AMD, nor Intel or other company provide the D3D state_trecker with their Linux driver, only the OGL state_tracker. As you all know core drivers are unified and they accept state trackers for different APIs (libD3D32.dll - libGL32.dll). Also front-ends like HLSL to IL are not provided ether in order to support native HLSL compilers. The best solution is to have an D3D state_tracker for MESA that you can use with closed drivers as well in the future. In the beginning you can use MS_HLSL_compiler with the GLSL_backend (front-end for the driver) and a simple patch, you can have IL or HW code this way. Then you can have your own compiler. Wine today uses MS_HLSL_compiler to do D3D_asm (lower level vm bytecode), but not IL or HW code. Then they use D3D_asm to OGL_source. Then they give OGL_source to the GPUs_GLSL_compiler to make first vm bytecode and then IL or HW code. Emulation=Not good. State_trackers=Good. The same for everything else, for example Flash state_tracker for HTML5. That way you don't translate anything, you just add Flash scripting support to HTML5 and HTML5 mechanism does the rendering (with special rules).