Nova različica vkd3d 1.3 je že izšla

Po letu in pol razvoja inProjekt Wine je napovedal začetek nova različica paketa «vkd3d 1.3″ z implementacijo Direct3D 12, ki deluje s prevajanjem klicev v grafični API Vulkan.

Ta različica vsebuje različne izboljšave, med katerimi so v tej novi različici najpomembnejši začetna podpora za gradnjo HLSL, kot tudi Podpora za niz deskriptorjev modela Shader 5.1, podpora za odklop senčil Direct3D in še več.

Tisti, ki paketa ne poznajo, naj to vedo vključuje knjižnice libvkd3d z implementacijami Direct3D 12, libvkd3d-shader s senčilnim prevajalnikom modelov 4 in 5 in libvkd3d-utils s funkcijami za poenostavitev selitve aplikacij Direct3D 12 ter nizom predstavitev, vključno z vrati glxgears na Direct3D 12. Koda projekta se distribuira z licenco pod LGPLv2.1.

Knjižnica libvkd3d podpira večino funkcij Direct3D 12, vključno z grafičnimi in računskimi funkcijami, ukaznimi seznami in čakalnimi vrstami, deskriptorji in deskriptorji kopice, korenskimi podpisi, neurejenim dostopom, vzorčevalniki, podpisi ukazov, korenskimi konstantami, predstavitvijo proxyja itd.

Libvkd3d-senčnik izvaja prevod bajtnih kod 4 in 5 modelov senčenja v vmesni predstavitvi SPIR-V. Podprta so oglišča, piksli, teselacija, računalniški in preprosti geometrijski senčniki, serializacija korenskega podpisa in deserializacija.

Navodila za senčenje vključujejo aritmetične, atomske in bitne operacije, operaterji za nadzor in primerjavo pretoka podatkov, navodila za vzorčenje, zbiranje in nalaganje, operacije z neurejenim dostopom (UAV, pogled z neurejenim dostopom).

Na trenutni stopnji razvoja niso vsi klici na Direct3D 12 izvedeni in testi so bili izvedeni predvsem na nizu demo aplikacij.

Glavne novosti Vkd3d 1.3

V tej novi različici vkd3d 1.3, ki je predstavljena, je to poudarjeno dodana začetna podpora za prevajanje in predhodno upodabljanje senčil v HLSL (jezik senčil na visoki ravni), ki je na voljo od DirectX 9.0.

Druga sprememba, ki izstopa v tej novi različici, je podpora za dvojno natančne operacije s plavajočo vejico v senčnikih, pa tudi posrednost za senčnike za teselacijo, izvoz predlog iz senčil, "natančen" modifikator senčil in globalne ovire za vire v pomnilniku.

Ugotovimo lahko tudi, da možnost razstavljanja senčil Direct3D iz kode bajtov v zbirniško predstavitev, kot tudi dodano podporo za razčlenjevanje starega formata bajtne kode Direct3D, ki se uporablja v modelih senčil Direct3D 1, 2 in 3.

libvkd3d je dodal funkcije Direct3D 12, kot so korenski podpisi, neurejeni števci iskanja, logični vrednosti spajanja izhoda, način naslavljanja teksture mirror_once in dodana struktura vkd3d_host_time_domain_info.

Od ostalih sprememb ki izstopajo iz te nove različice:

  • vkd3d_shader_preprocess_info razširja strukturo vkd3d_shader_compile_info in se lahko uporablja za določanje parametrov predprocesiranja, kot so definicije makrov predprocesorja.
  • vkd3d_shader_hlsl_source_info razširja strukturo vkd3d_shader_compile_info in se lahko uporablja za določanje HLSL in parametrov gradnje, kot sta ciljni profil in vstopna točka.
  • Povežite modele Direct3D 12 in Vulkan
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSION lahko uporabite za določitev različice API-ja libvkd3d-shader, na katero cilja aplikacija. Če ni določeno, bo uporabljen VKD3D_SHADER_API_VERSION_1_2.
  • vkd3d-prevajalnik bo privzeto prikazal barvni izhod, če lahko ugotovi, da je
    izhod je barvno zmogljiv teleprinter.
  • Dodana podpora za nize deskriptorjev, definirane v Shader Model 5.1.

Končno če želite vedeti več o tem o tej novi različici si lahko ogledate celoten seznam sprememb V naslednji povezavi.

Kako namestiti vkd3d na Linux?

Za tiste, ki jih zanima, kako lahko v svoj sistem namestijo vkd3d, naj dobijo izvorno kodo in nadaljujejo s prevajanjem, čeprav lahko za praktične namene ali za tiste začetnike to knjižnico preizkusijo brez veliko truda. Za to morajo namestiti le lutris in znotraj njegovih konfiguracij.

Kar se tiče kompilacije, morajo kodo pridobiti z:

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

Nazadnje je treba omogočiti sloje Vulkan:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.