Gallium3D Gets A Hack So It Can Now Play BioShock Infinite

Written by Michael Larabel in Mesa on 19 August 2015 at 08:45 AM EDT. 18 Comments
MESA
With the latest Mesa Git code and one minor workaround, you can now start running the BioShock Infinite game on the open-source Gallium3D drivers.

BioShock Infinite was ported to Linux back in March. It is a benchmark-friendly game but when it comes to proprietary drivers it performs much better with NVIDIA than AMD Catalyst.

BioShock Infinite requires OpenGL 4.2 support, which the RadeonSI and Nouveau NVC0 Gallium3D drivers now have. However, it also makes use of the OpenGL ARB_copy_image extension from OpenGL 4.3. This extension is described by the OpenGL registry as, "[an] extension enables efficient image data transfer between image objects (i.e. textures and renderbuffers) without the need to bind the objects or otherwise configure the rendering pipeline."


VMware has been working on a proper ARB_copy_image implementation for Gallium3D, but it isn't ready in time for merging for Mesa 11.0. However, Freedreno/Nouveau developer Ilia Mirkin ended up implementing "fake" ARB_copy_image support for Gallium3D. This is just a basic hack for the extension and will only work for the basic uses of ARB_copy_image. However, this hack is enough to make BioShock Infinite happy.

Given that it's a hack / incomplete implementation, the extension isn't advertised by default. But you can easily expose it via the MESA_EXTENSION_OVERRIDE=GL_ARB_copy_image environment variable. With that extension override set and running Mesa Git since last night (this commit), BioShock Infinite should properly play at least on the NVC0 driver.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week