Inguqulo entsha ye-vkd3d 1.3 isikhishiwe

Ngemva konyaka nengxenye yentuthuko, futhihe Wine project umemezele ukwethulwa kwe inguqulo entsha yephakheji «i-vkd3d 1.3″ ngokuqaliswa kwe-Direct3D 12 okusebenza ngokuhumusha izingcingo ku-API yezithombe ze-Vulkan.

Le nguqulo iqukethe ukuthuthukiswa okuhlukahlukene futhi okugqamile kule nguqulo entsha Ukusekelwa kokuqala kwe-HLS yokwakhaL, kanye ne- I-Shader Model 5.1 yokusekela uhlu oluchazayo, usekelo lokwehlisa ama-shader e-Direct3D, nokunye.

Kulabo abangalazi iphakethe, kufanele bakwazi lokho ihlanganisa imitapo yolwazi ye-libvkd3d enokuqaliswa kwe-Direct3D 12, libvkd3d-shader nge-model 4 ne-5 shader translator kanye ne-libvkd3d-utils enemisebenzi yokwenza lula ukufuduka kwezicelo ze-Direct3D 12, kanye neqoqo lamademo, kufaka phakathi i-glxgears port eya ku-Direct3D 12. Ikhodi yephrojekthi isatshalaliswa ilayisensi ngaphansi kwe-LGPLv2.1.

Umtapo Wezincwadi libvkd3d isekela iningi lezici ze-Direct3D 12, okuhlanganisa imisebenzi yegrafu neyokubala, izinhlu zemiyalo nolayini, izincazelo nezichazi zenqwaba, amasiginesha ezimpande, ukufinyelela okungahleliwe, amasampula, amasiginesha emiyalo, ama-root constants, ukumelwa kommeleli, njll.

I-Libvkd3d-shader isebenzisa ukuhunyushwa kwekhodi ye-byte 4 no-5 yamamodeli e-shading ekumeleleni okuphakathi kwe-SPIR-V. Ama-Vertices, amaphikseli, i-tessellation, ama-shader ejiyomethri ekhomputha futhi alula, ukwenziwa kwe-root signature serialization, kanye ne-deserialization kuyasekelwa.

Imiyalo ye-shader ifaka ukusebenza kwe-arithmetic, i-atomic kanye ne-bitwise, ukulawulwa kokugeleza kwedatha nokuqhathanisa opharetha, izibonelo zalokho, ukuqoqa nokulayisha imiyalo, imisebenzi yokufinyelela engaxhunywanga (i-UAV, ukubuka okungenamkhawulo kokufinyelela).

Kulesi sigaba samanje sentuthuko, akuzona zonke izingcingo eziya ku-Direct3D 12 ezisetshenziswayo futhi ukuhlolwa kwenziwa ikakhulukazi kusethi yezicelo zedemo.

Izici ezintsha eziyinhloko zeVkd3d 1.3

Kule nguqulo entsha ye-vkd3d 1.3 eyethulwa, kugqanyiswe ukuthi wengeze usekelo lokuqala lokuhlanganisa kanye nokunikeza ama-shader kusengaphambili nge-HLSL (ulimi lwe-shader olusezingeni eliphezulu), olunikezwa kusukela ku-DirectX 9.0.

Olunye ushintsho olugqamile kule nguqulo entsha yi- ukusekelwa kokusebenza kwamaphoyinti antantayo anembayo kabili kuma-shader, kanye nokungaqondisi kahle kwamashader e-tessellation, ukuthunyelwa kwezifanekiso ezivela kuma-shader, isilungisi "esinembile" se-shader, kanye nemingcele yomhlaba wonke yezinsiza ezisenkumbulweni.

Singathola futhi ukuthi ikhono lokuqaqa ama-shader we-Direct3D kukhodi yamabhayithi esifanekisweni se-assembler, kanye nokwesekwa okwengeziwe kokuhlaziya ifomethi ye-bytecode ye-Direct3D endala esetshenziswa kumamodeli we-Direct3D 1, 2, kanye no-3 shader.

libvkd3d yengeze izici ze-Direct3D 12, njengamasiginesha ezimpande, izinto zokubala zokubheka ezingahlelekile, okukhiphayo okuhlanganisa ama-booleans, imodi yokubhala ye-mirror_once, kanye nesakhiwo se-vkd3d_host_time_domain_info yengeza.

Kwezinye izinguquko okuvelele kule nguqulo entsha:

  • I-vkd3d_shader_preprocess_info inweba ukwakheka kwe-vkd3d_shader_compile_info, futhi ingasetshenziswa ukucacisa amapharamitha wokucubungula ngaphambili njengezincazelo ze-preprocessor macro.
  • I-vkd3d_shader_hlsl_source_info inweba ukwakheka kwe-vkd3d_shader_compile_info, futhi ingasetshenziswa ukucacisa i-HLSL nokwakha amapharamitha njengephrofayili eqondiwe nendawo yokungena.
  • Xhumanisa i-Direct3D 12 namamodeli we-Vulkan
  • I-VKD3D_SHADER_COMPILE_OPTION_API_VERSION ingasetshenziswa ukucacisa inguqulo ye-libvkd3d-shader API uhlelo oluqondiswe kuyo. Uma kungashiwongo, kuzosetshenziswa i-VKD3D_SHADER_API_VERSION_1_2.
  • I-vkd3d-compiler izoshintsha ngokuzenzakalelayo ekuphumeni kombala uma inganquma ukuthi i
    okukhiphayo kuyi-teleprinter ekwazi umbala.
  • Ukwesekwa okungeziwe kwamalungu afanayo esichazi achazwe ku-Shader Model 5.1.

Okokugcina uma ufuna ukwazi kabanzi ngayo mayelana nale nguqulo entsha, ungabheka uhlu oluphelele lwezinguquko Kulesi sixhumanisi esilandelayo.

Ungayifaka kanjani i-vkd3d ku-Linux?

Kulabo abanentshisekelo yokukwazi ukufaka i-vkd3d kusistimu yabo, kufanele bathole ikhodi yomthombo bese beqhubeka nokuhlanganiswa, yize kungenxa yezinjongo ezisebenzayo noma zalabo abasha, bangazama lo mtapo wolwazi ngaphandle komzamo omkhulu. Ngalokhu, kufanele bafake i-lutris kuphela nangaphakathi kokucushwa kwayo.

Ngokuqondene nalabo abanentshisekelo yokuhlanganiswa, kufanele bathole ikhodi 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"

Ekugcineni, izendlalelo zeVulkan kumele zinikwe amandla:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.