Vinprojektet har frigivet Vkd3d 1.3 med Direct3D 12 implementering

ПослС ΠΏΠΎΠ»ΡƒΡ‚ΠΎΡ€Π° Π»Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Wine ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» выпуск ΠΏΠ°ΠΊΠ΅Ρ‚Π° vkd3d 1.3 с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Direct3D 12, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€Π°Π½ΡΠ»ΡΡ†ΠΈΡŽ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π² графичСский API Vulkan. Π’ состав ΠΏΠ°ΠΊΠ΅Ρ‚Π° входят Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ libvkd3d с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Direct3D 12, libvkd3d-shader c транслятором 4 ΠΈ 5 ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ΠΈ libvkd3d-utils с функциями для упрощСния портирования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Direct3D 12, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ€ дСмонстрационных ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠΎΡ€Ρ‚ glxgears Π½Π° Direct3D 12. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ LGPLv2.1.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libvkd3d ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ возмоТностСй Direct3D 12, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ срСдства для Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ вычислСний, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΠΈ списки ΠΊΠΎΠΌΠ°Π½Π΄, дСскрипторы ΠΈ дСскрипторы ΠΊΡƒΡ‡ΠΈ, ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Π΅ подписи, нСупорядочСнный доступ, Sampler-Ρ‹, сигнатуры ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Π΅ константы, Π½Π΅ΠΏΡ€ΡΠΌΡƒΡŽ (indirect) отрисовку, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Clear*() ΠΈ Copy*().

I libvkd3d-shader implementeres oversΓ¦ttelsen af ​​bytekode for shader-modeller 4 og 5 til en mellemliggende SPIR-V-reprΓ¦sentation. Vertex, pixel, tessellation, beregning og simpel geometri shaders, rodsignatur-serialisering og deserialisering understΓΈttes. Shader-instruktioner omfatter aritmetiske, atom- og bitoperationer, sammenlignings- og dataflowkontroloperatΓΈrer, sample, indsamle og indlΓ¦se instruktioner, uordnede adgangsoperationer (UAV, Unordered Access View).

Π‘Ρ€Π΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π² Π² Vkd3d 1.3 Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° компиляции ΠΈ прСпроцСссинга ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² Π½Π° языкС HLSL (High-Level Shader Language), прСдоставляСмом начиная с DirectX 9.0.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° массивов дСскрипторов, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² 5.1.
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с числами с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности Π² ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π°Ρ…, нСпрямой адрСсации для тСссСляционных ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², экспорта Ρ‚Ρ€Π°Ρ„Π°Ρ€Π΅Ρ‚ΠΎΠ² ΠΈΠ· ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² Β«preciseΒ» ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… Π±Π°Ρ€ΡŒΠ΅Ρ€ΠΎΠ² для рСсурсов Π² памяти.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ дизассСмблирования ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² Direct3D ΠΈΠ· Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄Π° Π² ассСмблСрноС прСдставлСниС.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°Π·Π±ΠΎΡ€Π° старого Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄Π° Direct3D, примСняСмого Π² модСлях ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² Direct3D 1, 2 ΠΈ 3.
  • Π’ libvkd3d Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠ΅ возмоТности Direct3D 12, ΠΊΠ°ΠΊ ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Π΅ сигнатуры, счётчики просмотра с нСупорядочСнным доступом, логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ слияния для Π²Ρ‹Π²ΠΎΠ΄Π°, Ρ€Π΅ΠΆΠΈΠΌ адрСсации тСкстур mirror_once. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° структура vkd3d_host_time_domain_info.

Kilde: opennet.ru

TilfΓΈj en kommentar