Iphrojekthi yewayini ikhiphe i-Vkd3d 1.2 esebenzisa i-Direct3D 12

Iphrojekthi Yewayini eshicilelwe ukukhululwa kwephakheji i-vkd3d 1.2 ngokuqaliswa kwe-Direct3D 12 okusebenza ngokusakaza izingcingo ku-API yezithombe ze-Vulkan. Iphakheji ihlanganisa imitapo yolwazi ye-libvkd3d enokuqaliswa kwe-Direct3D 12, i-libvkd3d-shader enomhumushi wamamodeli we-shader 4 no-5 kanye nama-libvkd3d-utils anemisebenzi yokwenza lula ukuthuthwa kwezinhlelo zokusebenza ze-Direct3D 12, kanye nesethi yezibonelo zedemo, kuhlanganise nechweba. yama-glxgears kuya ku-Direct3D 12. Ikhodi yephrojekthi isatshalaliswa ngu ilayisensi ngaphansi kwe-LGPLv2.1.

umtapo wezincwadi we-libvkd3d isekela Iningi lezici ze-Direct3D 12, ezihlanganisa ihluzo nezinsiza zekhompuyutha, imigqa nohlu lwemiyalo, izibambo nezibambo zenqwaba, amasignesha ezimpande, ukufinyelela ngaphandle kwe-oda, Amasampula, amasignesha emiyalo, ama-root constants, ukunikezwa okungaqondile, Sula*() izindlela futhi Kopisha*().

Ku-libvkd3d-shader, ukuhunyushwa kwe-bytecode yamamodeli we-shader 4 no-5 kube ukumelwa okumaphakathi kwe-SPIR-V kuyasetshenziswa. I-Vertex, i-pixel, i-tessellation, i-comute ne-geometry shader elula, ukukhiqizwa kwesiginesha yezimpande kanye ne-deserialization kuyasekelwa. Imiyalo ye-Shader ihlanganisa i-arithmetic, i-athomu kanye nokusebenza kwebhithi, ukuqhathanisa nokulawula ukugeleza kwedatha, isampula, imiyalelo yokuqoqa nokulayisha, imisebenzi yokufinyelela engahlelekile (UAV, Ukubuka Kokufinyelela Okungahlelekile).

Phakathi kokubaluleke kakhulu emisha ku-Vkd3d 1.2 okulandelayo kugqanyisiwe:

  • Ilabhulali ye-libvkd3d-shader isilungele ukusetshenziswa kumaphrojekthi ezinkampani zangaphandle.
  • Ukusekelwa kwe-Tessellation shader.
  • Ukusekelwa kokuguqulwa, ukwenziwa kwe-serialization kanye nokususwa kwe-serialization kwamasiginesha ezimpande (vkd3d_serialize_versioned_root_signature() kanye ne-vkd3d_create_versioned_root_signature_deserializer()).
  • Usekelo lokuphuma kokusakaza-bukhoma.
  • Ukuqaliswa kwezici eziningi ebezingatholakali ze-Direct3D 12 ngaphambilini, ezifaka ukusekelwa kwamasampula amaningi, ukubhukha izinsiza,
    ukunikezwa okunenkomba okungaqondile, ukunikezwa okujulile ngaphandle kwama-pixel shader, ukufinyelela ngesikhathi esisodwa kuzinsiza ezivela kulayini womyalo ohlukene, ukubukwa okungenalutho.

  • Kwengezwe okuguquguqukayo kwendawo: VKD3D_CONFIG ukuze usethe izinketho zokushintsha ukuziphatha kwe-libvkd3d kanye ne-VKD3D_VULKAN_DEVICE ukukhipha idivayisi ye-Vulkan API.
  • Kwengezwe ukwesekwa kwemiyalo ye-bufinfo shader,
    eval_centroid,
    eval_sample_index,
    ld2ms,
    isampula_b,
    isampula_d,
    ulwazi_lwesampula,
    amasampulapos.

Source: opennet.ru

Engeza amazwana