Foi lançado o lançamento experimental da implementação aberta da Win32 API — Wine 11.3. Desde o lançamento da versão 11.2, 30 relatórios de erros foram encerrados e 223 alterações foram realizadas.
As alterações mais importantes:
- O mecanismo Wine Mono foi atualizado para a versão 11.0.0. Wine Mono é uma distribuição do Framework Mono, destinada a ser utilizada no Wine em vez do componente proprietário .NET Framework.
- O pacote embutido Vkd3d com a implementação do Direct3D 12 foi atualizado para a versão 1.19.
- Na implementação da API DirectSound, o suporte a filtros com resposta ao impulso finita (FIR, Finite Impulse Response) foi aprimorado.
- A otimização do carregamento de arquivos PDB (Program Database) foi continuada.
- O tema claro foi renomeado para Aero para aumentar a compatibilidade.
- Foi resolvido um problema com a devolução do foco ao alternar para aplicativos de jogos através da interface Alt-Tab, se no registro o parâmetro UseTakeFocus=N não estiver explicitamente definido.
- O desenvolvimento das bibliotecas mshtml e msxml3, necessárias para a operação do instalador dos produtos Adobe Cloud, incluindo o Adobe Photoshop, foi continuado. Na mshtml, a classe XMLSerializer foi implementada. A msxml3 adicionou o tratamento de nomes de tipos na createNode().
- Foram encerrados relatórios de erros relacionados ao funcionamento de aplicativos: Adobe Audition 2020, QuarkXPress 2024, Framemaker 8, Amazon Chime 5.23, 42Tags, Vavoo Webinstaller, Kodi, zools backup, ExtractNow, zdaemon, Rainmeter 4.5.23, Sysinternals.
- Foram encerrados relatórios de erros relacionados ao funcionamento de jogos: War Thunder, Dead or Alive Xtreme: Venus Vacation, Westwood Monopoly, Flight Simulator 2000, Guild Wars 2, iWin Games Manager V4.
Ao mesmo tempo, foi formado o lançamento do projeto Wine Staging 11.3, que fornece compilações avançadas do Wine, incluindo patches não totalmente prontos ou arriscados, que ainda não são adequados para aceitação na ramificação principal do Wine. Em comparação com o Wine, o Wine Staging oferece 241 patches adicionais. No novo lançamento do Wine Staging, foi feita a sincronização com a base de código do Wine 11.3 e o código vkd3d foi atualizado. Atualizações foram feitas nos patches para garantir a operação do instalador do Adobe Creative Cloud 2025 e 2026. A implementação do IXMLSerializer foi transferida para a mshtml na versão principal do Wine.
O projeto Wine também lançou a versão do pacote vkd3d 1.19 com a implementação do Direct3D 12, funcionando através da tradução de chamadas para a API gráfica Vulkan. O pacote inclui bibliotecas libvkd3d com a implementação do Direct3D 12, libvkd3d-shader com tradutores de modelos de shader 4 e 5, e libvkd3d-utils com funções para simplificar o porting de aplicativos Direct3D 12, além de um conjunto de exemplos demonstrativos, incluindo o port do glxgears para o Direct3D 12. O código do projeto é distribuído sob a licença LGPLv2.1.
A biblioteca libvkd3d suporta a maior parte das funcionalidades do Direct3D 12, incluindo ferramentas para gráficos e computação, filas e listas de comandos, descritores e descritores de heap, assinaturas raiz, acesso não ordenado, Samplers, assinaturas de comandos, constantes raiz, renderização indireta, métodos Clear*() e Copy*(). Na libvkd3d-shader é implementada a tradução de bytecode de modelos de shaders para uma representação intermediária SPIR-V. Suportam-se shaders de vértices, pixel, tesselação, computacionais e de geometria simples, serialização e desserialização de assinatura raiz. Entre as instruções de shader, são implementadas operações aritméticas, atômicas e de bit, operadores de comparação e controle de fluxo de dados, instruções sample, gather e load, operações de acesso não ordenado (UAV, Unordered Access View).
Na nova versão do vkd3d:
- A biblioteca libvkd3d agora suporta modos de filtragem de texturas "minimum" e "maximum".
- A implementação da linguagem de shaders HLSL agora inclui as instruções de bytecode: dp2add, loop/endloop, lrp, nrm, pow e rep/endrep.
- O compilador de shaders HLSL teve uma melhoria significativa na manipulação de arrays de entrada/saída dos shaders, que são utilizados para corte (Clip) ou ocultação (Cull), na geração da representação SPIR‑V.
- Adicionado o parâmetro VKD3D_SHADER_PARAMETER_NAME_PROJECTED_TEXTURE_MASK, que indica quais texturas no shader de pixel devem ser consideradas projetáveis (projected).
Fonte: opennet.ru
