Firma Microsoft udostępniła kod warstwy do tłumaczenia poleceń Direct3D 9 na Direct3D 12

Firma Microsoft ogłosiła udostępnienie open source warstwy D3D9On12 wraz z implementacją urządzenia DDI (Device Driver Interface), które tłumaczy polecenia Direct3D 9 (D3D9) na polecenia Direct3D 12 (D3D12). Warstwa umożliwia zapewnienie działania starych aplikacji w środowiskach obsługujących tylko D3D12, np. może być przydatna przy implementacji D3D9 w oparciu o projekty vkd3d i VKD3D-Proton, które oferują implementację Direct3D 12 dla Linuksa działającą poprzez tłumaczenie wywołań D3D12 do graficznego API Vulkan. Kod D3D9On12 jest napisany w C++ i opublikowany na licencji MIT.

Projekt opiera się na kodzie podobnego podsystemu zawartego w Windows 10. Należy zauważyć, że publikacja kodu D3D9On12 umożliwi członkom społeczności udział w naprawianiu błędów i dodawaniu optymalizacji, a także może służyć jako przykład do studiowania wdrożenia sterowników D3D9 DDI oraz framework do tworzenia podobnych warstw do tłumaczeń różnych API graficznych na D3D12.

W tym samym czasie wydano pakiet DXBC Signer, który umożliwia podpisywanie dowolnych plików DXBC generowanych przez narzędzia firm trzecich. D3D9On12 używa tego pakietu do podpisywania DXBC generowanego podczas konwersji shaderów na nowy model.

Źródło: opennet.ru

Dodaj komentarz