Nová verze vkd3d 1.3 již byla vydána

Po roce a půl vývoje aon Wine projekt oznámil spuštění nová verze balíčku «vkd3d 1.3″ s implementací Direct3D 12, která funguje prostřednictvím překladu volání do grafického API Vulkan.

Tato verze obsahuje různá vylepšení, z nichž jsou v této nové verzi nejdůležitější počáteční podpora sestavení HLSL, stejně jako Podpora pole deskriptorů Shader Model 5.1, podpora pro odpojení Direct3D shaderů a další.

Pro ty, kteří o balíčku nevědí, by to měli vědět zahrnuje knihovny libvkd3d s implementacemi Direct3D 12, libvkd3d-shader s překladačem shaderů modelu 4 a 5 a libvkd3d-utils s funkcemi pro zjednodušení migrace aplikací Direct3D 12, stejně jako sada ukázek, včetně portu glxgears na Direct3D 12. Kód projektu je distribuován s licencí pod LGPLv2.1.

Knihovna libvkd3d podporuje většinu funkcí Direct3D 12, včetně grafů a výpočetních funkcí, seznamů příkazů a front, deskriptorů a deskriptorů haldy, kořenových signatur, neuspořádaného přístupu, vzorkovačů, signatur příkazů, kořenových konstant, proxy reprezentace atd.

libvkd3d-shader implementuje překlad byte kódu 4 a 5 stínících modelů v mezireprezentaci SPIR-V. Podporovány jsou vrcholy, pixely, mozaikování, výpočetní a jednoduché geometrické shadery, serializace kořenových signatur a deserializace.

Pokyny shaderu zahrnují aritmetické, atomové a bitové operace, operátory řízení a porovnávání toku dat, pokyny pro vzorkování, sběr a načítání, operace neuspořádaného přístupu (UAV, zobrazení neuspořádaného přístupu).

V současné fázi vývoje nejsou implementována všechna volání Direct3D 12 a testy byly prováděny především na sadě demo aplikací.

Hlavní nové funkce Vkd3d 1.3

V této nové verzi vkd3d 1.3, která je představena, je to zdůrazněno přidána počáteční podpora pro kompilaci a předběžné vykreslování shaderů v HLSL (high-level shader language), který je poskytován od DirectX 9.0.

Další ze změn, které v této nové verzi vynikají, je podpora operací s plovoucí desetinnou čárkou s dvojitou přesností v shaderech, stejně jako indirection pro teselační shadery, export šablon z shaderů, "přesný" modifikátor shaderů a globální bariéry pro zdroje v paměti.

Můžeme také zjistit, že schopnost rozebrat Direct3D shadery z kódu bajtů do reprezentace assembleru a také přidána podpora pro analýzu starého formátu bajtového kódu Direct3D používaného v modelech shaderů Direct3D 1, 2 a 3.

libvkd3d přidal funkce Direct3D 12, jako jsou kořenové signatury, neuspořádané vyhledávací čítače, výstupní slučovací booleany, režim adresování textury mirror_once a přidaná struktura vkd3d_host_time_domain_info.

Z dalších změn které vyčnívají z této nové verze:

  • vkd3d_shader_preprocess_info rozšiřuje strukturu vkd3d_shader_compile_info a lze jej použít ke specifikaci parametrů předběžného zpracování, jako jsou definice maker preprocesoru.
  • vkd3d_shader_hlsl_source_info rozšiřuje strukturu vkd3d_shader_compile_info a lze jej použít ke specifikaci HLSL a parametrů sestavení, jako je cílový profil a vstupní bod.
  • Propojte modely Direct3D 12 a Vulkan
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSION lze použít k určení verze rozhraní API libvkd3d-shader, na kterou aplikace cílí. Pokud není zadáno, použije se VKD3D_SHADER_API_VERSION_1_2.
  • vkd3d-compiler použije výchozí barevný výstup, pokud dokáže určit, že
    výstupem je barevná dálnopis.
  • Přidána podpora pro pole deskriptorů definovaná v Shader Model 5.1.

Konečně pokud o tom chcete vědět víc o této nové verzi si můžete prohlédnout úplný seznam změn Na následujícím odkazu.

Jak nainstalovat vkd3d na Linux?

Pro ty, kteří mají zájem o instalaci vkd3d na svůj systém, by měli získat zdrojový kód a pokračovat v kompilaci, i když z praktických důvodů nebo pro nováčky mohou tuto knihovnu bez velké námahy vyzkoušet. K tomu musí nainstalovat pouze lutris a v rámci jeho konfigurací.

Pokud jde o zájemce o kompilaci, musí získat kód s:

git clone git://source.winehq.org/git/vkd3d.git/
./autogen.sh
./configure
make
../vkd3d/configure --build=i686-pc-linux-gnu "CPPFLAGS=-m32" "LDFLAGS=-m32"

Nakonec musí být povoleny vrstvy vulkánu:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.