Den nye versjonen av vkd3d 1.3 er allerede utgitt

Etter halvannet år med utvikling, ogvinprosjektet annonserte lanseringen av den nye versjonen av pakken «vkd3d 1.3" med en Direct3D 12-implementering som fungerer gjennom oversettelse av kall til Vulkan graphics API.

Denne versjonen inneholder ulike forbedringer og av disse er høydepunktene i denne nye versjonen innledende HLS byggestøtteL, så vel som Shader Model 5.1 descriptor array støtte, støtte for demontering av Direct3D shaders og mer.

For de som ikke er klar over pakken, bør de vite det 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 graf- og beregningsfunksjoner, kommandolister og køer, deskriptorer og heap-beskrivelser, rotsignaturer, uordnet tilgang, samplere, kommandosignaturer, rotkonstanter, proxy-representasjon, etc.

libvkd3d-shader implementerer oversettelsen av byte-kode 4 og 5 av skyggeleggingsmodellene i SPIR-V-mellomrepresentasjonen. Topppunkter, piksler, tessellasjon, beregningsmessige og enkel geometriskyggelegging, rotsignaturserialisering 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 demoapplikasjoner.

De viktigste nye funksjonene i Vkd3d 1.3

I denne nye versjonen av vkd3d 1.3 som presenteres, er det fremhevet at lagt til innledende støtte for kompilering og forhåndsgjengivelse av shaders i HLSL (skyggespråk på høyt nivå), som er gitt siden DirectX 9.0.

En annen av endringene som skiller seg ut i denne nye versjonen er støtte for dobbel presisjon flytepunkt operasjoner i shaders, i tillegg til indirektion for tessellasjonsskyggelegging, maleksport fra skyggelegging, den "nøyaktige" shader-modifikatoren og globale barrierer for ressurser i minnet.

Vi kan også finne at muligheten til å demontere Direct3D shaders fra kode av byte til assembler-representasjonen, samt lagt til støtte for å analysere det gamle Direct3D-bytekodeformatet brukt i Direct3D 1, 2 og 3 shader-modeller.

libvkd3d la til Direct3D 12-funksjoner, slik som rotsignaturer, uordnede oppslagstellere, utdatasammenslåingsbooleaner, mirror_once-teksturadresseringsmodus og lagt til vkd3d_host_time_domain_info-struktur.

Av de andre endringene som skiller seg ut fra denne nye versjonen:

  • vkd3d_shader_preprocess_info utvider vkd3d_shader_compile_info-strukturen, og kan brukes til å spesifisere forbehandlingsparametere som forbehandlermakrodefinisjoner.
  • vkd3d_shader_hlsl_source_info utvider vkd3d_shader_compile_info-strukturen, og kan brukes til å spesifisere HLSL og bygge parametere som målprofil og inngangspunkt.
  • Link Direct3D 12 og Vulkan-modeller
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSION kan brukes til å spesifisere libvkd3d-shader API-versjonen applikasjonen er målrettet mot. Hvis ikke spesifisert, vil VKD3D_SHADER_API_VERSION_1_2 bli brukt.
  • vkd3d-compiler vil som standard bruke fargeutdata hvis den kan fastslå at
    utgangen er en fargekompatibel fjernskriver.
  • Lagt til støtte for deskriptormatriser definert i Shader Model 5.1.

Endelig hvis du vil vite mer om det om denne nye versjonen, kan du se den fullstendige 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.