vkd3d 1.2 vjen me përmirësime të përputhshmërisë, mbrojtje nga drita dhe më shumë

El Proyecto Vera ka lëshuar një version të ri të paketës vkd3d 1.2 me një implementim Direct3D 12 i cili funksionon duke përkthyer thirrjet në API grafike Vulkan.

Ky version i ri i vkd3d 1.2 përmban përmirësime të ndryshme, por nga ato kryesore që bien në sy janë ato disponueshmëria e libvkd3d-shader si bibliotekë publike, mbështetje shader tessellation, si dhe mbështetjen e daljes së rrjedhës.

Pakojadhe përfshin biblioteka libvkd3d me implementime Direct3D 12, libvkd3d-shader me përkthyesin shader të modelit 4 dhe 5 dhe libvkd3d-utils me funksione për të thjeshtuar migrimin e aplikacioneve Direct3D 12, si dhe një sërë demonstrimesh, përfshirë portin glxgears në Direct3D 12. Kodi i projektit shpërndahet i licencuar nën LGPLv2.1.

Librari libvkd3d mbështet shumicën e veçorive Direct3D 12, duke përfshirë funksionet grafike dhe llogaritëse, listat e komandave dhe radhët, përshkruesit e grumbullit dhe përshkruesit, nënshkrimet e rrënjës, hyrja e parenditur, mostrat, nënshkrimet e komandës, konstantat e rrënjës, përfaqësimi indirekt, etj.

libvkd3d-shader zbaton përkthimin e bajtit kod 4 dhe 5 të modeleve të hijëzimit në përfaqësimin e ndërmjetëm SPIR-V. Vertices, pixel, tessellation, llogaritëse dhe shaders gjeometri thjeshtë, serialization nënshkrimin rrënjë, dhe deserialization janë të mbështetur.

Udhëzimet e hijes përfshijnë veprime aritmetike, atomike dhe pakëz, Operatorët e kontrollit dhe krahasimit të rrjedhës së të dhënave, udhëzimet për marrjen e mostrave, mbledhjen dhe ngarkimin, operacionet e hyrjes së parenditur (UAV, pamja e qasjes së parenditur).

Në fazën aktuale të zhvillimit, jo të gjitha thirrjet për Direct3D 12 janë implementuar dhe testet u kryen kryesisht në një grup aplikacionesh demo. Publikimi nuk përfshin veçori në zhvillim të tilla si mbështetjen për hijezuesit komplekse të gjeometrisë dhe tessellation-it, si dhe një numër përmirësimesh që lidhen me metodat dhe hijesuesit bazë Direct3D 12. Këto karakteristika do të ofrohen në një botim të ardhshëm.

Karakteristikat kryesore të reja të Vkd3d 1.2

Nga ndryshimet më të rëndësishme që janë paraqitur në versionin e ri, është disponueshmëria e bibliotekës libvkd3d-shader për përdorim në projekte të palëve të treta, që prej Janë shtuar funksione të ndryshme Direct3D 12, siç janë:

  • Mostërzim.
  • Burimet e rezervuara.
  • Shkalla e kalimit të të dhënave në çast.
  • API "Private data" për të gjitha ndërfaqet.
  • Përcaktimet e përbërësve të shikimit të burimeve shader.
  • Shtesa e numrit të VK_KHR_draw_indirect_count.
  • Paraqitja kallëzuese / kushtore.
  • Pasqyrimi i thellësisë pa hije pixel.
  • Shkurtimi i thellësisë. Kjo kërkon zgjatjen VK_EXT_depth_clip_enable.
  • Hidhni rasterizuesin.
  • Përzierja me burim të dyfishtë.
  • Hartëzimi i burimeve të vendosura.
  • Metodat ReadFromSubresource () dhe WriteToSubresource () ID3D12Resource.
  • Aksesi i njëkohshëm në burimet me shumë radhë.
  • Pamje nul. Kjo është, pamje pa një burim themelor.
  • Disa pyetje të tjera për mbështetjen e funksioneve.

Përveç kësaj, Theksohet gjithashtu mbështetja e shtuar për konvertimin, serializimin dhe deserializimin e nënshkrimeve root (vkd3d_serialize_versioned_root_signature () dhe vkd3d_create_versioned_root_signature_deserializer (), si dhe mbështetje për daljen streaming.

Një tjetër ndryshim që bie në sy është zbatimi i ndryshores së mjedisit: VKD3D_CONFIG për të vendosur opsione për të ndryshuar sjelljen e libvkd3d dhe VKD3D_VULKAN_DEVICE për të anashkaluar pajisjen për Vulkan API.

Përveç kësaj suport i shtuar për udhëzimet e hijëzimit bufinfo, eval_centroid, eval_sample_index, ld2ms, mostra_b, sample_d, sample_info, samplepos dhe mbështetje paraprake për hijeshuesit e modelit 5.1.

Dhe gjithashtu mbështetje për mjediset e synuara OpenGL SPIR-V. Kjo lejon që SPIR-V i prodhuar nga libvkd3d-shader të përdoret me GL_ARB_gl_spirv. Kjo përfshin mbështetjen për numëruesit atomikë OpenGL dhe kampionët e kombinuar.

Më në fund nëse doni të dini më shumë rreth saj në lidhje me këtë version të ri, mund të kontrolloni listën e plotë të ndryshimeve Në lidhjen vijuese.

Si të instaloni vkd3d në Linux?

Për ata që janë të interesuar të jenë në gjendje të instalojnë vkd3d në sistemin e tyre, ata duhet të marrin kodin burimor dhe të vazhdojnë me përpilimin, edhe pse për qëllime praktike ose për ata të sapoardhur, ata mund ta provojnë këtë bibliotekë pa shumë përpjekje. Për këtë, ata vetëm duhet të instalojnë lutris dhe brenda konfigurimeve të tij.

Sa për ata që janë të interesuar për përpilim, ata duhet të marrin kodin me:

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

Më në fund, shtresat Vulkan duhet të jenë të aktivizuara:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.