В Wine 11.17 добавили эмуляцию режимов экрана и закрыли 44 ошибки

2026-09-05 66 комментарии
Промежуточный выпуск Wine 11.17 вышел 4 сентября 2026 года: изображение строится в виртуальном разрешении и выводится в окно физического размера. Точнее учитываются предпочтительные языки интерфейса. Среди правок – белый экран в GTA: Vice City

Промежуточный выпуск Wine 11.17 опубликован . В слое совместимости появилась начальная эмуляция режимов экрана: изображение формируется в том разрешении, которое запросила программа, и лишь затем выводится в окно физического размера. Встроенная библиотека vkd3d поднята до версии 2.1, а обработка предпочтительных языков интерфейса стала точнее следовать системным настройкам. Закрыто 44 ошибки, среди них белый экран вместо вступительного ролика в GTA: Vice City и аварийное завершение Star Wars: Knights of the Old Republic I и II.

Эмуляция режимов экрана и виртуализация рендеринга OpenGL

Начальная эмуляция режимов экрана – главное изменение выпуска. Масштабирование OpenGL выполняется теперь в соответствии с эмулируемым разрешением: изображение строится в ожидаемом виртуальном размере, после чего выводится в окно хоста, размер которого задан физическим экраном. В анонсе такой подход назван виртуализацией рендеринга OpenGL, а сама поддержка обозначена как начальная. Полное перечисление изменений приведено в официальном анонсе.

vkd3d 2.1: рефлексия шейдеров и правки в HLSL

Встроенная библиотека vkd3d поднята до версии 2.1, вышедшей . Основная часть работ пришлась на компиляцию шейдеров, совместимость со старым байт-кодом Direct3D и рефлексию.

vkd3d – библиотека проекта Wine, которая преобразует вызовы графического API Direct3D 12 в вызовы Vulkan.

Заметнее всего изменения в компиляторе HLSL: исправлена ошибка с вложенными вызовами функций, из-за которой разные аргументы могли получить один и тот же результат.

HLSL – язык программирования шейдеров, созданный Microsoft для Direct3D.

  • Добавлен проход оптимизации, удаляющий неиспользуемые записи; раскладка таблицы констант у старых шейдеров Direct3D стала ближе к результату компилятора Microsoft.
  • Расширена арифметика половинной точности, ужесточена проверка входов и выходов шейдера.
  • Поддержано больше устаревших инструкций и модификаторов старого байт-кода Direct3D.
  • В генераторе SPIR-V появились дополнительные числовые преобразования, включая перевод чисел с плавающей запятой в 64-битные целые со знаком и без знака для шейдеров из DXIL.
  • В экспериментальном выводе в GLSL добавлена обработка разделяемой памяти, атомарных операций, барьеров и косвенного доступа ко входам шейдера.
  • Рефлексия шейдеров дополнена недостающими возможностями и распространена на интерфейсы Direct3D 10 и Direct3D 11.

DXIL – промежуточный формат байт-кода шейдеров, применяемый в современных версиях Direct3D.

Консольный компилятор шейдеров получил параметр совместимости для половинной точности. Утилита для контейнеров DXBC заменяет отдельные разделы скомпилированного шейдера, не пересобирая контейнер целиком. Перечень правок опубликован в списке изменений vkd3d 2.1.

Предпочтительные языки интерфейса Windows-программ

Отдельная правка касается предпочтительных языков интерфейса. По описанию в анонсе, изменение должно помочь программам для Windows точнее учитывать языковые настройки, выбранные пользователем. Речь идёт о механизме, по которому приложение запрашивает список желаемых языков и подбирает под него собственные ресурсы; в пересказах перечень затронутых функций не раскрывается.

Что исправлено в играх

Из 44 закрытых ошибок заметная часть приходится на игры, причём в основном на старые проекты.

  • GTA: Vice City – белый экран вместо вступительного ролика.
  • GTA: San Andreas – видео не показывалось в эксклюзивном полноэкранном режиме.
  • Star Wars: Knights of the Old Republic I и II – аварийное завершение сразу после запуска.
  • Dragon Age: Inquisition – не определялись подключённые игровые контроллеры.
  • Horizon Chase Turbo – сбои при подключении и отключении контроллера по ходу игры.
  • Worms Blast – серые или отсутствующие текстуры персонажей.
  • Ground Control – движение указателя мыши ограничивалось небольшой областью.

Правки для SketchUp 2021, 3ds Max 9 и банковских программ

Среди неигровых приложений исправления затронули SketchUp 2021, Autodesk 3ds Max 9, PDFCreator и VisualSubSync, несколько банковских программ, а также ряд старых приложений для Windows. Для сравнения: в предыдущем выпуске Wine 11.16 закрыли 35 ошибок и добавили аппаратное декодирование видео через VA-API.

Исходный код доступен на странице релиза в GitLab. Готовые двоичные пакеты для поддерживаемых дистрибутивов Linux появятся в штатных репозиториях WineHQ позже.

Заключение

Wine 11.17 полезнее всего тем, кто запускает под Linux старые игры и программы для Windows: эмуляция режимов экрана и большинство закрытых ошибок относятся именно к этому сценарию. Выпуск принадлежит ветке разработки, поэтому на рабочей системе разумнее остаться на стабильной версии Wine 11.0 от ; корректирующих выпусков стабильной ветки с тех пор не публиковали. Тем, кому нужны свежие исправления, остаётся дождаться пакетов в репозиториях WineHQ или собрать выпуск из исходного кода.

© .
Комментарии и отзывы

Нашли ошибку?

Новое на сайте