Kandidát na vydání Wine 8.0 a vydání vkd3d 1.6

Bylo zahájeno testování prvního kandidáta na vydání Wine 8.0, otevřené implementace WinAPI. Kódová základna byla uvedena do fáze zmrazení před vydáním, které se očekává v polovině ledna. Od vydání Wine 7.22 bylo uzavřeno 52 hlášení o chybách a bylo provedeno 538 změn.

Nejdůležitější změny:

  • Balíček vkd3d s implementací Direct3D 12 pracující prostřednictvím překladu volání do grafického API Vulkan byl aktualizován na verzi 1.6.
  • Byla provedena optimalizace převodníků systémových volání (thunků) pro Vulkan a OpenGL.
  • WinPrint rozšířil podporu pro tiskové procesory.
  • Vylepšený ovládací panel joysticku.
  • Byly dokončeny práce na poskytování podpory pro typ 'long' v kódu funkce printf.
  • Chybová hlášení související s provozem her jsou uzavřena: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Uzavřená chybová hlášení související s provozem aplikací: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Kromě toho si můžeme všimnout vydání balíčku vkd3d 1.6 s implementací Direct3D 12 projektem Wine, který pracuje přes překlad volání do grafického API Vulkan. Balíček obsahuje knihovny libvkd3d s implementacemi Direct3D 12, libvkd3d-shader s překladačem shader modelů 4 a 5 a libvkd3d-utils s funkcemi pro zjednodušení portování aplikací Direct3D 12 a také sadu ukázkových příkladů, včetně portu glxgears na Direct3D 12. Kód projektu je distribuován pod licencí LGPLv2.1.

Knihovna libvkd3d podporuje většinu funkcí Direct3D 12, včetně grafiky a výpočetních zařízení, front a seznamů příkazů, ovladačů a ovladačů haldy, kořenových signatur, přístupu mimo pořadí, vzorníků, signatur příkazů, kořenových konstant, nepřímého vykreslování, metod Clear *( ) a Kopírovat*(). V libvkd3d-shader je implementován překlad bajtkódu shader modelů 4 a 5 do přechodné SPIR-V reprezentace. Podporuje vertex, pixel, teselaci, výpočetní a jednoduché geometrické shadery, serializaci kořenových signatur a deserializaci. Shader instrukce zahrnují aritmetické, atomické a bitové operace, operátory porovnávání a řízení toku dat, vzorkování, shromažďování a načítání instrukcí, operace neuspořádaného přístupu (UAV, Unordered Access View).

Nová verze pokračuje ve vylepšování kompilátoru shaderů v HLSL (High-Level Shader Language), poskytovaných počínaje DirectX 9.0. Mezi vylepšení související s HLSL patří:

  • Byla implementována počáteční podpora pro výpočetní shadery.
  • Vylepšená podpora pro inicializaci a přiřazování složených objektů, jako jsou struktury a pole.
  • Přidána možnost načítání a ukládání texturových zdrojů pomocí přístupu mimo pořadí (UAV).
  • Přidána podpora pro atributy funkcí a implementované vestavěné funkce asuint(), length(), normalize().
  • Přidána podpora pro moduly s pohyblivou řádovou čárkou.
  • Implementován příznak VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS k označení atomických operací na deskriptorech neuspořádané reprezentace přístupu (UAV).

Zdroj: opennet.ru

Přidat komentář