Coder Social home page Coder Social logo

ixit / wine-nine-standalone Goto Github PK

View Code? Open in Web Editor NEW
272.0 21.0 23.0 382 KB

Build Gallium Nine support on top of an existing WINE installation

License: GNU Lesser General Public License v2.1

Shell 1.78% Python 0.21% C 95.21% Meson 2.80%
linux gaming wine d3d9 mesa gallium nine

wine-nine-standalone's Introduction

Gallium Nine Standalone buildstate

https://wiki.ixit.cz/_media/gallium-nine.png

About

Gallium Nine allows to run any Direct3D 9 application with nearly no CPU overhead, which provides a smoother gaming experience and increased FPS.

Gallium Nine Standalone, as the name implies, is a standalone version of the WINE parts of Gallium Nine.

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

Objective

  • 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.

Requirements

  • A Gallium based graphics driver (Mesa 3D)
  • Mesa's Gallium Nine state tracker (d3dadapter9.so)

Packages

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:

We also provide distro independent release binaries, available as GitHub releases. You can either download these yourself (see Usage below), or install them via Winetricks.

Usage

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.sh script 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 nine-install.sh.

Gallium Nine Standalone comes with a GUI.

For the 32bit version run wine ninewinecfg and for 64bit wine64 ninewinecfg.

Compiling

Please see our wiki, which also includes distro specific help.

Backends

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.

Intel Drivers

Gallium Nine could be used with the new Crocus driver (included since Mesa 21.2) on older Shader model 3.0 aka feature level 9_3 compatible Intel gen4-7 graphics (GMA X3000, GMA 4500, HD 2000-5000; year 2007-2014).

Use the environment variable MESA_LOADER_DRIVER_OVERRIDE=crocus to force using Crocus instead of i965.

All newer Intel iGPU hardware (Broadwell+) is supported through the already working Iris driver.

Debugging

You can use the environment variable D3D_BACKEND to force one of the supported backends:

  • dri3
  • dri2

If not specified it prefers DRI3 over DRI2 if available.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.