A Wine projekt kiadta a Vkd3d 1.2-t a Direct3D 12 megvalósításával

Wine Projekt közzétett csomag kiadása vkd3d 1.2 a Direct3D 12 megvalósításával, amely a Vulkan grafikus API hívásainak transzlációján keresztül működik. A csomag tartalmazza a libvkd3d könyvtárakat a Direct3D 12 megvalósítással, a libvkd3d-shader-t a 4. és 5. modellek shaderjeinek transzlátorával és a libvkd3d-utils-t a Direct3D 12 alkalmazások portolásának megkönnyítésére, valamint egy sor bemutató példát, beleértve a glxgears Direct3D 12-re portolt változatát. A projekt kódja terjesztésre kerül LGPLv2.1 licenc alatt áll.

libvkd3d könyvtár támogatja a Direct3D 12 nagy részének funkcionalitását biztosítja, beleértve a grafikai és számítási eszközöket, a sorokat és parancslistákat, a leírókat és a leíró halmazokat, a gyökér aláírásokat, a rendezetlen hozzáférést, a Samplereket, a parancsok aláírásait, a gyökér konstansokat, a közvetett (indirect) renderelést, a Clear*() és Copy*() módszereket.

A libvkd3d-shader a 4. és 5. modell shaderjeinek bájt-kódját SPIR-V köztes reprezentációvá alakítja. Támogatja a vertex, pixel, tesszeláló, számítási és egyszerű geometriai shader-eket, a gyökér aláírásokat pedig sorosítását és deszerializációját. A shader utasítások közt megvalósultak a matematikai, atomikus és bitműveletek, a összehasonlító operátorok és az adatfolyam-irányítási utasítások, a sample, gather és load utasítások, valamint a rendezetlen hozzáférési műveletek (UAV, Unordered Access View).

A legjelentősebb újdonságok jellemzők a Vkd3d 1.2-ben:

  • A libvkd3d-shader könyvtár használatra készen áll külső projektekben.
  • Támogatás a tesszeláló shader-ekhez.
  • A gyökér aláírások (vkd3d_serialize_versioned_root_signature() és vkd3d_create_versioned_root_signature_deserializer()) transzlációjára, sorosítására és deszerializációjára.
  • Támogatás a folyamatos kimenethez.
  • Sok korábban nem elérhető Direct3D 12 funkció megvalósítása, beleértve a multisampling támogatást, az erőforrások foglalását,
    a közvetett indexelésű renderelést, pixel shaderek nélküli mélységrenderelést, az erőforrások párhuzamos hozzáférését különböző parancssorok által, valamint a null nézeteket (Null-views).
  • Új környezeti változók lettek hozzáadva: VKD3D_CONFIG a libvkd3d viselkedésének opcióinak beállításához és VKD3D_VULKAN_DEVICE a Vulkan API-hoz az eszköz felülbírálásához.
  • Támogatás került hozzáadásra a shader utasításokhoz, mint például bufinfo,
    eval_centroid,
    eval_sample_index,
    ld2ms,
    sample_b,
    sample_d,
    sample_info,
    samplepos.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster