vkd3d 1.7 вече е пусната и това са нейните новини

vkd3d

vkd3d, е преводаческият слой на Wine Direct3D 12 към Vulkan

Проектът разкрито вино Преди няколко дни стартирането на новата версия на vkd3d 1.7 пакет с реализация на Direct3D 12, която работи чрез превод на повиквания към графичния API на Vulkan.

пакет включва библиотеки libvkd3d с реализации на Direct3D 12, libvkd3d-shader с превод на шейдърен модел 4 и 5 и libvkd3d-utils с функции за опростяване на миграцията на Direct3D 12 приложения, както и набор от демонстрации, включително порт на glxgears към Direct3D 12.

Библиотеката libvkd3d поддържа повечето функции на Direct3D 12, включително графики и изчисления, списъци с команди и опашки, дескриптори и дескриптори на купчина, коренни подписи, неподреден достъп, проби, командни подписи, коренни константи, непряко представяне, Clear*() и Copy*() методи.

Освен него libvkd3d-shader реализира превод на байт код 4 и 5 на моделите за засенчване в междинно представяне на SPIR-V. Поддържа връх, пиксел, теселация, изчисление и прости геометрични шейдъри, сериализация и десериализация на подпис на корен.

Аритметични, атомарни и битови операции, оператори за сравнение и контрол на потока от данни, инструкции за вземане на проби, събиране и зареждане, операции за достъп извън ред (UAV, изглед за достъп извън ред) се изпълняват от инструкции за засенчване.

Основни нови характеристики на vkd3d 1.7

В тази нова версия, която е представена на vkd3d 1.7, се откроява éПродължих работата за подобряване на компилатора на HLSL shader (High-Level Shader Language), както и добавяне на възможност за извикване на дефинирани от потребителя функции и използвайте масиви като параметри на дефинирани от потребителя функции.

Друга от промените, които се открояват в новата версия, е значително подобрена поддръжка за профили шейдър модел Direct3D 1/2/3, Също така е добавена първоначална поддръжка за типове с плаваща запетая с ниска точност като min16float.

Подчертава се също, че добавена поддръжка за параметри SV_DispatchThreadID, SV_GroupID и SV_GroupThreadID и че е добавен публичен API за анализиране (vkd3d_shader_parse_dxbc) и сериализиране (vkd3d_shader_serialize_dxbc) на DXBC двоични данни.

От други промени, които се открояват на новата версия:

  • Поддръжка на опционалния параметър "offset" на текстурния обект Load().
    метод.
  • Поддръжка на присъщата функция all().
  • Поддръжка на присъщата функция distance().
  • Поддръжка на вътрешните функции exp() и exp2().
  • Поддръжка на присъщата функция frac().
  • Поддръжка на присъщата функция lit().
  • Поддръжка на присъщата функция reflect().
  • Поддръжка на вътрешните функции sin() и cos().
  • Поддръжка на присъщата функция smoothstep().
  • Поддръжка на вътрешни функции sqrt() и rsqrt().
  • Поддръжка на присъщата функция step().
  • Поддръжка на присъщата функция transpose().
  • Поддръжка за нечувствителни към регистъра варианти на данни с плаваща дума и двойна дума
    тип
  • Частична поддръжка за типове данни с минимална точност като "min16float". В момента те се тълкуват като техни редовни двойници.
    Подобрена поддръжка за постоянно разпространение, по-специално за постоянно разпространение чрез swizzles.
  • Опцията за компилиране VKD3D_SHADER_COMPILE_OPTION_WRITE_TESS_GEOM_POINT_SIZE може да се използва за указване дали SPIR-V шейдъри, насочени към Vulkan среди, трябва да записват размери на точки за геометрия и теселационни шейдъри, ако не са посочени, размерите на точките ще бъдат записани.

И накрая, За тези, които искат да научат повече за това, те трябва да знаят, че кодът на проекта е лицензиран под LGPLv2.1 и че могат да се консултират с подробностите за тази нова версия В следващия линк.

Как да инсталирам vkd3d 1.7?

За интересувам се от възможността да инсталирам vkd3d Те трябва да знаят, че трябва да компилират изходния код, така че първо трябва да го получим, важно е да споменем, че Vkd3d зависи от SPIRV-Headers и Vulkan-Headers (>= 1.2.139).

За да извършим компилацията, трябва да отворим терминал и в него да напишем следната команда:

git clone https://gitlab.winehq.org/wine/vkd3d.git

След като това е направено, ние продължаваме да влизаме в наскоро изтеглената директория с:

cd vkd3d

И ние продължаваме да компилираме, като изпълним следните команди:

./configure

make

make install

Si искате да научите повече за компилацията на vkd3d можете да проверите подробностите в тази връзка


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.