Vinprojekt
libvkd3d bibliotek
I libvkd3d-shader implementeras översättningen av bytekod för shadermodellerna 4 och 5 till en mellanliggande SPIR-V-representation. Vertex, pixel, tessellation, beräkning och enkel geometriskuggning, rotsignaturserialisering och deserialisering stöds. Shader-instruktioner inkluderar aritmetiska, atom- och bitoperationer, jämförelse- och dataflödeskontrolloperatörer, sampla, samla och ladda instruktioner, oordnade åtkomstoperationer (UAV, Unordered Access View).
Bland de mest betydande
- Biblioteket libvkd3d-shader är redo att användas i tredjepartsprojekt.
- Tessellation shader stöd.
- Stöd för konvertering, serialisering och deserialisering av rotsignaturer (vkd3d_serialize_versioned_root_signature() och vkd3d_create_versioned_root_signature_deserializer()).
- Stöd för strömmande utdata.
- Implementering av många tidigare otillgängliga Direct3D 12-funktioner, inklusive stöd för multisampling, resursreservation,
indirekt indexerad rendering, djuprendering utan pixelshaders, samtidig åtkomst till resurser från olika kommandoköer, Null-vyer. - Tillagda miljövariabler: VKD3D_CONFIG för att ställa in alternativ för att ändra libvkd3d-beteende och VKD3D_VULKAN_DEVICE för att åsidosätta enheten för Vulkan API.
- Lade till stöd för buffinfo shader instruktioner,
eval_centroid,
eval_sample_index,
ld2ms,
sample_b,
sample_d,
sample_info,
provpos.
Källa: opennet.ru