vkd3d 1.7 já foi lançado e essas são as novidades

vkd3d

vkd3d, é a camada de tradução Direct3D 12 para Vulkan do Wine

O projeto vinho revelado Há alguns dias, o lançamento da nova versão do pacote vkd3d 1.7 com uma implementação Direct3D 12 que funciona através da tradução de chamadas para a API de gráficos Vulkan.

O pacote inclui bibliotecas libvkd3d com implementações Direct3D 12, libvkd3d-shader com shader model translate 4 e 5 e libvkd3d-utils com funções para simplificar a migração de aplicativos Direct3D 12, bem como um conjunto de demos, incluindo uma porta de glxgears para Direct3D 12.

A biblioteca libvkd3d suporta a maioria dos recursos do Direct3D 12, incluindo gráficos e computação, listas e filas de comandos, descritores e descritores de pilha, assinaturas raiz, acesso não ordenado, amostras, assinaturas de comando, constantes raiz, representação indireta, métodos Clear*() e Copy*().

Além disso libvkd3d-shader implementa a tradução do bytecode 4 e 5 dos modelos de sombreamento em uma representação intermediária do SPIR-V. Suporta vértice, pixel, mosaico, computação e sombreadores de geometria simples, serialização e desserialização de assinatura raiz.

Operações aritméticas, atômicas e de bit, operadores de comparação e controle de fluxo de dados, instruções de amostra, coleta e carga, operações de acesso fora de ordem (UAV, exibição de acesso fora de ordem) são implementadas a partir de instruções de sombreamento.

Principais novidades do vkd3d 1.7

Nesta nova versão que se apresenta de vkd3d 1.7 destaca-se éEu continuei trabalhando para melhorar o compilador de shader HLSL (High-Level Shader Language), além de adicionar a capacidade de chamar funções definidas pelo usuário e use arrays como parâmetros de funções definidas pelo usuário.

Outra das mudanças que se destaca na nova versão é a suporte significativamente melhorado para perfis modelo de shader Direct3D 1/2/3, Também foi adicionado suporte inicial para tipos de ponto flutuante de baixa precisão, como min16float.

Destaca-se também que adicionado suporte para os parâmetros SV_DispatchThreadID, SV_GroupID e SV_GroupThreadID e que uma API pública foi adicionada para analisar (vkd3d_shader_parse_dxbc) e serializar (vkd3d_shader_serialize_dxbc) dados binários DXBC.

Do outras mudanças que se destacam da nova versão:

  • Suporte para o parâmetro opcional "offset" do objeto de textura Load()
    método.
  • Suporte para a função intrínseca all().
  • Suporte para a função intrínseca distance().
  • Suporte para as funções intrínsecas exp() e exp2().
  • Suporte para a função intrínseca frac().
  • Suporte para a função intrínseca lit().
  • Suporte para a função intrínseca reflect().
  • Suporte para as funções intrínsecas sin() e cos().
  • Suporte para a função intrínseca smoothstep().
  • Suporte para funções intrínsecas sqrt() e rqrt().
  • Suporte para a função intrínseca step().
  • Suporte para a função intrínseca transpose().
  • Suporte para variantes que não diferenciam maiúsculas de minúsculas de dados float e dword
    tipo
  • Suporte parcial para tipos de dados de precisão mínima, como "min16float". Estes são atualmente interpretados como suas contrapartes regulares.
    Suporte de propagação constante aprimorado, em particular para propagação constante via swizzles.
  • A opção de compilação VKD3D_SHADER_COMPILE_OPTION_WRITE_TESS_GEOM_POINT_SIZE pode ser usada para especificar se os sombreadores SPIR-V destinados a ambientes Vulkan devem gravar tamanhos de ponto para sombreadores de geometria e tesselação, se não for especificado, os tamanhos de ponto serão gravados.

Finalmente, Para os interessados ​​em saber mais sobre o assunto, devem saber que o código do projeto está licenciado sob LGPLv2.1 e que podem consultar os detalhes desta nova versão no link a seguir.

Como instalar o vkd3d 1.7?

Para os interessado em poder instalar o vkd3d Eles devem saber que devem compilar o código-fonte, portanto devemos obtê-lo primeiro, é importante mencionar que Vkd3d depende de SPIRV-Headers e Vulkan-Headers (>= 1.2.139).

Para realizar a compilação, devemos abrir um terminal e nele digitaremos o seguinte comando:

git clone https://gitlab.winehq.org/wine/vkd3d.git

Feito isso, passamos a entrar no diretório baixado recentemente com:

cd vkd3d

E procedemos à compilação executando os seguintes comandos:

./configure

make

make install

Si você quer saber mais sobre a compilação de vkd3d você pode verificar os detalhes em este link.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.