DDrawCompat — это оболочка DLL, предназначенная для устранения проблем совместимости и производительности игр, основанных на DirectDraw и Direct3D 1-7. Частично поддерживает GDI. Преобразование API не требуется, большая часть рендеринга по-прежнему выполняется с помощью собственных библиотек DirectDraw/Direct3D 1–7 и GDI.
Windows Vista, 7, 8, 10 или 11
Дополнительные требования только для Windows Vista и 7 :
WDDM-совместимый графический драйвер — устаревшие драйверы XPDM больше не поддерживаются (начиная с версии 0.3.0).
Композиция рабочего стола должна быть включена (особенно для приложений в оконном режиме).
Загрузите последнюю версию двоичного файла со страницы выпусков (избегайте вложений со словом «debug» в имени файла, если вы не знаете, что делаете). Разархивируйте файл и скопируйте извлеченный файл ddraw.dll в каталог установки целевой игры рядом с основным исполняемым файлом (.exe).
Если там уже существует файл ddraw.dll, возможно, это еще одна оболочка DirectDraw, предназначенная для исправления некоторых проблем с игрой. Вы можете попытаться заменить его ddraw.dll из DDrawCompat, но сначала обязательно создайте резервную копию исходного файла.
После запуска игры в том же каталоге должен быть создан файл журнала с именем DDrawCompat- exename.log (или ddraw.log в версиях до v0.3.0). Если файл журнала не создан, значит, игра не подхватила DDrawCompat (или ведение журнала было отключено в конфигурации) — возможные решения можно найти в вики.
Удалите файл ddraw.dll DDrawCompat из каталога игры. Вы также можете удалить оставшиеся файлы журналов (DDrawCompat-*.log или ddraw.log).
Начиная с версии 0.4.0, настройка поддерживается через текстовые файлы и частично через внутриигровой оверлей. Проверьте вики для деталей.
Поддерживается только последняя версия. Сообщая о проблемах, предоставьте как можно больше информации, особенно название затронутых приложений, модель графического процессора, версию Windows и любые действия, необходимые для воспроизведения проблемы. Если возможно, прикрепите хотя бы логи информационного уровня. Вы можете удалить любую личную информацию из файлов журналов (например, имя пользователя Windows из пути конфигурации пользователя). Обратите внимание, что журналы отладки могут включать дополнительную конфиденциальную информацию, например нажатия клавиш, зарегистрированные приложением, или любой текст, отображаемый им.
По разным причинам следующие случаи не поддерживаются:
Игры, требующие подключения к Интернету
Инсайдерские предварительные сборки Windows
Запуск Windows в любой виртуализированной/эмулируемой среде, например, на виртуальной машине или через Wine.
Запуск DDrawCompat в сочетании с другими оболочками/хуками, включая наложения или устройства записи видео (устройства записи экрана рабочего стола должны работать при использовании параметра FullscreenMode=borderless, при условии, что они могут записывать многослойные окна)
DDrawCompat разработан на C++ с использованием Microsoft Visual Studio Community 2022.
Дополнительные зависимости:
Windows 10 SDK и DDK (точную версию см. в разделе WindowsTargetPlatformVersion в DDrawCompat.vcxproj)
Git для Windows (необязательно, необходимо для правильного управления версиями DLL)
Запросы на включение не принимаются. Пожалуйста, используйте «Проблемы», чтобы сообщить об ошибках или запросить новые функции.
Исходный код лицензируется в соответствии с лицензией BSD с нулевыми условиями.
Бинарные выпуски, начиная с версии 0.3.0, лицензируются по той же схеме.
Более старые двоичные выпуски лицензируются в соответствии с Лицензионным соглашением об общем исходном коде Microsoft Research (только для некоммерческого использования). Подробности см. в файле License.txt в zip-файлах этих выпусков.