Microsoft's Mesa D3D12 Gallium3D Code Adds Support For OpenGL SSBOs

Written by Michael Larabel in Microsoft on 28 December 2021 at 05:59 AM EST. 15 Comments
Microsoft continues improving the Gallium3D Direct3D 12 path within Mesa for getting more of OpenGL running atop it on Windows.

The latest big ticket addition to this Mesa D3D12 code that is just of benefit to Windows is implementing OpenGL Shader Storage Buffer Objects (SSBOs). Shader Storage Buffer Objects are used for storing and retrieving data within GLSL while being more versatile than Uniform Buffer Objects. The functionality is defined by the ARB_shader_storage_buffer_object extension mandated by OpenGL 4.3.

The Mesa D3D12 code right now still only has full support up to OpenGL 3.3 with many extensions left to tackle across all OpenGL 4.x revisions, but at least SSBO now in place is another practical step forward. As part of this enablement changes were made to the DXIL code for working with GL NIR in addition to SPIR-V.

This work is all part of Microsoft's effort for getting OpenGL (and OpenCL) working atop Direct3D 12 for use on Windows when lacking native OpenGL/OpenCL driver support as well as with use under WSL. More details within this merge request that on Monday made it into Mesa 22.0.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week