vkd3d 1.2 iza nokuphuculwa kokuhambelana, ukwenza umthunzi kunye nokunye

Le projekthi Iwayini ikhuphe inguqulelo entsha ye-vkd3d 1.2 package nge umiliselo lweDirect3D 12 esebenza ngokuguqulela iminxeba kwiVulkan yemizobo API.

Olu guqulelo olutsha lwe-vkd3d 1.2 iqulethe uphuculo olwahlukeneyo, kodwa ezona zibalaseleyo zizo Ubukho be-libvkd3d-shader njengethala leencwadi loluntu, i inkxaso ye-shader tessellation, kunye nenkxaso yemveliso yomsinga.

Iphakhejikwaye ibandakanya iilayibrari ze-libvkd3d ezinokuphunyezwa kwe-Direct3D 12, libvkd3d-shader kunye nomzekelo 4 no-5 umguquleli we-shader kunye ne-libvkd3d-utils enemisebenzi yokwenza lula ukufuduka kwezicelo ze-Direct3D 12, kunye neseti yeedemos, kuquka i-port glxgears kwi-Direct3D 12. Ikhowudi yeprojekthi isasazwa ilayisenisi phantsi kwe-LGPLv2.1.

Ithala leencwadi libvkd3d ixhasa uninzi lweempawu zeDirect3D 12, kubandakanywa nemizobo kunye nemisebenzi yekhompyutha, uluhlu lwemiyalelo kunye nemigca, izichazi kunye nezichazi zemfumba, iisignesha zeengcambu, ukufikelela okungacwangciswanga, iisampuli, iisignesha zomyalelo, iingcambu zesigxina, ukumelwa ngokungathanga ngqo, njl.

Libvkd3d-shader isebenzisa bytecode 4 kunye 5 translation yeemodeli ze-shading kwi-SPIR-V yokumelwa okuphakathi. I-Vertices, ii-pixels, i-tessellation, i-shaders yejometri elula kunye ne-computational, i-root signature serialization, kunye ne-deserialization ziyaxhaswa.

Imiyalelo ye-Shader ibandakanya i-arithmetic, i-atomic kunye nokusebenza kancinci, ulawulo lokuhamba kwedatha kunye nabaqhubi bokuthelekisa, isampuli, ukuqokelela kunye nokulayisha imiyalelo, imisebenzi yokufikelela okungacwangciswanga (i-UAV, i-UAV engalawulwayo yokuFikelela).

Kwinqanaba langoku lophuhliso, akuzona zonke iifowuni kwi-Direct3D 12 eziphunyeziweyo kwaye uvavanyo lwaqhutywa ikakhulu kwiseti yezicelo zeedemo. Ukukhutshwa akubandakanyi iimpawu ekuphuhliseni ezifana nenkxaso ye-tessellation kunye ne-geometry shaders eyinkimbinkimbi, kunye nenani lokuphucula okuhambelana ne-Direct3D core shaders kunye neendlela 12. Ezi mpawu ziya kunikwa ngokukhutshwa kwexesha elizayo.

Iimpawu eziphambili ezintsha zeVkd3d 1.2

Olunye lolona tshintsho lubalulekileyo oluvezwa kwinguqulelo entsha yi libvkd3d-shader ukufumaneka kwethala leencwadi ukuze zisetyenziswe kwiiprojekthi zomntu wesithathu, ukususela Imisebenzi eyahlukeneyo yeDirect3D 12 yongezwa, efana nale:

  • Iisampuli ezininzi.
  • Izibonelelo ezigciniweyo.
  • Amazinga okupasa kwedatha.
  • "Idatha yabucala" API yazo zonke iindawo zojongano.
  • Izabelo zecandelo lokujonga izixhobo zeShader.
  • VK_KHR_draw_indirect_count extension.
  • Isibikezelo/ukumelwa ngokomqathango.
  • Ubunzulu bonikezelo ngaphandle kwe-pixel shader.
  • Ukusika ubunzulu. Oku kufuna ulwandiso lwe-VK_EXT_depth_clip_enable.
  • Lahla irasterizer.
  • Umxube wemithombo emibini.
  • Imephu yezibonelelo ezibekwe.
  • I-ReadFromSubresource () kunye ne-WriteToSubresource () iindlela ze-ID3D12Resource.
  • Ukufikelela ngaxeshanye kwimithombo evela kwimigca emininzi.
  • Iimbono ezingenanto. Oko kukuthi, iimbono ngaphandle komthombo osisiseko.
  • Eminye imibuzo emininzi yenkxaso yenqaku.

Ukongeza koku, Kwakhona kukhankanyiwe yinkxaso eyongeziweyo yokuguqula, ukulinganisa kunye nokususa iisignesha ingcambu (vkd3d_serialize_versioned_root_signature () kunye vkd3d_create_versioned_root_signature_deserializer (), kunye nenkxaso yokusasaza imveliso.

Olunye utshintsho olubalaseleyo luyi uzalisekiso oluguquguqukayo lokusingqongileyo: VKD3D_CONFIG ukuseta iinketho zokutshintsha isimilo se libvkd3d kunye ne VKD3D_VULKAN_DEVICE ukukhupha ngaphezulu isixhobo seVulkan API.

ngaphandle koko inkxaso eyongeziweyo kwimiyalelo yomthunzi bufinfo, eval_centroid, eval_sample_index, ld2ms, sample_b, sample_d, sample_info, samplepos kunye nenkxaso yokuqala yemodeli ye-5.1 shaders.

Kwaye nenkxaso yeemeko ekujoliswe kuzo ze-OpenGL SPIR-V. Oku kuvumela i-SPIR-V eveliswe yi-libvkd3d-shader ukuba isetyenziswe nge-GL_ARB_gl_spirv. Oku kubandakanya inkxaso yeekhawunta zeathom ze-OpenGL kunye nokudibanisa iisampulu.

Gqibela ukuba ufuna ukwazi ngakumbi ngayo Malunga nolu guqulelo lutsha, unokujonga uluhlu olupheleleyo lotshintsho Kule khonkco ilandelayo.

Uyifaka njani ivkd3d kwiLinux?

Kwabo banomdla wokukwazi ukufaka i-vkd3d kwinkqubo yabo, kufuneka bafumane ikhowudi yemvelaphi kwaye baqhubeke nokuqulunqa, nangona ngeenjongo eziphathekayo okanye abo batsha kuyo, banokuzama eli thala leencwadi ngaphandle komzamo omkhulu. Ukwenza oku kufuneka ufake kuphela ilutris kwaye ngaphakathi koqwalaselo lwayo.

Ngokuphathelele abo banomdla kuqulunqo, kufuneka bafumane ikhowudi nge:

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

Okokugqibela, iileya zeVulkan kufuneka zenziwe:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Shiya uluvo lwakho

Idilesi yakho ye email aziyi kupapashwa. ezidingekayo ziphawulwe *

*

*

  1. Uxanduva lwedatha: UMiguel Ángel Gatón
  2. Injongo yedatha: Ulawulo lwe-SPAM, ulawulo lwezimvo.
  3. Umthetho: Imvume yakho
  4. Unxibelelwano lwedatha: Idatha ayizukuhanjiswa kubantu besithathu ngaphandle koxanduva lomthetho.
  5. Ukugcinwa kweenkcukacha
  6. Amalungelo: Ngalo naliphi na ixesha unganciphisa, uphinde uphinde ucime ulwazi lwakho.