22.0.0๊ฐ์ ๊ฐ์ ๊ฐ๋ฐ ๋์ OpenGL ๋ฐ Vulkan API์ ๋ฌด๋ฃ ๊ตฌํ์ธ Mesa 22.0.0์ด ์ถ์๋์์ต๋๋ค. Mesa 22.0.1 ๋ธ๋์น์ ์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค๋ ์คํ์ ์ํ์ ๋๋ค. ์ฝ๋๊ฐ ์ต์ข ์์ ํ๋๋ฉด ์์ ์ ์ธ ๋ฒ์ 1.3์ด ๋ฆด๋ฆฌ์ค๋ฉ๋๋ค. ์ ๋ฆด๋ฆฌ์ค๋ Intel GPU์ฉ anv ๋๋ผ์ด๋ฒ์ AMD GPU์ฉ radv์์ Vulkan XNUMX ๊ทธ๋ํฝ API๋ฅผ ๊ตฌํํ ๊ฒ์ผ๋ก ์ฃผ๋ชฉํ ๋งํฉ๋๋ค.
Vulkan 1.2 ์ง์์ ์๋ฎฌ๋ ์ดํฐ(vn) ๋ชจ๋์์ ์ฌ์ฉํ ์ ์๊ณ , Vulkan 1.1 ์ง์์ Qualcomm(tu) GPU ๋ฐ lavapipe ์ํํธ์จ์ด ๋์คํฐ๋ผ์ด์ ์์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, Vulkan 1.0 ์ง์์ Broadcom VideoCore VI(Raspberry Pi 4) GPU์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. Mesa 22.0์ ๋ํ 4.6, iris(Intel), radeonsi(AMD), zink ๋ฐ llvmpipe ๋๋ผ์ด๋ฒ์ ๋ํ ์์ ํ OpenGL 965 ์ง์์ ์ ๊ณตํฉ๋๋ค. OpenGL 4.5 ์ง์์ AMD(r600) ๋ฐ NVIDIA(nvc0) GPU์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ OpenGL 4.3์ virgl(QEMU/KVM์ฉ Virgil3D ๊ฐ์ GPU) ๋ฐ vmwgfx(VMware)์ ๋ํด ์ง์๋ฉ๋๋ค.
์ฃผ์ ํ์ :
- Vulkan 1.3 ๊ทธ๋ํฝ API์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- Gallium3D ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ง ์๋ ํด๋์ OpenGL ๋๋ผ์ด๋ฒ์ฉ ์ฝ๋๋ Intel GPU์ฉ i915 ๋ฐ i965 ๋๋ผ์ด๋ฒ, AMD GPU์ฉ r100 ๋ฐ r200, NVIDIA GPU์ฉ Nouveau๋ฅผ ํฌํจํ์ฌ ๊ธฐ๋ณธ Mesa์์ ๋ณ๋์ ๋ถ๊ธฐ "Amber"๋ก ์ด๋๋์์ต๋๋ค. Intel OpenSWR ํ๋ก์ ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก OpenGL ์ํํธ์จ์ด ๋์คํฐ๋ผ์ด์ ๋ฅผ ์ ๊ณตํ๋ SWR ๋๋ผ์ด๋ฒ๋ "Amber" ๋ถ๊ธฐ๋ก ์ด๋๋์์ต๋๋ค. ํด๋์ xlib ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ธฐ๋ณธ ๊ตฌ์กฐ์์ ์ ์ธ๋๋ฉฐ ๋์ gallium-xlib ๋ณํ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- DirectX 3 API(D12D12) ์์ OpenGL ์์ ์ ๊ตฌ์ฑํ๊ธฐ ์ํ ๋ ์ด์ด๊ฐ ํฌํจ๋ Gallium ๋๋ผ์ด๋ฒ D3D12๋ OpenGL ES 3.1๊ณผ์ ํธํ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ๋๋ผ์ด๋ฒ๋ Windows์์ Linux ๊ทธ๋ํฝ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๊ธฐ ์ํด WSL2 ๊ณ์ธต์์ ์ฌ์ฉ๋ฉ๋๋ค.
- Intel Alderlake(S ๋ฐ N) ์นฉ์ ๋ํ ์ง์์ด OpenGL ๋๋ผ์ด๋ฒ "iris" ๋ฐ Vulkan ๋๋ผ์ด๋ฒ "ANV"์ ์ถ๊ฐ๋์์ต๋๋ค.
- Intel GPU ๋๋ผ์ด๋ฒ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก VRR(Adaptive-Sync) ๊ธฐ์ ์ง์์ด ํฌํจ๋์ด ์์ด ๋ถ๋๋ฝ๊ณ ์๋ฆฌ๋ ํ์ ์๋ ๋์คํ๋ ์ด๋ฅผ ์ํด ๋ชจ๋ํฐ์ ํ๋ฉด ์ฃผ์ฌ์จ์ ์ ์์ ์ผ๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- RADV Vulkan ๋๋ผ์ด๋ฒ(AMD)๋ ๊ด์ ์ถ์ ๋ฐ ๊ด์ ์ถ์ ์ฉ ์ ฐ์ด๋์ ๋ํ ์ง์์ ๊ณ์ํด์ ๊ตฌํํฉ๋๋ค.
- Raspberry Pi 3 ๋ชจ๋ธ๋ถํฐ ์ฌ์ฉ๋๋ VideoCore VI ๊ทธ๋ํฝ ๊ฐ์๊ธฐ์ฉ์ผ๋ก ๊ฐ๋ฐ๋ v4dv ๋๋ผ์ด๋ฒ๋ Android ํ๋ซํผ์์ ์๋ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- EGL์ ๊ฒฝ์ฐ "dma-buf ํผ๋๋ฐฑ" ๋ฉ์ปค๋์ฆ์ด ๊ตฌํ๋์ด ์ฌ์ฉ ๊ฐ๋ฅํ GPU์ ๋ํ ์ถ๊ฐ ์ ๋ณด๋ฅผ ์ ๊ณตํ๊ณ ๊ธฐ๋ณธ GPU์ ๋ณด์กฐ GPU ๊ฐ์ ๋ฐ์ดํฐ ๊ตํ ํจ์จ์ฑ์ ๋์ผ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ค๊ฐ ๋ฒํผ๋ง ์์ด ์ถ๋ ฅ์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
- VMware ํ๊ฒฝ์์ 3D ๊ฐ์์ ๊ตฌํํ๋ ๋ฐ ์ฌ์ฉ๋๋ vmwgfx ๋๋ผ์ด๋ฒ์ OpenGL 4.3 ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- Vulkan ๋๋ผ์ด๋ฒ RADV(AMD), ANV(Intel) ๋ฐ zink(Vulkan์ ํตํ OpenGL)์ ํ์ฅ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- VK_KHR_dynamic_rendering(์ฉ์ํ์ดํ,radv,anv)
- VK_EXT_image_view_min_lod(radv) KHR_synchronization2.txt VK_KHR_synchronization2]](radv)
- VK_EXT_memory_object (์งํฌ)
- VK_EXT_memory_object_fd (์งํฌ)
- VK_EXT_semaphore(์งํฌ)
- VK_EXT_semaphore_fd (์งํฌ)
- VK_VALVE_mutable_descriptor_type(์งํฌ)
- ์๋ก์ด OpenGL ํ์ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค:
- GL_ARB_sparse_texture(๋ผ๋ฐ์จ์, zink)
- GL_ARB_sparse_texture2(๋ผ๋ฐ์จ์, zink)
- GL_ARB_sparse_texture_clamp(๋ผ๋ฐ์จ์, zink)
- GL_ARB_framebuffer_no_attachments
- GL_ARB_sample_shading
์ถ์ฒ : opennet.ru