A Microsoft abriu o código da camada para traduzir comandos Direct3D 9 para Direct3D 12

A Microsoft anunciou o código aberto da camada D3D9On12 com a implementação de um dispositivo DDI (Device Driver Interface) que traduz comandos Direct3D 9 (D3D9) em comandos Direct3D 12 (D3D12). A camada permite garantir o funcionamento de aplicações antigas em ambientes que suportam apenas D3D12; por exemplo, pode ser útil para implementar D3D9 baseado nos projetos vkd3d e VKD3D-Proton, que oferecem uma implementação Direct3D 12 para Linux que funciona através a tradução de chamadas D3D12 para a API gráfica Vulkan. O código para D3D9On12 foi escrito em C++ e publicado sob a licença do MIT.

O projeto é baseado no código de um subsistema semelhante incluído no Windows 10. Ressalta-se que a publicação do código D3D9On12 permitirá que os membros da comunidade participem na correção de erros e na adição de otimizações, podendo também servir de exemplo para estudar a implementação de drivers DDI D3D9 e uma estrutura para criar camadas semelhantes para traduções de várias APIs gráficas em D3D12.

Ao mesmo tempo, foi publicado o pacote DXBC Signer, que permite assinar arquivos DXBC arbitrários gerados por ferramentas de terceiros. D3D9On12 usa este pacote para assinar DXBC gerado ao converter shaders para um novo modelo.

Fonte: opennet.ru

Adicionar um comentário