For Those Interested In Direct3D Over Gallium3D

Posted by Michael Larabel on September 25, 2010

There still is great interest and discussion among many users interested in Direct3D 10 and 11 being natively implemented on Linux using a new state tracker that was published this week for the Gallium3D driver architecture. It seems some Wine developers are still in opposition to this effort even though their Direct3D 10 implementation within Wine is still very limited in terms of translating the calls to OpenGL and their Direct3D 11 support really hasn't taken off.

Besides our links to the original Git commits and mailing list posts, for those wishing to follow the development of this "D3D1X" state tracker and Wine, there's a few more links to pass along.

There is this mailing list post over on the Wine mailing list (the talks seemed to have stalled on the Mesa mailing list side), where Luca Barbieri who authored this Direct3D 10/11 state tracker and has even begun on some initial Wine DLLs provided more clarifications on his work.

Luca reiterates the plan is to implement all of the Direct3D core interfaces and to ship those within Mesa/Gallium3D as to allow any native Linux applications to use them. There's also the Wine DLLs that he started coding so that Wine can tap into Gallium3D for this native support. Though in some areas Wine may still need to provide some translation support such as for older Direct3D versions and effects. He went on to further clarify Microsoft's documentation efforts around Direct3D and other words to help clear the concerns about this state tracker's legal status.

There's also another post concerning the multi-OS support for this state tracker. While Mesa/Gallium3D is largely focused on providing Linux graphics support, Mesa and most of the drivers can be built and used under the *BSDs, Solaris, and even Mac OS X. Granted, not all of the hardware drivers will work on all platforms without the DRM/kernel-side code being ported, but in those cases you could really use LLVMpipe to run the commands using the Low-Level Virtual Machine off the GPU.

Luca's also talked about writing a Gallium3D driver that simply would convert things to OpenGL so that it could be used by another driver underneath. At the very least, exposing the D3D1X state tracker within Wine could be done as an optional feature.

Since the last time writing about this topic, Luca has pushed a few more Direct3D state tracker improvements into Mesa master too. There's (untested) support for geometry shader translation, shader dumping, and a few fixes.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. A New X.Org-Free Wayland LiveCD Released
  2. Intel Shows Off GNOME3-Based Tizen Shell
  3. Is there anyway to improve the performance of the...
  4. KDE 4.11 Will Be The Last Major KDE4 Workspaces...
  5. Steam: No used games...
  6. New Intel X.Org Driver Supports All Of Haswell
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite