Hasty Briefsbeta

Bilingual

Triton: DirectX 11 driver for QEMU

4 hours ago
  • Triton is a new Windows driver that brings full DirectX 11 support to QEMU virtual machines using Neptune, a Direct3D protocol forwarding layer.
  • Triton implements the DirectX DDI (Device Driver Interface) correctly instead of replacing system DLLs, ensuring better performance, stability, and compatibility with anti-cheat systems.
  • The DDI approach converts DDI calls back to DirectX API calls, leveraging Neptune's existing serialization protocol without needing a new transport format.
  • A major challenge is reconstructing DXBC metadata from bytecode since the DDI only passes raw bytecode, requiring synthesis of metadata for the host renderer.
  • On the host side, DirectX rendering is handled via DXVK on Linux or DXMT/D3DMetal on macOS, with support for shared textures and fences across processes using emulated mechanisms.
  • Building and running Triton involves compiling various components: ANGLE, libepoxy, DXMT/d3dmetal-native, virglrenderer, QEMU, and Windows drivers, with specific environment variables for macOS.
  • The project is open source with plans to upstream changes, and a pre-built signed Windows driver is available for testing (though still unstable).