เป‚เบ„เบ‡เบเบฒเบ™ Wine เป„เบ”เป‰เบ›เปˆเบญเบ Vkd3d 1.4 เบ”เป‰เบงเบเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” Direct3D 12

เป‚เบ„เบ‡เบเบฒเบ™ Wine เป„เบ”เป‰เบžเบดเบกเป€เบœเบตเบเปเบœเปˆเบŠเบธเบ” vkd3d 1.4 เบ”เป‰เบงเบเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” Direct3D 12 เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ—เบญเบญเบเบญเบฒเบเบฒเบ”เป„เบ›เบซเบฒ Vulkan graphics API. เบŠเบธเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ›เบฐเบเบญเบšเบกเบตเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” libvkd3d เบ—เบตเปˆเบกเบตเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” Direct3D 12, libvkd3d-shader เบเบฑเบšเบ•เบปเบงเปเบ›เบ‚เบญเบ‡เปเบšเบš shader 4 เปเบฅเบฐ 5 เปเบฅเบฐ libvkd3d-utils เบ—เบตเปˆเบกเบตเบŸเบฑเบ‡เบŠเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบ‡เปˆเบฒเบเบ‚เบญเบ‡เบเบฒเบ™ porting เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ Direct3D 12, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบŠเบธเบ”เบ•เบปเบงเบขเปˆเบฒเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡, เบฅเบงเบกเบ—เบฑเบ‡เบžเบญเบ”. เบ‚เบญเบ‡ glxgears เบเบฑเบš Direct3D 12. เบฅเบฐเบซเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เปเบˆเบเบขเบฒเบเป‚เบ”เบเบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰ LGPLv2.1.

เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” libvkd3d เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ” Direct3D 12 เบชเปˆเบงเบ™เปƒเบซเบเปˆ, เบฅเบงเบกเบ—เบฑเบ‡เบญเบธเบ›เบฐเบเบญเบ™เบฎเบนเบšเบžเบฒเบšเปเบฅเบฐเบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰, เปเบ–เบงเปเบฅเบฐเบฅเบฒเบเบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡, handles เปเบฅเบฐ heap handles, root signatures, out-of-order access, Samplers, command signatures, root constants, indirect rendering, clear method *( ) เปเบฅเบฐเบชเบณเป€เบ™เบปเบฒ*().

libvkd3d-shader เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เปเบ›เบ‚เบญเบ‡ bytecode เบ‚เบญเบ‡เปเบšเบš shader 4 เปเบฅเบฐ 5 เป€เบ›เบฑเบ™เบเบฒเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™ SPIR-V เบฅเบฐเบ”เบฑเบšเบ›เบฒเบ™เบเบฒเบ‡. เบฎเบญเบ‡เบฎเบฑเบš vertex, pixel, tessellation, compute and simple geometry shaders, root signature serialization and deserialization. เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ‚เบญเบ‡ Shader เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป€เบฅเบเบ„เบฐเบ™เบดเบ”, เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเปเบฅเบฐเบšเบดเบ”, เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบฅเบฐเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเปเบฅเบฐเบเบฒเบ™เป‚เบซเบผเบ”เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ, เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ unordered (UAV, Unordered Access View).

เปƒเบ™โ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เปƒเบซเบกเปˆโ€‹:

  • ะ’ะฝะตัะตะฝั‹ ะผะฝะพะณะพั‡ะธัะปะตะฝะฝั‹ะต ัƒะปัƒั‡ัˆะตะฝะธั ะฒ ะบะพะผะฟะธะปัั‚ะพั€ ัˆะตะนะดะตั€ะพะฒ ะฝะฐ ัะทั‹ะบะต HLSL (High-Level Shader Language), ะฟั€ะตะดะพัั‚ะฐะฒะปัะตะผะพะผ ะฝะฐั‡ะธะฝะฐั ั DirectX 9.0.
  • ะŸั€ะตะดะปะพะถะตะฝะฐ ะฝะพะฒะฐั ั€ะตะฐะปะธะทะฐั†ะธั ะบัƒั‡ะธ ะดะตัะบั€ะธะฟั‚ะพั€ะพะฒ (Descriptor Heap), ะธัะฟะพะปัŒะทัƒัŽั‰ะฐั Vulkan-ั€ะฐััˆะธั€ะตะฝะธะต VK_EXT_descriptor_indexing.
  • ะ”ะพะฑะฐะฒะปะตะฝะฐ ะฝะพะฒะฐั ั€ะตะฐะปะธะทะฐั†ะธั ะณั€ะฐะฝะธั† (fence), ะพัะฝะพะฒะฐะฝะฝะฐั ะฝะฐ Vulkan-ั€ะฐััˆะธั€ะตะฝะธะธ K_KHR_timeline_semaphore.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™