Одна из самых распространённых ошибок в играх, созданных с использованием Unreal Engine — сообщение об ошибке An Unreal process has crashed с сообщением Unreal Engine is exiting due to D3D device being lost и, как правило — указанием кода 0x887A0006 HUNG в информации о сбое.
В этой инструкции подробно о том, как исправить ошибку D3D device being lost в играх на Windows 11 или Windows 10, и, попутно — о том, чем она может быть вызвана.
Способы исправить ошибку D3D device being lost
Текст рассматриваемой ошибки сообщает о том, что игровой движок Unreal Engine прекращает свою работу в связи с тем, что было потеряно устройство D3D (Direct 3D). Что это значит? — как правило, это означает, что видеоадаптер по какой-либо причине не ответил в отведённое время. Причины могут быть разными: часто — работа драйверов, иногда — влияние сторонних программ, разгон видеокарты и другие. Что можно попробовать, чтобы исправить ошибку:
- Если вы включали разгон GPU, экспериментировали с настройками в MSI Afterburner — попробуйте вернуть исходные настройки.
- Проверьте, исчезнет ли ошибка, если в панели управления NVIDIA включить «Режим отладки» (включается в главном меню в разделе «Справка»). В режиме откладки отключается в том числе и заводской разгон видеокарты.
- Зайдите в панель управления NVIDIA (можно использовать поиск в панели задач Windows 10 и Windows 11: просто начните вводить NVIDIA Control Panel) и в разделе «Дисплей» попробуйте отключить G-Sync (или оставить функцию включенной только для полноэкранных приложений), примените настройки и перезапустите игру.
- Вручную скачайте с официального сайта доступные драйверы NVIDIA (используйте отметку «чистая установка» при установке), AMD и, обязательно, — драйверы интегрированного видео при его наличии , например — Intel HD Graphics. Затем, используя утилиту DDU (Display Driver Uninstaller) и отключившись от Интернета, удалите имеющиеся драйверы, а после удаления — установите ранее скачанные драйверы. В случае NVIDIA рекомендую не устанавливать NVIDIA GeForce Experience, пока не будет ясно — исчезла ли ошибка.
- В панели управления NVIDIA можно в разделе «Управление параметрами 3D» — «Программные настройки» можно вручную задать, какой графический процессор использовать для игры: установить вместо «Автовыбор» опцию «Высокопроизводительный процессор NVIDIA». А если в этом случае ошибка сохраняется, а игра не требует серьёзных мощностей GPU, попробуйте, наоборот, выбрать «Интегрированное графическое оборудование».
- Согласно некоторым отзывам, ошибка может возникать, когда в Windows включено масштабирование, отличное от 100%. Подтвердить не могу, но проверить стоит (масштабирование меняется в параметрах экрана, там же где разрешение экрана).
- В случае ноутбуков, когда ошибка возникает из-за проблем с переключением графики, иногда может сработать установка старых драйверов дискретного и интегрированного видео с сайта производителя ноутбука для вашей модели.
- При использовании разгона оперативной памяти на вашем компьютере, попробуйте отключить его.
- Для игровых ноутбуков возможна ситуация, когда ошибка возникает при пиковых нагрузках и работе от батареи или при недостаточной мощности блока питания (особенно если он менялся на аналог).
- В некоторых случаях на ноутбуках наблюдается следующее поведение: ошибка D3D device being lost присутствует при использовании встроенного дисплея (который физически подключен к интегрированному видео), но исчезает при подключении внешнего монитора через HDMI (при условии, что аппаратно — это выход дискретной видеокарты).
И ещё один возможный метод исправления ошибки An Unreal process has crashed, Unreal Engine is exiting due to D3D device being lost — изменить параметр TdrDelay, отвечающий за время ожидания видеокарты:
- Нажмите клавиши Win+R , введите regedit и нажмите Enter для запуска редактора реестра.
- В редакторе реестра перейдите в раздел
HKEY_LOCAL_MACHINESystemCurrentControlSetControlGraphicsDrivers
- Нажмите правой кнопкой мыши в правой панели редактора реестра, выберите Создать — Параметр DWORD.
- Задайте имя параметра TdrDelay затем дважды нажмите по параметру и установите значение 10 в десятичной системе счисления.
- Закройте редактор реестра, перезагрузите компьютер.
И, если какой-то из способов вам помог или есть собственные находки на тему решения рассмотренной проблемы, я и другие читатели будут рады вашему комментарию к статье.