==== Prerequisites ====
You can prevent weird errors and glitches caused by unfinished wine libs by installing the original d3dcompiler_43.dll and d3dx9_24.dll - d3dx9_43.dll
==== Requirements ====
* xorg-server **>= 1.16**
* libxcb & xcb-proto **>= 1.11** (only exception is Debian, where is 1.10 enough)
* To use the DRI3 backend, xf86-video-nouveau **>= 1.0.11** (for nVidia cards), xf86-video-ati **>= 7.6.0** (for AMD Radeon cards), xf86-video-intel **>= 2.99.916** (for Intel cards, recently disabled DRI3 in development git, must be reenabled)
* To use the DRI2 fallback (slower but avoid DRI3 potential issues with GL): mesa compiled with **--egl-platforms=drm,x11**
* mesa ** >= 10.4 ** with parameter **--enable-nine**
**Why is DRI3 recommended?**
The **Direct3D 9 architecture** matches closer to the **DRI3/Present** model, thus why we choosed to base on it for our implementation.
However we implemented a **DRI2/Present** fallback, which emulates DRI3 with a buffer copy, to be used when DRI3 is unavailable (due to bugs in DRI3 GL stack, DRI2 is preferred by distributions).
* **[[d3d9_dri3|more information about DRI3]]**
==== Build ====
* http://cgit.freedesktop.org/mesa/mesa (**master** or **any branch above 10.4**)
* https://github.com/iXit/Mesa-3D/ (staging & testing branches)
* **master** branch (follow **Mesa-3D master** branch)
* **hacks** branch (follow **iXit master** branch, including various hacks //[mostly nouveau]//)
Currently, wine must be compiled from special repository or must be patched.
* https://github.com/iXit/wine (master branch)
Some patches can be found at http://download.ixit.cz/d3d9/ //(not necessarily up-to-date)//
Here: https://github.com/sarnex/wine-d3d9-patches is also maintained a patch to apply to the last version of wine
You should build mesa as usual, only add
./configure --enable-nine
For the wine build, you'll need to have Mesa with Nine already. Then, simply pass
./configure --with-d3dadapter
**Note: If you are cross-compiling, you will need to set PKG_CONFIG_PATH to point to the correct-architecture d3d.pc**
You do not need to specify if you are going to use the DRI3 backend or the DRI2 fallback. At runtime it'll detect the one available (with a preference for DRI3).
==== Prepared packages ====
**LiveCD:**
* http://www.gearsongallium.com/?cat=72&lang=en
maintainer: pontostroy
**Ubuntu/Kubuntu/Mint:**{{ :kubuntu.png?nolink|}}
* wine (dri3 and dri2) https://launchpad.net/~commendsarnex/+archive/ubuntu/winedri3
* Mesa-3D (dri3) and DDX https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers
maintainers: oibaf (Mesa-3D), sarnex (wine)
**Arch Linux:**{{ :archlinux.png?nolink|}}
* Mesa is available in [extra] and development versions are available in the AUR under mesa-git.
* wine-staging-d3dadapter is available in the AUR.
* PlayOnLinux also has up-to-date versions of wine with --d3dadapter.
* More info available at https://wiki.archlinux.org/index.php/Unofficial_user_repositories#mesa-git
**openSUSE:**{{ :opensuse.png?nolink&64|}}
*Mesa-3D (git), Wine (iXit), LLVM, libdrm http://download.opensuse.org/repositories/home:/pontostroy:/X11/
*Mesa-3D Debug (iXit), Wine Debug (iXit) http://download.opensuse.org/repositories/home:/pontostroy:/gallium-nine/
*Mesa-3D (iXit) http://download.opensuse.org/repositories/home:/pontostroy:/branches:/home:/pontostroy:/gallium-nine/
*Mesa-3D (stable) http://download.opensuse.org/repositories/X11:/XOrg/
maintainer: pontostroy
**Gentoo:**{{ :gentoo.png?nolink|}}
* xorg-server and other deps are in ::x11 overlay
* Mesa-3D with +d3d9
* Wine with +d3d9
maintainer: okias (Mesa-3D), NP-Hardass/Sarnex (wine)
// Is your favorite distribution missing? Prepare packages and let us know on IRC! We'll add it to the list!//