Кандидат за версии Wine 8.0 и версия vkd3d 1.6

Започна тестването на първия кандидат за изданията на Wine 8.0, отвореното изпълнение на WinAPI. Кодовата база е преминала в стадий на замразяване преди издаването, което се очаква в средата на януари. В сравнение с версия Wine 7.22, 52 отчета за грешки са затворени и 538 изменения са внесени.

Наиболее значительные изменения:

  • Пакетът vkd3d с реализация на Direct3D 12, работещ чрез транслация на повиквания в графичния API Vulkan, е актуализиран до версия 1.6.
  • Извършена е оптимизация на преобразувателите на системни повиквания (thunk) за Vulkan и OpenGL.
  • В WinPrint е разширена поддръжката на обработчици на печат (Print processor).
  • Подобрено панела за управление джойстик.
  • Завершена работа по обеспечению поддержки типа ‘long’ в коде функции printf.
  • Закрыты отчёты об ошибках, связанные с работой игр: Tom Clancy’s Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Затворени са отчети за грешки, свързани с работата на приложенията: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Допълнително може да се отбележи публикуването от проекта Wine на пакета vkd3d 1.6 с реализация на 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), предоставян от DirectX 9.0. Сред подобренията, свързани с HLSL:

  • Реализирана е начална поддръжка на изчислителни шейдъри.
  • Подобрена е поддръжката за инициализация и назначаване на съставни обекти, като структури и массиви.
  • Добавена е възможността за зареждане и запазване на ресурси на текстури, използвайки неуправляем достъп (UAV).
  • Добавена е поддръжка на атрибути на функции и реализирани са вградени функции asuint(), length(), normalize().
  • Добавена е поддръжка на модули за изчисления с плаваща запетая.
  • Реализиран е флаг VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS за индикация на атомарни операции над дескриптори на неуправляван достъп (UAV).

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster