Gallium Nine allows to run any Direct3D 9 application with nearly no CPU overhead, which provides a smoother gaming experience and increased FPS.
This decouples Gallium Nine from the WINE tree, so that it can be used with any WINE version. There is no need for any WINE patches. A stable, development, or staging WINE release is sufficient.
Gallium Nine Standalone consists of two parts:
d3d9-nine.dll: Gallium Nine Direct3D 9 library
ninewinecfg.exe: GUI to enable/disable Gallium Nine with some additional info about the current state
Official distro packages
Gallium Nine is a fork of the WINE tree, without any chances to be merged upstream. The decoupling of the WINE tree makes it its own upstream.
Ease updates for the user
WINE can be updated independently of Gallium Nine Standalone. Users can mix releases of both projects to their liking. Switching between staging and non-staging does not require a rebuild.
- A Gallium based graphics driver (Mesa 3D)
- Mesa's Gallium Nine state tracker (d3dadapter9.so)
Your distribution may provide a package, avoiding the need to compile the code yourself. The exact usage instructions may vary in this case so check your distribution for the details. The currently known packages are:
- Arch Linux - releases: gallium-nine (AUR), snapshots: gallium-nine-git (AUR)
- Fedora - releases: wine-nine (Copr), snapshots: wine-nine-unstable (Copr)
- Gentoo Linux - app-emulation/gallium-nine-standalone
This part assumes that you downloaded a release binary or compiled using release.sh yourself.
- Extract the tarball in e.g. your home directory
- run the
nine-install.shscript from the directory you extracted the tarball in
The latter symlinks the extracted binaries to your WINE prefix and enables Gallium Nine Standalone. To target another WINE prefix than the standard
~/.wine, just set
WINEPREFIX accordingly before you run
Gallium Nine Standalone comes with a GUI.
For the 32bit version run
wine ninewinecfg and for 64bit
Please see our wiki, which also includes distro specific help.
The DRI3 backend is the preferred one and has the lowest CPU and memory overhead.
As fallback for legacy platforms the DRI2 backend can be used, which has more CPU overhead and a bigger memory footprint. The DRI2 fallback relies on mesa's EGL which provides EGLImages.
You can use the environment variable
D3D_BACKEND to force one of the supported backends:
If not specified it prefers DRI3 over DRI2 if available.