рд╡рд╛рдЗрди рдкреНрд░рдХрд▓реНрдкрд╛рдиреЗ рдбрд╛рдпрд░реЗрдХреНрдЯ3рдбреА 1.4 рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ Vkd3d 12 рдЬрд╛рд░реА рдХреЗрд▓реЗ рдЖрд╣реЗ

рд╡рд╛рдЗрди рдкреНрд░реЛрдЬреЗрдХреНрдЯрдиреЗ рдбрд╛рдпрд░реЗрдХреНрдЯ3рдбреА 1.4 рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ vkd3d 12 рдкреЕрдХреЗрдЬрдЪреЗ рдкреНрд░рдХрд╛рд╢рди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ рдЬреЗ рд╡реНрд╣рд▓реНрдХрди рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ API рд╡рд░ рдХреЙрд▓ рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯрд┐рдВрдЧрджреНрд╡рд╛рд░реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ. рдкреЕрдХреЗрдЬрдордзреНрдпреЗ Direct3D 3 рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ libvkd12d рд▓рд╛рдпрдмреНрд░рд░реА, рд╢реЗрдбрд░ рдореЙрдбреЗрд▓ 3 рдЖрдгрд┐ 4 рдЪреНрдпрд╛ рдЕрдиреБрд╡рд╛рджрдХрд╛рд╕рд╣ libvkd5d-shader рдЖрдгрд┐ Direct3D 3 рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдЪреЗ рдкреЛрд░реНрдЯрд┐рдВрдЧ рд╕реБрд▓рдн рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдлрдВрдХреНрд╢рдиреНрд╕рд╕рд╣ libvkd12d-utils, рддрд╕реЗрдЪ рдбреЗрдореЛ рдЙрджрд╛рд╣рд░рдгрд╛рдВрдЪрд╛ рд╕рдВрдЪ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рдбрд╛рдпрд░реЗрдХреНрдЯ3рдбреА 12 рдкрд░реНрдпрдВрдд glxgears. рдкреНрд░рдХрд▓реНрдк рдХреЛрдб LGPLv2.1 рдЕрдВрддрд░реНрдЧрдд рдкрд░рд╡рд╛рдирд╛рдХреГрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ.

libvkd3d рд▓рд╛рдпрдмреНрд░рд░реА рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдЖрдгрд┐ рд╕рдВрдЧрдгрди рд╕реБрд╡рд┐рдзрд╛, рд░рд╛рдВрдЧ рдЖрдгрд┐ рдХрдорд╛рдВрдб рд▓рд┐рд╕реНрдЯ, рд╣рдБрдбрд▓ рдЖрдгрд┐ рд╣реАрдк рд╣рдБрдбрд▓, рд░реВрдЯ рд╕рд┐рдЧреНрдиреЗрдЪрд░, рдЖрдЙрдЯ-рдСрдл-рдСрд░реНрдбрд░ рдНрдХреНрд╕реЗрд╕, рд╕реЕрдореНрдкрд▓рд░реНрд╕, рдХрдорд╛рдВрдб рд╕рд┐рдЧреНрдиреЗрдЪрд░, рд░реВрдЯ рдХреЙрдиреНрд╕реНрдЯрдВрдЯреНрд╕, рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реЗрдВрдбрд░рд┐рдВрдЧ, рдХреНрд▓рд┐рдпрд░ рдкрджреНрдзрддреА *( ) рдЖрдгрд┐ рдХреЙрдкреА рдХрд░рд╛*().

libvkd3d-shader рдордзреНрдпреЗ, shader рдореЙрдбреЗрд▓ 4 рдЖрдгрд┐ 5 рдЪреНрдпрд╛ bytecode рдЪреЗ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ SPIR-V рдкреНрд░рд╕реНрддреБрддреАрдХрд░рдгрд╛рдд рднрд╛рд╖рд╛рдВрддрд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рд╡реНрд╣рд░реНрдЯреЗрдХреНрд╕, рдкрд┐рдХреНрд╕реЗрд▓, рдЯреЗрд╕реЗрд▓реЗрд╢рди, рдХрдВрдкреНрдпреВрдЯ рдЖрдгрд┐ рд╕рд╛рдзреНрдпрд╛ рднреВрдорд┐рддреА рд╢реЗрдбрд░реНрд╕, рд░реВрдЯ рд╕рд┐рдЧреНрдиреЗрдЪрд░ рд╕реАрд░рд┐рдпрд▓рд╛рдпрдЭреЗрд╢рди рдЖрдгрд┐ рдбреАрд╕реАрд░рд┐рдпрд▓рд╛рдпрдЭреЗрд╢рдирд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддреЗ. рд╢реЗрдбрд░ рд╕реВрдЪрдирд╛рдВрдордзреНрдпреЗ рдЕрдВрдХрдЧрдгрд┐рдд, рдЕрдгреВ рдЖрдгрд┐ рдмрд┐рдЯ рдСрдкрд░реЗрд╢рдиреНрд╕, рддреБрд▓рдирд╛ рдЖрдгрд┐ рдбреЗрдЯрд╛ рдкреНрд░рд╡рд╛рд╣ рдирд┐рдпрдВрддреНрд░рдг рдСрдкрд░реЗрдЯрд░, рдирдореБрдирд╛, рдПрдХрддреНрд░рд┐рдд рдЖрдгрд┐ рд▓реЛрдб рд╕реВрдЪрдирд╛, рдЕрдХреНрд░рдорд┐рдд рдНрдХреНрд╕реЗрд╕ рдСрдкрд░реЗрд╢рдиреНрд╕ (UAV, Unordered Access View) рдпрд╛рдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реЛрддреЛ.

рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ:

  • DirectX 9.0 рдкрд╛рд╕реВрди рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реНрдпрд╛ HLSL (рд╣рд╛рдп-рд▓реЗрд╡реНрд╣рд▓ рд╢реЗрдбрд░ рд▓рдБрдЧреНрд╡реЗрдЬ) рд╢реЗрдбрд░ рдХрдВрдкрд╛рдЗрд▓рд░рдордзреНрдпреЗ рдЕрдиреЗрдХ рд╕реБрдзрд╛рд░рдгрд╛ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд.
  • рд╡рд▓реНрдХрди рд╡рд┐рд╕реНрддрд╛рд░ VK_EXT_descriptor_indexing рд╡рд╛рдкрд░реВрди рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рд╣реАрдкрдЪреА рдирд╡реАрди рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреЗрд▓реА рдЖрд╣реЗ.
  • Vulkan рд╡рд┐рд╕реНрддрд╛рд░ K_KHR_timeline_semaphore рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдирд╡реАрди рдХреБрдВрдкрдг рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЬреЛрдбрд▓реА.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛