Microsoft har öppnat lagerkoden för att översätta Direct3D 9-kommandon till Direct3D 12

Microsoft har tillkännagett öppen källkod för D3D9On12-lagret med implementeringen av en DDI-enhet (Device Driver Interface) som översätter Direct3D 9 (D3D9)-kommandon till Direct3D 12 (D3D12)-kommandon. Lagret gör det möjligt att säkerställa driften av gamla applikationer i miljöer som endast stöder D3D12; till exempel kan det vara användbart för att implementera D3D9 baserat på vkd3d- och VKD3D-Proton-projekten, som erbjuder en Direct3D 12-implementering för Linux som fungerar genom översättningen av D3D12-anrop till Vulkans grafik-API. Koden för D3D9On12 är skriven i C++ och publicerad under MIT-licensen.

Projektet är baserat på koden för ett liknande delsystem som ingår i Windows 10. Det noteras att publiceringen av D3D9On12-koden kommer att göra det möjligt för communitymedlemmar att delta i att åtgärda fel och lägga till optimeringar, och kan även fungera som ett exempel för att studera implementeringen av D3D9 DDI-drivrutiner och ett ramverk för att skapa liknande lager för översättningar av olika grafik-API:er till D3D12.

Samtidigt publicerades DXBC Signer-paketet, som låter dig signera godtyckliga DXBC-filer som genererats av tredjepartsverktyg. D3D9On12 använder detta paket för att signera DXBC som genereras vid konvertering av shaders till en ny modell.

Källa: opennet.ru

Lägg en kommentar