Triton: DirectX 11 Driver for QEMU
Les auteurs ont développé Triton, un pilote Windows en espace utilisateur et noyau qui, combiné à Neptune, apporte le support complet de DirectX 11 aux machines virtuelles QEMU. Plutôt que d'émettre un bytecode intermédiaire comme VirtualBox, l'équipe a implémenté la DDI (UMD) pour transformer les appels DDI en appels DirectX API et réutiliser le protocole Neptune et l'infrastructure KMD dérivée de Venus, réduisant ainsi les transformations et les sources d'erreur. Un défi important a été la gestion des shaders DXBC, car Triton doit reconstituer le conteneur DXContainer et ses métadonnées à partir du seul bytecode transmis par la DDI, opération réalisée par essais et erreurs avec l'aide d'un assistant IA et restant fragile. Sur l'hôte, la prise en charge du swapchain, des textures partagées et des fences a nécessité de déplacer la logique vers le guest et d'implémenter l'import/export de DMAbuf, tandis que sur macOS des backends (DXMT, d3dmetal-native) et des stratégies d'échange de textures et de synchronisation par mémoire partagée ou MTLSharedTextureHandle ont été explorés, D3DMetal offrant de meilleures performances mais étant restreint par une licence non redistribuable. Tout le code est open source, des instructions de compilation et d'exécution (notamment pour macOS et la construction des serveurs render) sont fournies, et des pilotes précompilés signés existent pour tester bien qu'ils restent instables et déconseillés sur des VM critiques.