vkd3d 1.2 kommer med forbedringer av kompatibilitet, skyggelegging og mer

Prosjektet Wine har gitt ut en ny versjon av pakken vkd3d 1.2 med en Direct3D 12-implementering som fungerer ved å oversette samtalene til Vulkan graphics API.

Denne nye versjonen av vkd3d 1.2 inneholder forskjellige forbedringer, men av de viktigste som skiller seg ut er tilgjengeligheten av libvkd3d-shader som et offentlig bibliotek, The skyggestøtte tessellasjon, samt strømutgangsstøtte.

Pakkenog inkluderer libvkd3d-biblioteker med Direct3D 12-implementeringer, libvkd3d-shader med modell 4 og 5 shader-oversetter og libvkd3d-verktøy med funksjoner for å forenkle overføringen av Direct3D 12-applikasjoner, samt et sett med demoer, inkludert glxgears-porten til Direct3D 12. Prosjektkoden distribueres lisensiert under LGPLv2.1.

Bibliotek libvkd3d støtter de fleste Direct3D 12-funksjonene, inkludert grafikk- og beregningsfunksjoner, kommandolister og køer, haugbeskrivelser og -beskrivere, rotsignaturer, uordnet tilgang, samplere, kommandosignaturer, rotkonstanter, indirekte representasjon og så videre.

libvkd3d-shader implementerer oversettelsen av byte-kode 4 og 5 av skyggemønstrene i SPIR-V mellomrepresentasjon. Vertices, piksler, tessellation, beregnings- og enkle geometri-skyggelegging, root-signaturserialisering og deserialisering støttes.

Shader-instruksjonene inkluderer aritmetiske, atom- og bitvise operasjoner, datastrømskontroll- og sammenligningsoperatører, prøvetaking, innsamling og lasting av instruksjoner, uordnet tilgangsoperasjoner (UAV, Uordnet tilgangsvisning).

På det nåværende utviklingsstadiet er ikke alle anrop til Direct3D 12 implementert og testene ble hovedsakelig utført på et sett med demo-applikasjoner. Utgivelsen inkluderer ikke funksjoner i utvikling som støtte for komplekse geometri-skyggeleggere og tessellering, samt en rekke forbedringer relatert til Direct3D 12 grunnleggende metoder og skyggelegger. Disse funksjonene vil bli tilbudt i en fremtidig utgivelse.

De viktigste nye funksjonene i Vkd3d 1.2

Av de viktigste endringene som presenteres i den nye versjonen, er libvkd3d-shader bibliotek tilgjengelighet for bruk i tredjepartsprosjekter siden Ulike Direct3D 12-funksjoner ble lagt til, for eksempel:

  • Multi-prøvetaking.
  • Reserverte ressurser.
  • Forekomst av forekomstdata.
  • API for "private data" for alle grensesnitt.
  • Komponenttilordning for Shader-ressursvisning.
  • VK_KHR_draw_indirect_count utvidelse.
  • Predikat / betinget representasjon.
  • Gjengivelse av dybde uten piksler.
  • Dybdeskjæring. Dette krever utvidelsen VK_EXT_depth_clip_enable.
  • Kast rasterizer.
  • Dobbel kildeblanding.
  • Kartlegging av plasserte ressurser.
  • Metodene ReadFromSubresource () og WriteToSubresource () ID3D12Resource.
  • Samtidig tilgang til ressurser med flere køer.
  • Null utsikt. Det vil si synspunkter uten en underliggende ressurs.
  • Flere flere funksjoner støtter henvendelser.

I tillegg til dette ekstra støtte for konvertering, serialisering og deserialisering av signaturer er også uthevet root (vkd3d_serialize_versioned_root_signature () og vkd3d_create_versioned_root_signature_deserializer (), samt støtte for streamingoutput.

En annen endring som skiller seg ut er miljøvariabel implementering: VKD3D_CONFIG for å angi alternativer for å endre atferden til libvkd3d og VKD3D_VULKAN_DEVICE for å overstyre enheten for Vulkan API.

bortsett fra det lagt til støtte for skyggeanvisninger buffinfo, eval_centroid, eval_sample_index, ld2ms, sample_b, sample_d, sample_info, samplepos og foreløpig støtte for modell 5.1 skyggelegger.

Og også støtte for OpenGL SPIR-V målmiljøer. Dette gjør at SPIR-V produsert av libvkd3d-shader kan brukes med GL_ARB_gl_spirv. Dette inkluderer støtte for OpenGL atomdisker og kombinerte samplere.

Endelig hvis du vil vite mer om det om denne nye versjonen, kan du sjekke hele listen over endringer I den følgende lenken.

Hvordan installere vkd3d på Linux?

For de som er interessert i å kunne installere vkd3d på systemet sitt, bør de skaffe kildekoden og fortsette med kompilering, selv om de for praktiske formål eller for de nybegynnere kan prøve dette biblioteket uten mye anstrengelse. For dette trenger de bare å installere lutris og innenfor konfigurasjonene.

Når det gjelder de som er interessert i kompilering, må de skaffe koden med:

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

Til slutt må Vulkan-lagene være aktivert:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.