Blog do Edivaldo – Informações e Notícias sobre Linux

vkd3d 1.11 lançado com novas funções e melhorias

E foi lançado o vkd3d 1.11 com novas funções e melhorias. Confira as novidades dessa atualização e veja como instalar no Linux.

Vkd3d é um pacote que fornece uma implementação do Direct3D 12 usando chamadas para a API gráfica Vulkan e inclui várias bibliotecas principais. O código do projeto é distribuído sob licença LGPL 2.1.

vkd3d é a camada de tradução do Direct3D 12 para Vulkan do Wine. A biblioteca libvkd3d contém implementações do Direct3D 12, abrangendo uma ampla gama de funções como computação e gráficos, filas e listas de comandos, identificadores, entre outros.

Também é fornecida a biblioteca libvkd3d-shader que fornece um tradutor dos modelos de shader 4 e 5 para uma representação SPIR-V intermediária.

Esta biblioteca oferece suporte a sombreadores de vértice, pixel, tesselação, computação e geometria simples, bem como serialização e desserialização de assinatura raiz.

Há poucos dias, o projeto Wine anunciou o lançamento da nova versão do pacote vkd3d 1.11,

Novidades do vkd3d 1.11

vkd3d 1.11 lançado com novas funções e melhorias
vkd3d 1.11 lançado com novas funções e melhorias

Nesta versão introduzidas melhorias no uso de extensões vulkan, além de melhorias de suporte, novas funções e muito mais.

Vkd3d 1.11 introduz suporte inicial para compilar bytecode Direct3D herdado em uma representação intermediária de shaders SPIR-V, bem como suporte inicial com o compilador HLSL para compilar perfis de efeitos.

Outra melhoria apresentada nesta nova versão é o suporte experimental à compilação DXIL (DirectX Intermediate Language) na representação SPIR-V, proporcionando novas opções para o desenvolvimento de aplicações Direct3D.

Este recurso requer a compilação do vkd3d com a opção de pré-processador ‘-DVKD3D_SHADER_UNSUPPORTED_DXIL’ e é considerado experimental.

O uso de grupos e conjuntos de descritores também foi otimizado quando as extensões VK_EXT_mutable_descriptor_type e VK_EXT_shader_viewport_index_layer estão disponíveis, o que é fornecido para melhorar a eficiência do trabalho com o grupo de descritores e acelerar a renderização de matrizes de mosaico e sombreadores de vértice.

Foi implementado suporte para cores de borda padrão, como preto e branco, e o método GetResourceAllocationInfo1() da interface ID3D12Device4 foi implementado, bem como suporte para as interfaces ID3D12Device7 e ID3D12Resource2.

Várias novas consultas de recursos são suportadas, incluindo D3D12_FEATURE_D3D12_OPTIONS6 a D3D12_FEATURE_D3D12_OPTIONS13.

Novas opções de construção foram implementadas: VKD3D_SHADER_COMPILE_OPTION_FEATURE pode ser usado para especificar os recursos disponíveis no ambiente de destino, enquanto VKD3D_SHADER_COMPILE_OPTION_FEATURE_INT64 indica suporte para tipos inteiros de 64 bits no ambiente de destino SPIR e VKD3D_SHADER_COMPILE_OPTION_FEATURE_FLOAT64 indicam suporte para tipos de ponto flutuante de 64 bits no ambiente de destino SPIR-V.

Das outras mudanças que se destacam nesta nova versão:

Para saber mais sobre essa versão do vkd3d, acesse a nota de lançamento.

Como instalar ou atualizar o vkd3d

Para os interessados ​​​​em poder instalar o vkd3d, devem saber que devem compilar o código fonte, por isso devemos primeiro obtê-lo.É importante mencionar que o Vkd3d depende de SPIRV-Headers e Vulkan-Headers (>= 1.3.228 ).

A compilação é bastante simples e para isso devemos abrir um terminal no qual vamos digitar o seguinte comando:
git clone https://gitlab.winehq.org/wine/vkd3d.git

Prosseguimos para entrar na pasta onde foi baixado com:
cd vkd3d

E procedemos à compilação executando os seguintes comandos:
./configure
make
make install

Sair da versão mobile