Projekti Wine publikoi Vkd3d 1.16 me implementimin e Direct3D 12

Projekti Wine publikoi versionin e paketës vkd3d 1.16 me implementimin e Direct3D 12, i cili funksionon nëpërmjet përkthimit të thirrjeve në API grafik Vulkan. Paketa përmban libraritë libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me përkthyesin e modeleve të shenjuesve 4 dhe 5 dhe libvkd3d-utils me funksione për të thjeshtuar portimin e aplikacioneve Direct3D 12, si dhe një set shembujsh demonstruese, duke përfshirë portimin e glxgears në Direct3D 12. Kodi i projektit shpërndahet nën licencën LGPLv2.1.

Biblioteka libvkd3d mbështet shumicën e mundësive të Direct3D 12, duke përfshirë mjete për grafikë dhe llogaritje, radhë dhe lista komanduese, deskriptorë dhe deskriptorë kupë, nënshkrime rrënjësore, qasje të pa renditur, Sampler, nënshkrime komandash, konstanta rrënjësore, përshkrimin e të pavendosur (indirect) dhe metodet Clear*() dhe Copy*(). Në libvkd3d-shader është realizuar translacioni i kodit të bajtëve të modeleve të shenjuesve në përfaqësimin e ndërmjetëm SPIR-V. Mbështeten shenjues të majtë, piksel, tessellim, llogaritje dhe shenjues të thjeshtë gjeometrik, serializimi dhe deserializimi i nënshkrimeve rrënjësore. Nga instruksionet e shenjuesve janë realizuar operacione aritmetike, atomike dhe bitore, operatorë krahasimi dhe kontrolli të rrjedhës së të dhënave, instruksionet sample, gather dhe load, operacione qasjeje të pa renditur (UAV, Unordered Access View).

NĂ« versionin e ri:

  • ËshtĂ« stabilizuar dhe pĂ«rfshirĂ« si parazgjedhje mbĂ«shtetje pĂ«r shenjuesit DXIL (DirectX Intermediate Language).
  • NĂ« kompilatorin e gjuhĂ«s sĂ« shenjuesve HLSL Ă«shtĂ« shtuar mbĂ«shtetje fillestare pĂ«r shenjuesit gjeometrikĂ«. PĂ«r modelet e shenjuesve 1, 2, 3 Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r adresimin e tĂ«rthortĂ«, moduleve dhe kufizimin e vlerave.
  • NĂ« bibliotekĂ«n libvkd3d Ă«shtĂ« shpallur mbĂ«shtetje pĂ«r modelin e shenjuesve 6.0. NĂ« ndĂ«rfaqen e programit ID3D12Device1 Ă«shtĂ« realizuar metoda SetEventOnMultipleFenceCompletion(). ËshtĂ« shtuar mbĂ«shtetje pĂ«r zgjatimin Vulkan VK_KHR_zero_initialize_workgroup_memory pĂ«r inicializimin me zero tĂ« memories pĂ«r shenjuesit. Zgjatimi Vulkan VK_KHR_maintenance2 Ă«shtĂ« pĂ«rfshirĂ« si i detyrueshĂ«m sipas specifikimit Vulkan 1.1.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r disasemblerimin e shenjuesve SPIR-V dhe efekteve tĂ« binarĂ«ve "fx_2_0".
  • ËshtĂ« shtuar mbĂ«shtetje eksperimentale pĂ«r adresimin e tĂ«rthortĂ« tĂ« bufferĂ«ve konstantĂ« nĂ« GLSL (OpenGL Shading Language).
  • NĂ« implementimin e gjuhĂ«s sĂ« shenjuesve MSL (Metal Shading Language), e pĂ«rdorur nga Apple nĂ« API-in grafik Metal, Ă«shtĂ« shtuar mundĂ«sia pĂ«r tĂ« ngarkuar tekstura.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r funksionet e integruara HLSL: AllMemoryBarrier(), AllMemoryBarrierWithGroupSync(), DeviceMemoryBarrier(), DeviceMemoryBarrierWithGroupSync(), GroupMemoryBarrier() dhe GroupMemoryBarrierWithGroupSync().
  • JanĂ« realizuar flagjet VKD3D_SHADER_COMPILE_OPTION_FEATURE_ZERO_INITIALIZE_WORKGROUP_MEMORY, VKD3D_SHADER_COMPONENT_INT64, VKD3D_SHADER_COMPONENT_FLOAT16, VKD3D_SHADER_COMPONENT_UINT16, VKD3D_SHADER_COMPONENT_INT16, VKD3D_SHADER_RESOURCE_DATA_NONE dhe VKD3D_SHADER_RESOURCE_DATA_UINT.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster