ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Wine ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° Vkd3d 1.7 с рСализация Π½Π° Direct3D 12

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Wine ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° вСрсия Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° vkd3d 1.7 с Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Direct3D 12, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰Π° Ρ‡Ρ€Π΅Π· транслация Π½Π° повиквания Π² графичния API Vulkan. Π’ ΠΏΠ°ΠΊΠ΅Ρ‚Π° са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ libvkd3d с Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Direct3D 12, libvkd3d-shader с транслатор Π·Π° ΡˆΠ΅ΠΉΠ΄ΡŠΡ€ΠΈ ΠΎΡ‚ 4 ΠΈ 5 ΠΌΠΎΠ΄Π΅Π», ΠΈ libvkd3d-utils с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° опростяванС Π½Π° ΠΏΠΎΡ€Ρ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° прилоТСния Direct3D 12, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ дСмонстрации, Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‰ΠΈ ΠΏΠΎΡ€Ρ‚Π° Π½Π° glxgears Π·Π° Direct3D 12. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ разпространСн ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π· LGPLv2.1.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° libvkd3d ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° голямата част ΠΎΡ‚ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° Direct3D 12, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ срСдства Π·Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ изчислСния, опашки ΠΈ ΡΠΏΠΈΡΡŠΡ†ΠΈ с ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, дСскриптори ΠΈ ΠΊΡƒΠΏΡ‡ΠΈΠ½ΠΈ дСскриптори, ΠΊΠΎΡ€Π΅Π½ΠΎΠ²ΠΈ сигнатури, нСупорядочСн Π΄ΠΎΡΡ‚ΡŠΠΏ, Sampler-ΠΈ, сигнатури Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΊΠΎΡ€Π΅Π½ΠΎΠ²ΠΈ константи, нСпряка отрисовка, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Clear*() ΠΈ Copy*(). Π’ libvkd3d-shader Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° транслация Π½Π° Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ 4 ΠΈ 5 Π½Π° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΈ Π² ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΎ прСдставянС SPIR-V. ΠŸΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ сС Π²Π΅Ρ€ΡˆΠΈΠ½Π½ΠΈ, пиксСлни, тСссСлационни, изчислитСлни ΠΈ прости Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π½ΠΈ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΈ, сСриализация ΠΈ дСсСриализация Π½Π° ΠΊΠΎΡ€Π΅Π½ΠΎΠ²Π°Ρ‚Π° сигнатура. ΠžΡ‚ ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π½ΠΈΡ‚Π΅ инструкции са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π°Ρ€ΠΈΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‡Π½ΠΈ, Π°Ρ‚ΠΎΠΌΠ½ΠΈ ΠΈ Π±ΠΈΡ‚ΠΎΠ²ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ Π·Π° сравнСниС ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, инструкции sample, gather ΠΈ load, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° нСупорядочСн Π΄ΠΎΡΡ‚ΡŠΠΏ (UAV, Unordered Access View).

Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия:

  • ΠŸΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΏΠΎ подобряванС Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° Π½Π° ΡˆΠ΅ΠΉΠ΄ΡŠΡ€ΠΈ Π½Π° HLSL (High-Level Shader Language):
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° потрСбитСлски Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° масиви ΠΊΠ°Ρ‚ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π° потрСбитСлски Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ SV_DispatchThreadID, SV_GroupID ΠΈ SV_GroupThreadID.
    • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ all(), distance(), exp(), exp2(), frac(), lit(), reflect(), sin(), cos(), smoothstep(), sqrt(), rsqrt(), step(), transpose().
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½Π°Ρ‡Π°Π»Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ с ниска точност с ΠΏΠ»Π°Π²Π°Ρ‰Π° запСтая, ΠΊΠ°Ρ‚ΠΎ 'min16float'.
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π½Π° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Direct3D 1/2/3.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ API Π·Π° парсванС (vkd3d_shader_parse_dxbc) ΠΈ сСриализация (vkd3d_shader_serialize_dxbc) Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΈ Π΄Π°Π½Π½ΠΈ DXBC.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster