Вышла новая версия D7VK 1.10

Разработчики D7VK продолжают шлифовать свой инструмент, делая старые игры не просто запускаемыми, но и комфортными для игры на современном оборудовании. Версия 1.10 — это шаг вперёд в производительности, исправлениях и совместимости.

Повышение производительности в 2D-сценариях

В версии 1.9 были внесены значительные улучшения для 2D-игр, но для некоторых тайтлов этого оказалось недостаточно. В версии 1.10 разработчики добавили пропуск копирования данных на поверхностях, которые всё равно будут перезаписаны при блиттинге. Это звучит логично, но реализация оказалась чрезвычайно сложной из-за множества угловых случаев в DDraw. Особенно заметен прирост производительности в самых тяжёлых сценах, таких как экран инвентаря в Omikron: The Nomad Soul.

Эмуляция фронтального буфера и исправление мерцания

В предыдущих версиях существовала проблема с отображением, вызванная недоработкой в логике отображения back buffer. Новый подход не только решает проблему мерцания, но и немного снижает задержку ввода.

Кроме того, выяснилось, что D7VK не соответствовал одному из ожиданий DDraw-цепочек обмена: постоянный фронтальный буфер всегда должен сохранять экранные данные и служить источником или целью для блиттов. Это приводило к тому, что некоторые игры теряли фоны во время экранов паузы. Поскольку бэкенд DXVK D3D9 не поддерживает такую ситуацию, разработчикам пришлось проявить творческий подход и эмулировать эту функциональность. Это требует дополнительного копирования изображения, но обеспечивает корректное отображение (например, экран паузы в Warhammer: Dark Omen).

Исправления и улучшения

  • Пропуск копирования данных: Улучшена производительность в 2D-тяжёлых сценариях. Наиболее заметно в Omikron: The Nomad Soul и SCP — Containment Breach.
  • Эмуляция фронтального буфера: Исправлены отсутствующие фоны и камерные эффекты в: Escape from Monkey Island, Evolva, Black & White, Tomb Raider: The Last Revelation, Tomb Raider Chronicles, Star Wars: Episode I — The Phantom Menace, Descent: FreeSpace, FreeSpace 2, Warhammer: Dark Omen, Interstate '76 и других.
  • Обходные пути:
    • Предотвращены падения при запуске Interstate '76 и Interstate '76: Nitro Pack — обе игры теперь полностью играбельны в режиме D3D5.
    • Исправлена отсутствующая геометрия в COPS 2170: The Power of Law.
    • Исправлен чёрный экран в лаунчере Eschalon: Book I (использует D3D7).
    • Восстановлены проецируемые тени в Expendable.
    • Исправлено поведение при создании окна в Star Trek: The Next Generation — Klingon Honor Guard (игра полностью играбельна; другие ранние игры на Unreal Engine могут быть также улучшены).
    • Исправлены проблемы с запуском и рендерингом в Powerslide.
  • Исправление регрессии v1.9: Устранены проблемы рендеринга при смешанном использовании D3D3 и D3D5.
  • Исправление редкого тексельного глитча: Устранены мелкие артефакты рендеринга в Z.A.R.
  • Очистка логирования: Уменьшена зависимость от прокси-объектов D3D из нижележащей DDraw-реализации, что немного улучшает производительность и снижает потребление памяти.

Короткая заметка о масштабируемости древних D3D-игр на современном оборудовании

Разработчики поясняют, что древние D3D-игры делятся на две категории:

  • Категория A: Игры, разработанные с пониманием базовой этики 3D-рендеринга — не «оглушать» GPU и не перемещать данные без необходимости. Такие игры отлично масштабируются на современном оборудовании.
  • Категория B: Игры, использующие «проклятые» методы, такие как многократная блокировка back buffer для построчного блиттинга текста. Такие игры никогда не будут работать на сотнях тысяч FPS, независимо от обёртки или даже на современном Windows.

Разработчики рекомендуют играть в такие игры в их оригинальном разрешении — это даёт наилучший опыт и добавляет «ретро-ощущение» разглядывания пикселей.

Релиз D7VK 1.10 уже доступен на GitHub-странице проекта. Наслаждайтесь классикой и ловите приятные воспоминания из старых добрых дней.

  • Просмотров: 88