Microsoft hat die Veröffentlichung des Quellcodes für die D3D9On12-Schicht bekannt gegeben, die eine Implementierung der Device Driver Interface (DDI) bietet und die Umwandlung von Direct3D 9 (D3D9) in Direct3D 12 (D3D12) Befehle ermöglicht. Diese Schicht gewährleistet die Funktionsfähigkeit älterer Anwendungen in Umgebungen, die nur D3D12 unterstützen. Sie könnte beispielsweise für die Implementierung von D3D9 auf Basis der Projekte vkd3d und VKD3D-Proton nützlich sein, die eine Direct3D 12-Umsetzung für Linux anbieten und D3D12-Aufrufe in die Grafik-API Vulkan umwandeln. Der D3D9On12-Code ist in C++ geschrieben und unter der MIT-Lizenz veröffentlicht.
Das Projekt basiert auf dem Code eines ähnlichen Systems, das in Windows 10 integriert ist. Es wird hervorgehoben, dass die Veröffentlichung des D3D9On12-Codes es der Gemeinde ermöglichen wird, Fehler zu beheben und Optimierungen hinzuzufügen. Zudem kann es als Beispiel zum Studium der Implementierung von DDI-Treibern für D3D9 dienen und als Rahmen für die Entwicklung ähnlicher Schichten zur Umwandlung verschiedener Grafik-APIs in D3D12 fungieren.
Gleichzeitig wurde das DXBC Signer-Paket veröffentlicht, das die Signierung beliebiger DXBC-Dateien ermöglicht, die von Drittanbieter-Tools generiert wurden. D3D9On12 verwendet dieses Paket zur Signierung von DXBC, die beim Konvertieren von Shadern in das neue Modell erzeugt werden.
Quelle: opennet.ru
