Wine 8.0 шығарылым кандидаты және vkd3d 1.6 шығарылымы

Wine 8.0 бірінші шығарылым кандидатында тестілеу басталды, бұл WinAPI ашық енгізуі. Кодтық база қаңтардың ортасында күтілетін шығарылым алдында қатып қалу кезеңіне қойылды. Wine 7.22 шығарылымынан бері 52 қате туралы есеп жабылып, 538 өзгерту енгізілді.

Ең маңызды өзгерістер:

  • Vulkan графикасының API интерфейсіне қоңырауды аудару арқылы жұмыс істейтін Direct3D 3 іске асырылуы бар vkd12d бумасы 1.6 нұсқасына жаңартылды.
  • Vulkan және OpenGL үшін жүйелік қоңырау түрлендіргіштерін (thunks) оңтайландыру жүргізілді.
  • WinPrint басып шығару процессорларына қолдауды кеңейтті.
  • Жақсартылған джойстиктің басқару тақтасы.
  • 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.

Сонымен қатар, Vulkan графикалық API-ге қоңырауларды аудару арқылы жұмыс істейтін Direct3D 1.6 іске асырылуы бар vkd3d 12 пакетінің Wine жобасының жариялануын атап өтуге болады. Пакет Direct3D 3 іске асырулары бар libvkd12d кітапханаларын, 3 және 4 шейдер үлгілерінің аудармашысы бар libvkd5d-shader және Direct3D 3 қосымшаларын тасымалдауды жеңілдететін функциялары бар libvkd12d-utils, сондай-ақ портты қоса демонстрациялық мысалдар жиынтығын қамтиды. glxgears Direct3D 12. Жоба коды LGPLv2.1 лицензиясы бойынша таратылады.

libvkd3d кітапханасы Direct3D 12 мүмкіндіктерінің көпшілігін, соның ішінде графика мен есептеу құралдарын, кезектерді және пәрмендер тізімдерін, дескрипторларды және үйме дескрипторларды, түбірлік қолтаңбаларды, ретсіз қатынасты, үлгілерді, пәрмен қолтаңбаларын, түбірлік тұрақтыларды, жанама көрсетуді, тазалау әдістерін қолдайды *( ) және Көшіру*(). libvkd3d-shader бағдарламасында 4 және 5 шейдер үлгілерінің байткодын SPIR-V аралық көрінісіне аудару жүзеге асырылады. Шыңға, пиксельге, тесселлендіруге, есептеу және қарапайым геометриялық шейдерлерге, түбірлік қолтаңбаны сериялауға және сериядан шығаруға қолдау көрсетеді. Шейдер нұсқауларына арифметикалық, атомдық және разрядтық операциялар, салыстыру және деректер ағынын басқару операторлары, үлгілеу, жинау және жүктеу нұсқаулары, ретсіз қол жеткізу операциялары (UAV, Unordered Access View) кіреді.

Жаңа нұсқа DirectX 9.0 нұсқасынан бастап берілген HLSL (Жоғары деңгейлі шейдер тілі) тіліндегі шейдер компиляторын жақсартуды жалғастыруда. HLSL қатысты жақсартулар мыналарды қамтиды:

  • Есептеу шейдерлеріне бастапқы қолдау енгізілді.
  • Құрылымдар мен массивтер сияқты құрама нысандарды инициализациялау және тағайындау үшін жақсартылған қолдау.
  • Тапсырыссыз қол жеткізу (UAV) арқылы текстуралық ресурстарды жүктеу және сақтау мүмкіндігі қосылды.
  • Функция атрибуттарына қолдау қосылды және кірістірілген asuint(), length(), normalize() функциялары.
  • Жылжымалы нүкте модульдеріне қолдау қосылды.
  • Ретсіз қатынас ұсыну (UAV) дескрипторларында атомдық әрекеттерді көрсету үшін VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS жалаушасын енгізді.

Ақпарат көзі: opennet.ru

пікір қалдыру