Wine төсөл Direct3D 1.5 хэрэгжүүлэлттэй Vkd3d 12-г нийтлэв

Wine төсөл нь Vulkan график API руу дуудлагыг дамжуулах замаар ажилладаг Direct3D 1.5-ийн хэрэгжилт бүхий vkd3d 12 багцыг нийтлэв. Энэхүү багцад Direct3D 3-ийн хэрэгжилт бүхий libvkd12d номын сангууд, 3, 4-р шэйдер загваруудын орчуулагчтай libvkd5d-shader, Direct3D 3 програмуудыг зөөвөрлөхөд хялбар болгох функц бүхий libvkd12d-utils, портыг багтаасан үзүүлэнгийн жишээнүүд багтсан болно. of glxgears Direct3D 12. Төслийн кодыг LGPLv2.1-ийн дагуу лицензээр түгээсэн.

Libvkd3d номын сан нь график болон тооцооллын хэрэгсэл, дараалал болон тушаалын жагсаалт, бариул болон овоолгын бариул, үндсэн гарын үсэг, захиалгат хандалт, дээж авагч, тушаалын гарын үсэг, үндсэн тогтмолууд, шууд бус дүрслэл, Clear аргууд зэрэг Direct3D 12-ын ихэнх функцуудыг дэмждэг *( ) болон Хуулах*().

libvkd3d-shader-д шэйдерийн 4 ба 5-р загваруудын байт кодыг завсрын SPIR-V дүрслэл болгон хөрвүүлэх ажлыг гүйцэтгэдэг. Орой, пиксел, tessellation, тооцоолох болон энгийн геометрийн шэйдер, root гарын үсгийн цуваа болон цуваа салалтыг дэмждэг. Шэйдерийн зааварт арифметик, атомын болон битийн үйлдлүүд, харьцуулах болон өгөгдлийн урсгалын хяналтын операторууд, дээж авах, цуглуулах, ачаалах заавар, захиалгагүй хандалтын үйлдлүүд (UAV, Unordered Access View) багтана.

Шинэ хувилбарт:

  • Внесены многочисленные улучшения в компилятор шейдеров на языке HLSL (High-Level Shader Language), предоставляемом начиная с DirectX 9.0. В том числе в структурах и массивах улучшена поддержка объектных типов HLSL, таких как Texture2D, добавлена поддержка встроенных функций dot(), ldexp() и lerp(), для 4 и 5 моделей шейдеров добавлена поддержка логических операторов «and», «or» и «not», а также возможность приведения булевых типов.
  • Реализована опция VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV для загрузки неупорядоченного представления доступа (UAV) для многокомпонентных форматов SPIR-V (DXGI_FORMAT).

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх