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

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Wine ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° вСрсия Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° vkd3d 1.11 с рСализация Π½Π° 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).

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

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½Π°Ρ‡Π°Π»Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° стар Π±Π°ΠΉΡ‚ΠΊΠΎΠ΄ ΠΎΡ‚ Direct3D Π² ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΎ прСдставянС Π½Π° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΈ SPIR-V.
  • Π’ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° HLSL Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π½Π°Ρ‡Π°Π»Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π·Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈ ΠΎΡ‚ Direct3D ("fx_2_0", "fx_4_0", "fx_4_1" ΠΈ "fx_5_0").
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° мСТдинния Π΅Π·ΠΈΠΊ DXIL (DirectX Intermediate Language) Π² прСдставянС SPIR-V ΠΈ асСмблСрни инструкции Π·Π° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΈ Direct3D.
  • Π’ HLSL Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ "fx_2_0", "fx_4_0", "fx_4_1" ΠΈ "fx_5_0", Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ са Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ acos(), asin(), atan() ΠΈ atan2(), осигурСна Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° рСсурси "Buffer".
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ оптимизация, която ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° обновяванС Π½Π° дСскрипторитС Π² асинхронСн Ρ€Π΅ΠΆΠΈΠΌ, която ΠΌΠΎΠΆΠ΅ Π΄Π° ускори прилоТСния, обновяващи голям Π±Ρ€ΠΎΠΉ дСскриптори във всСки ΠΊΠ°Π΄ΡŠΡ€.
  • ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Vulkan Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ VK_EXT_mutable_descriptor_type ΠΈ VK_EXT_shader_viewport_index_layer Π·Π° подобряванС Π½Π° СфСктивността ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΡƒΠ» дСскриптори ΠΈ ускоряванС Π½Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° Π½Π° масиви ΠΎΡ‚ Π²Π΅Ρ€ΡˆΠΈΠ½Π½ΠΈ ΠΈ тСссСлационни ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΈ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° интСрфСйситС ID3D12Device7 ΠΈ ID3D12Resource2. Π’ интСрфСйса ID3D12Device4 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄ GetResourceAllocationInfo1().
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° интСрфСйситС D3DReflect() ΠΈ D3DDisassemble().
  • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ са ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŠΡ‡Π½ΠΈ заявки D3D12_FEATURE_D3D12_OPTIONS6 D3D12_FEATURE_D3D12_OPTIONS7, D3D12_FEATURE_D3D12_OPTIONS8, D3D12_FEATURE_D3D12_OPTIONS9, D3D12_FEATURE_D3D12_OPTIONS10, D3D12_FEATURE_D3D12_OPTIONS11, D3D12_FEATURE_D3D12_OPTIONS12, D3D12_FEATURE_D3D12_OPTIONS13.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° компилация: VKD3D_SHADER_COMPILE_OPTION_FEATURE, VKD3D_SHADER_COMPILE_OPTION_FEATURE_INT64, VKD3D_SHADER_COMPILE_OPTION_FEATURE_FLOAT64, VKD3D_SHADER_API_VERSION_1_10 ΠΈ VKD3D_SHADER_SPIRV_EXTENSION_EXT_VIEWPORT_INDEX_LAYER.
  • Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ D3D12CreateDeviceVKD3D() ΠΈ D3D12CreateDevice() са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Vulkan Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡΡ‚Π° VK_KHR_android_surface, VK_KHR_wayland_surface, VK_KHR_win32_surface, VK_KHR_xlib_surface, VK_EXT_metal_surface ΠΈ VK_MVK_ios_surface.

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

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