Ang proyekto sa bino nagpagawas sa Vkd3d 1.2 nga adunay pagpatuman sa Direct3D 12

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

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

Ang libvkd3d-shader nagpatuman sa paghubad sa bytecode sa shader models 4 ug 5 ngadto sa intermediate nga representasyon sa SPIR-V. Nagsuporta sa vertex, pixel, tessellation, compute ug simple geometry shaders, root signature serialization ug deserialization. Ang mga instruksyon sa shader naglakip sa arithmetic, atomic ug bit operations, pagtandi ug data flow control operators, sample, gather and load instructions, unordered access operations (UAV, Unordered Access View).

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

  • Π“ΠΎΡ‚ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ libvkd3d-shader для использования Π² сторонних ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° тСссСляционных ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ².
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° прСобразования, сСриализации ΠΈ дСсСриализации ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Ρ… сигнатур (vkd3d_serialize_versioned_root_signature() ΠΈ vkd3d_create_versioned_root_signature_deserializer()).
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°.
  • РСализация ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π½Π΅Π΅ нСдоступных возмоТностСй Direct3D 12, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΡΠΌΠΏΠ»ΠΈΠ½Π³Π°, рСзСрвирования рСсурсов,
    косвСнной индСксированной отрисовки, Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ Π±Π΅Π· ΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹Ρ… ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ доступа ΠΊ рСсурсам ΠΈΡ… Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… прСдставлСний (Null-views).

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния: VKD3D_CONFIG для установки ΠΎΠΏΡ†ΠΈΠΉ для измСнСния повСдСния libvkd3d ΠΈ VKD3D_VULKAN_DEVICE для пСрСопрСдСлСния устройства для API Vulkan.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Π½Ρ‹Ρ… инструкций bufinfo,
    eval_centroid,
    eval_sample_index,
    ld2ms,
    sample_b,
    sample_d,
    sample_info,
    samplepos.

Source: opennet.ru

Idugang sa usa ka comment