lançamento da camada , que fornece a implementação do DXGI (Infraestrutura Gráfica DirectX), Direct3D 10 e Direct3D 11, operando através da tradução de chamadas na API Vulkan. Para usar o DXVK ter drivers com suporte a , como por exemplo
AMD RADV 18.3, NVIDIA 415.22, Intel ANV 19.0 e .
O DXVK pode ser usado para executar aplicativos 3D e jogos no Linux por meio do Wine, servindo como uma alternativa de maior desempenho à implementação do Direct3D 11 embutida no Wine, que opera sobre OpenGL. Em o desempenho do conjunto Wine+DXVK de uma execução no Windows é apenas 10-20% melhor, enquanto ao usar a implementação do Direct3D 11 baseada em OpenGL, o desempenho diminui de maneira mais significativa.
Melhorias adicionadas:
- Foi implementada uma otimização utilizando a instrução "discard" nos shaders, baseada na extensão do Vulkan VK_EXT_shader_demote_to_helper_invocation, capaz de aumentar o desempenho em alguns jogos. Para usar a otimização, é necessário atualizar o componente winevulkan e os drivers (Intel até Mesa 19.2-git e NVIDIA até o driver proprietário 418.52.14-beta; os drivers da AMD ainda não suportam a extensão VK_EXT_shader_demote_to_helper_invocation);
- Foi garantido o processamento assíncrono da saída do resultado de renderização na tela (fase ). Para reduzir as latências no fluxo principal de renderização, a saída agora é processada na thread de submissão de comandos (command submission thread). O ganho de desempenho do processamento assíncrono é especialmente notável durante a saída com alta taxa de quadros e na transmissão de comandos que consomem muitos recursos. Entre os jogos que apresentam ganho de desempenho, destaca-se Quake Champions ao ser executado em sistemas com GPU da AMD;
- Agora é possível carregar recursos inicialmente utilizando motores de cópia (copy engine) fornecidos por dispositivos que suportam Vulkan (por enquanto, suportado apenas pelos drivers AMDVLK e NVIDIA). Essa nova capacidade pode melhorar um pouco a consistência dos tempos de quadro em jogos que carregam um grande número de texturas durante o jogo;
- A melhoria na gravação de logs de erros que ocorrem em condições de falta de memória;
- Melhoria na compatibilidade com MSVC (Microsoft Visual C++);
- Verificações cíclicas repetidas durante a saída foram removidas, o que pode reduzir significativamente a carga no CPU em cenários com GPUs limitados;
- A resolução de um problema de mapeamento duplo de sub-recursos de imagens, que se manifestava no jogo Final Fantasy XIV;
- Resolvido o desligamento causado por comportamento incorreto do método RSGetViewport, que se manifestava no jogo Scrap Mechanic.
Fonte: opennet.ru
