Está disponível a versão da camada DXVK 2.0, que oferece uma implementação do DXGI (DirectX Graphics Infrastructure), Direct3D 9, 10 e 11, operando através da tradução de chamadas na API Vulkan. Para utilizar o DXVK, é necessário ter drivers com suporte para a API Vulkan 1.3, como Mesa RADV 22.0, NVIDIA 510.47.03, Intel ANV 22.0 e AMDVLK. O DXVK pode ser usado para executar aplicativos e jogos 3D no Linux com o Wine, servindo como uma alternativa de alto desempenho às implementações do Direct3D 9/10/11 integradas no Wine, que operam sobre OpenGL.
Principais mudanças:
- Os requisitos para a versão da API gráfica Vulkan foram aumentados — agora é necessário um driver com suporte para Vulkan 1.3 (anteriormente era necessário o Vulkan 1.1), o que permitiu a implementação de novos recursos relacionados à compilação de shaders. Na prática, o DXVK 2.0 pode ser executado em qualquer sistema que suporte o uso do pacote Proton Experimental para rodar jogos baseados em D3D11 e D3D12. Para o funcionamento do winevulkan, é necessário ter pelo menos o Wine 7.1.
- Foi aceito o código do projeto dxvk-native, que permite a criação de builds nativas do DXVK para Linux (não vinculadas ao Wine), as quais podem ser utilizadas não apenas para executar aplicativos do Windows, mas em aplicativos Linux comuns, o que pode ser útil para criar portas de jogos para Linux sem modificar o código de renderização baseado em D3D.
- O suporte ao Direct3D 9 foi ampliado, incluindo melhorias na gestão de memória (implementando arquivos refletidos na memória para armazenar cópias de texturas), além da implementação de suporte à leitura correta de áreas ativas de renderização (resolvendo problemas com o aparecimento de artefatos ao jogar GTA IV) e uma revisão da implementação da verificação de transparência.
- Para o Direct3D 10, foi interrompido o fornecimento das bibliotecas d3d10.dll e d3d10_1.dll, que não eram instaladas por padrão devido à presença de uma implementação mais avançada do D3D10 no Wine. No entanto, o suporte à API D3D10 foi mantido na biblioteca d3d10core.dll.
- O suporte ao Direct3D 11 foi elevado ao nível funcional 12_1 (Nível de Recurso D3D11), para o qual foram implementadas capacidades como recursos em mosaico (Tiled Resources), rasterização conservativa (Conservative Rasterization) e renderização ordenada no rasterizador (Rasterizer Ordered Views).
- Reestruturado e aproximado do seu comportamento à implementação do Windows da interface ID3D11DeviceContext, que representa o contexto do dispositivo gerador de comandos de renderização. A reestruturação melhorou a compatibilidade com bibliotecas de terceiros e reduziu a carga no CPU. Em particular, a carga no CPU foi diminuída em jogos que utilizam ativamente contextos atrasados (por exemplo, o jogo Assassin’s Creed: Origins) ou que frequentemente chamam a operação ClearState (por exemplo, o jogo God of War).
- Mudanças foram feitas relacionadas à compilação de shaders. Com drivers Vulkan que suportam a extensão VK_EXT_graphics_pipeline_library, a compilação de shaders Vulkan durante o carregamento de shaders D3D pelos jogos foi implementada, em vez de durante a renderização, o que resolveu problemas de travamentos devido à compilação de shaders durante o jogo. A extensão necessária atualmente é suportada apenas em drivers proprietários da NVIDIA, a partir da versão 520.56.06.
- No shaders D3D11 foi utilizada a modelo de memória Vulkan.
- Removida a limitação do número de recursos que podem ser vinculados de uma só vez.
- Ashes of the Singularity.
- Alan Wake
- Alice Madness Returns
- Anomaly: Warzone Earth
- Beyond Good and Evil
- Dragon Age Origins
- Empire: Total War
- Final Fantasy XV
- Grand Theft Auto IV
- Heroes Of Annihilated Empires
- Limit King Of Fighters XIII
- Metal Gear Solid V: Ground Zeroes
- SiN Episodes: Emergence
- Sonic Generations
- Spider Man
- The Ship
- Warhammer Online
- Ys Seven
Fonte: opennet.ru
