Служба поддержки Steam
DirectX устанавливается с каждой игрой
Почему DirectX устанавливается с каждой игрой?

Почему DirectX устанавливается с каждой игрой?

У Microsoft есть вспомогательная библиотека для D3D, называющаяся D3DX. Вы можете найти двоичные файлы для неё, такие как d3dx9_43.dll, в папке Windows\System32. Существует более 40 различных версий библиотеки D3DX только для D3D9, и намного больше для D3D10 и 11. Каждая игра, использующая вспомогательную библиотеку D3DX, привязана к конкретной её версии. Поэтому игра должна запустить установщик именно для этой версии D3D, чтобы убедиться, что все необходимые двоичные файлы присутствуют в системе.

Если установлена более поздняя версия, она всё равно не может использоваться, и даже если установленный вами DirectX имеет последнюю версию, поскольку вы запускали самую новую версию установщика, это не гарантирует того, что все предыдущие версии также были установлены. Кроме того, если версия устанавливается для платформы x86, это не гарантирует, что та же версия устанавливается для платформы x64, поскольку 64- и 32-битным версиям игр может требоваться установщик одной и той же версии, но предназначенный для различных платформ.

К тому же, условия лицензирования Microsoft препятствуют непосредственному распространению файлов; единственный способ распространить их — запустить установщик, который также является и единственным поддерживаемым Microsoft способом проверить корректность установленной версии. Пытаться вручную проверить корректность версий крайне сложно, поскольку существует множество файлов, все из которых должны присутствовать, а индивидуальные системные настройки наподобие путей dll-файлов лишь усложняют ситуацию. Кроме того, зависимости и требуемые проверки могут меняться в каждой новой версии D3DX. Код проверки правильности установки и исправления некорректной установки находится в самом установщике, и только его запуск гарантирует, что во время запуска игры будут присутствовать корректные двоичные файлы, и предотвращает случаи неудачного запуска игры с неизвестными ошибками, если корректная версия отсутствует или установка каким-либо образом прошла неудачно.


Почему игры на движке Source от Valve не запускают установщик DirectX?

Игры, которые не используют вспомогательные библиотеки D3DX (например, игры на движке Source), не требуют запускать установщик при первом своём запуске, поскольку они зависят только от версий основных файлов D3D9/10/11. Тем не менее, игры, использующие D3DX, должны запускать этот установщик, поскольку это единственный способ, которым Microsoft позволяет распространять и проверять информацию о версии файлов.


Нужна помощь со Steam?
Используйте помощник Steam, чтобы найти нужную тему и получить необходимую помощь.
Помощь сообщества
Напишите или выполните поиск в обсуждениях Steam, чтобы получить ответ на свой вопрос.