Mesa 22.3, nemokama OpenGL ir Vulkan diegimo, išleidimas

Paskelbtas nemokamo OpenGL ir Vulkan API diegimo – Mesa 22.3.0 – leidimas. Pirmoji „Mesa 22.3.0“ šakos versija turi eksperimentinę būseną – galutinai stabilizavus kodą, bus išleista stabili 22.3.1 versija.

„Mesa 22.3“ palaiko „Vulkan 1.3“ grafikos API, skirtą „Intel“ GPU, „radv“, skirtą AMD GPU, tu „Qualcomm“ GPU ir emuliatoriaus režimu (vn). Vulkan 1.1 palaikymas įdiegtas lavapipe (lvp) programinės įrangos rasterizeryje, o Vulkan 1.0 – v3dv tvarkyklėje (Broadcom VideoCore VI GPU iš Raspberry Pi 4).

Mesa taip pat teikia pilną OpenGL 4.6 palaikymą 965, iris (Intel), radeonsi (AMD), zink ir llvmpipe tvarkyklėms. OpenGL 4.5 palaikymas galimas AMD (r600), NVIDIA (nvc0) ir Qualcomm Adreno (freedreno) GPU, OpenGL 4.3 for virgl (virgil3D virtualus GPU QEMU/KVM) ir OpenGL 4.2 d3d12 tvarkyklei (OpenGL organizavimo sluoksnis dirbti su DirectX 12).

Pagrindinės naujovės:

  • Qualcomm Adreno GPU skirta freedreno tvarkyklė palaiko OpenGL 4.5 grafikos API, o emuliatoriaus tvarkyklė (vn) palaiko Vulkan 1.3 API.
  • Panfrost tvarkyklė įgyvendina galimybę talpykloje saugoti šešėlius diske ir palaiko Mali T620 GPU. Tvarkyklė suderinama su OpenGL 3.1 specifikacija ir OpenGL ES 3.1.
  • RADV (AMD) Vulkan tvarkyklė papildė GFX11/RDNA3 GPU (Radeon RX 7000 serijos) palaikymą. Spindulių sekimo kodas buvo optimizuotas. Pridėtas R8G8B8, B8G8R8 ir R16G16B16 pikselių formatų, taip pat 64 bitų viršūnių buferio formatų palaikymas. Pridėtas palaikymas išplėstinei DynamicState2PatchControlPoints vėliavai, kuri nustato plėtinio VK_EXT_extended_dynamic_state2 palaikymą. Integruotas Radeon Raytracing Analyzer.
  • Į paketą įtraukta „Rusticle“ tvarkyklė su įdiegta „OpenCL 3.0“ specifikacija, kuri apibrėžia API ir C kalbos plėtinius, skirtus organizuoti kelių platformų lygiagretųjį skaičiavimą. Vairuotojas parašytas Rust, sukurta naudojant Mesa pateiktą Gallium sąsają ir veikia kaip Mesa esančios Clover OpenCL sąsajos analogas. Dobilas ilgą laiką buvo apleistas, o rusticl laikomas būsimu jo pakaitalu. Pagal numatytuosius nustatymus „Rust“ ir „rusticl“ palaikymas yra išjungtas ir reikia sukurti su aiškiomis parinktimis „-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021“. Kuriant, kaip papildomos priklausomybės reikalingi rustc kompiliatorius, bindgen įrišimo generatorius, LLVM, SPIRV-Tools ir SPIRV-LLVM-Translator.
  • Pagal numatytuosius nustatymus RadeonSI tvarkyklė palaiko kelių gijų atvaizdavimą per OpenGL.
  • Pristatė Mesa-DB – naujo tipo šešėlių talpyklą, kuri saugo duomenis viename faile.
  • Pridėtas OpenGL plėtinių palaikymas:
    • GL_ARB_shader_clock, skirtas llvmpipe.
    • GL_KHR_blend_equation_advanced_coherent cinkui.
    • GL_NV_shader_atomic_float, skirtas llvmpipe.
  • Pridėtas „Vulkan“ plėtinių palaikymas:
    • VK_KHR_shader_clock lavapipe.
    • VK_EXT_attachment_feedback_loop_layout RADV, lavapipe.
    • VK_KHR_pasaulinis RADV prioritetas.
    • VK_EXT_load_store_op_none RADV.
    • VK_EXT_mutable_descriptor_type RADV.
    • VK_EXT_shader_atomic_float, skirtas lvp.
    • VK_EXT_shader_atomic_float2, skirtas lvp.
    • VK_EXT_image_robustness, skirtas v3dv.
    • VK_EXT_extended_dynamic_state3 lavapipe, RADV ir ANV.
    • VK_EXT_extended_dynamic_state2 RADV.
    • VK_EXT_pipeline_robustness, skirtas v3dv.
    • VK_EXT_mesh_shader, skirtas ANV.

Šaltinis: opennet.ru

Добавить комментарий