The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Новые версии Wine 10.20, Vkd3d 1.18 и vkd3d-proton 3.0

29.11.2025 09:34

Опубликован экспериментальный выпуск открытой реализации Win32 API - Wine 10.20. С момента выпуска 10.19 было закрыт 31 отчёт об ошибках и внесено 337 изменений.

Наиболее важные изменения:

  • Встроенный пакет Vkd3d с реализацией Direct3D 12 обновлён до версии 1.18.
  • Добавлено диалоговое окно для отображения прогресса сканирования документов.
  • Продолжена реализация механизма Reparse Point, при помощи которого можно прикреплять к файлам и каталогам дополнительные данные, идентифицируемые через теги. Обеспечена поддержка Reparse Point в функциях CreateHardLink(), SetFileAttributes(), FindNextFile(), MoveFileWithProgress()
  • Продолжен рефакторинг реализации Common Control после разделения библиотеки COMCTL32 на отдельные модули для версий 5 и 6.
  • Решена проблема с аварийным завершением многих игр (например, Syberia 2) при использовании режима WoW64 на системах с GPU NVIDIA.
  • Решена проблема с подвисанием реакции при нажатии клавиш управления курсором в некоторых играх, таких как Might and Magic VI.
  • Решена проблема с зависанием или невозможностью запуска некоторых windows-сборок приложений, использующих библиотеку GTK, например, Meld и Geany.
  • Закрыты отчёты об ошибках, связанные с работой приложений: SQL Server 2012/2014, MS Office 365 installer, QuarkXPress 2024, TomTom MyDrive Connect 4.x, Spine, GenLauncher, grepwinNP3, PlayOnline Viewer, tlReader 10.1.0.2004, cmd.exe, CLM Explorer, HiveMQ CE 2025.5.
  • Закрыты отчёты об ошибках, связанные с работой игр: Civilization 1.2, StarCraft, Last Stand: Aftermath, Mega Man X DiVE, Wagotabi, Geneforge 1 - Mutagen.



Проект Wine также опубликовал выпуск пакета vkd3d 1.18 с реализацией Direct3D 12, работающей через трансляцию вызовов в графический API Vulkan. В состав пакета входят библиотеки libvkd3d с реализаций Direct3D 12, libvkd3d-shader c транслятором 4 и 5 модели шейдеров и libvkd3d-utils с функциями для упрощения портирования приложений Direct3D 12, а также набор демонстрационных примеров, включая порт glxgears на Direct3D 12. Код проекта распространяется под лицензией LGPLv2.1.

Библиотека libvkd3d поддерживает большую часть возможностей Direct3D 12, включая средства для графики и вычислений, очереди и списки команд, дескрипторы и дескрипторы кучи, корневые сигнатуры, неупорядоченный доступ, Sampler-ы, сигнатуры команд, корневые константы, непрямую (indirect) отрисовку, методы Clear*() и Copy*(). В libvkd3d-shader реализована трансляция байт-кода моделей шейдеров в промежуточное представление SPIR-V. Поддерживаются вершинные, пиксельные, тесселяционные, вычислительные и простые геометрические шейдеры, сериализация и десериализация корневой сигнатуры. Из шейдерных инструкций реализованы арифметические, атомарные и битовые операции, операторы сравнения и управления потоком передачи данных, инструкции sample, gather и load, операции неупорядоченного доступа (UAV, Unordered Access View).

В новой версии vkd3d:

  • В реализацию языка шейдеров HLSL добавлены встроенные функции countbits(), firstbithigh(), firstbitlow(), frexp() и texCUBEbias(). Для профилей Shader Model 1-3 реализована поддержка условных выражений с целочисленными типами.
  • В компиляторе шейдеров HLSL оптимизирована компиляция кода с условными операторами if/else. Расширено вычисление констант на этапе компиляции (constant folding). Подобная оптимизация теперь может применяться для выражений типа "true ? x : y" и функций asfloat(), asint(), asuint(), cos(), mad(), round() и sin().
  • В библиотеке libvkd3d в реализацию программного интерфейса ID3D12Device4 добавлен метод CreateCommandList1().
  • Добавлены инструкции байткода Direct3D: bem, tex, texbem, texbeml и texcoord.
  • Продолжено развитие реализации языка шейдеров MSL (Metal Shading Language), применяемого компанией Apple в графическом API Metal. Добавлена поддержка вычислительных шейдеров, мгновенно инициализируемых буферов констант, тригонометрических функций, операций получения остатка и побитового перебора.
  • В реализацию языка шейдеров GLSL (OpenGL Shading Language) добавлены беззнаковые целочисленные операции деления и получения остатка, функции sin() и cos(), возможность смещения текселей при загрузке текстур.



Кроме того, компания Valve опубликовала выпуск VKD3D-Proton 3.0, ответвления от кодовой базы vkd3d, созданного для улучшения поддержки Direct3D 12 в пакете для запуска игр Proton. В VKD3D-Proton поддерживаются специфичные для Proton изменения, оптимизации и улучшения для более качественной работы Windows-игр на базе Direct3D 12, которые пока не приняты в основной состав vkd3d. Из отличий также отмечается ориентация на использование современных расширений Vulkan и возможностей свежих выпусков графических драйверов для достижения полной совместимости с Direct3D 12.

Среди изменений в новой версии vkd3d-proton:

  • Переписан бэкенд шейдеров DXBC (DirectX ByteCode), который заменил собой бэкенд vkd3d-shader. Новый бэкенд решил проблемы во многих играх, ранее возникавшие из-за отсутствия в vkd3d-shader нужной функциональности, например, налажена работа игры Red Dead Redemption 2 в режиме D3D12.
  • Добавлена поддержка технологии суперсэмплинга FSR4 (AMD FidelityFX Super Resolution).
  • Добавлена экспериментальная поддержка графов рабочих задач D3D12 (Work Graphs).
  • Добавлена экспериментальная поддержка микрокарт прозрачности (OMM - Opacity MicroMaps).
  • Решены проблемы в играх Star Citizen, Ninja Gaiden 4, Monster Hunter Wilds, Wreckfest 2, Satisfactory, Street Fighter 6, Death Stranding, Wuthering Waves, Dune, Spider-Man Remastered, Gray Zone Warfare, Rise of the Tomb Raider, Port Royal, Mafia: Definitive Edition, Final Fantasy Tactics.


  1. Главная ссылка к новости (https://www.winehq.org/news/20...)
  2. OpenNews: Проект Wine опубликовал Vkd3d 1.17 с реализацией Direct3D 12
  3. OpenNews: Выпуск VKD3D-Proton 2.13, форка Vkd3d с реализацией Direct3D 12
  4. OpenNews: Релиз Mesa 25.3, свободной реализации OpenGL и Vulkan
  5. OpenNews: Стабильный релиз Proton 10.0, пакета для запуска Windows-игр в Linux
  6. OpenNews: Выпуск Wine 10.19 и Wine staging 10.19
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64340-wine
Ключевые слова: wine, vkd3d, proton
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (10) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.3, Аноним (3), 11:24, 29/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отлично, хоть в протоне что-то делается, а когда media foundation и gstreamer починят? Вроде, добавили ffmpeg, а он вообще никак ничего не воспроизводит. Хотя, решение сомнительное, ffmpeg совместимость ломает 10 раз в год и gstreamer совместимость ломает только никогда. Блобы из лаунчеров это, конечно, хорошо, но контейнеры с порталами это противоестественно.
     
     
  • 2.4, Аноним (3), 11:26, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Кстати, вот такая ошибка сейчас в протоне из реп (вайн ничего не сообщает)



    (wine:30148): GStreamer-Video-CRITICAL **: 20:20:05.901: gst_video_info_from_caps: assertion 'gst_caps_is_fixed (caps)' failed
    winegstreamer error: qtdemux0: Internal data stream error.
    winegstreamer error: qtdemux0: ../gst-plugins-good-1.24.11/gst/isomp4/qtdemux.c(7458): gst_qtdemux_loop (): /GstBin:bin0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0:
    streaming stopped, reason not-negotiated (-4)
    0:00:03.425552977 30148 0x7f8c90000c00 ERROR   protonmediaconverter dlls/winegstreamer/media-converter/videoconv.c:356:video_conv_state_create: Env MEDIACONV_VIDEO_TRANSCODED_FILE is not set.
    0:00:03.425717989 30148 0x7f8c90000c00 ERROR   protonmediaconverter dlls/winegstreamer/media-converter/videoconv.c:361:video_conv_state_create: Env MEDIACONV_BLANK_VIDEO_FILE not set.
    0:00:03.425728354 30148 0x7f8c90000c00 ERROR   protonmediaconverter dlls/winegstreamer/media-converter/videoconv.c:489:video_conv_change_state: Failed to create video conv state, ret -11.
    0:00:03.425772643 30148 0x7f8c90000c00 ERROR   protonmediaconverter dlls/winegstreamer/media-converter/videoconv.c:715:video_conv_get_state_flags: VideoConv not yet in READY state?
    0:00:03.425783136 30148 0x7f8c90000c00 ERROR   protonmediaconverter dlls/winegstreamer/media-converter/videoconv.c:786:video_conv_sink_event_caps: VideoConv not yet in READY state?


     
     
  • 3.5, Аноним (5), 11:43, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У протона свой билд gstreamer-a он заменяет видеофайлы при декодинге на заране перекодированные файлы, но работает это только через стим (ну или надо как-то скачать из стима эти файлы для игры отдельно и задать переменную окружения MEDIACONV_VIDEO_TRANSCODED_FILE  и MEDIACONV_BLANK_VIDEO_FILE (эта ведет у пустому файлу он лежит в протоне роликов не будет но и вылетать не будет) ).

    Ну или можно переключится на ffmpeg бекенд в самом файне и надеятся что заработает (ffmpeg нужен с несвободніми кодеками (на федоре прочих круд-подобных искать во внешних репах, на убунте он в universe)).

    Еще есть вариант поставить mediafoundation вручную на префикс... там танцы с бубном, в вейнтрикс нерабочая реализация, есть скрипты на питоне где-то на гитхабе.

    https://github.com/Fumasu/mf-install (єто работает не во всех играх, но проще всего для установки)

    https://github.com/Vladimir-A/mf-installcab/ (тут добее полная установка но скрипты слегка нерабочие) (по-моему там нужно заменить версию питона и вайн єто чудо берет системный а надо протоновский)

     
     
  • 4.10, Аноним (3), 11:58, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это многое объясняет в поведении протона, спасибо. Причём, раньше вроде видео как-то декодировалось proton-ge (позиционирование на экране окна с видео было странное), потом перестало с обновлениями. И когда уже игры с wmv/wma работать будут? Их в стиме и нет. Лежат мёртвым грузом.
     
     
  • 5.13, Аноним (13), 13:34, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Лежат мёртвым грузом.

    Постанови ви... Нет, нет, нет. Что это я? Никак бес попутал?

     

  • 1.6, Аноним (13), 11:48, 29/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Закрыты отчёты об ошибках, связанные с работой игр: Civilization 1.2, StarCraft

    Я состарился, но дожил! Но как теперь играть? Ручонки трясутся и на какие клавиши нажимать всё время забываю.

     
     
  • 2.9, iPony128052 (?), 11:54, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это вообще ничего по себе не значит с точки зрения иорабельности.
     
  • 2.11, Аноним (13), 12:25, 29/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То есть, закрытие отчётов не означает исправление этих ошибок? Я так и знал.
     

  • 1.8, dannyD (?), 11:53, 29/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    версия 10.18 была уже с глюками, что-то они нахимичили с видиками,
    после выхода 10.19 пришлось вернутся на стабильную 10.0-r2 с полной пересборкой и очисткой.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру