DirectX является частью операционной системы Windows. Так почему же кажется, что каждая игра для ПК, которую вы устанавливаете из Steam, Origin или где-то еще, устанавливает вашу копию DirectX?
Что такое DirectX?
DirectX является частью Microsoft Windows. Это группа API (приложений), которые разработчики могут использовать для 3D-графики, видео, мультимедиа, звуков и игр Windows. Многие игры для Windows используют DirectX Direct3D графику. Если этого не произойдет, они будут использовать OpenGL или Vulkan API. Другие неигровые приложения могут использовать DirectX для таких функций, как 3D-графика.
Windows 7 включает в себя DirectX 11, а Windows 10 - DirectX 12. Когда разработчики создают игры, они выбирают версии DirectX, которые они хотят применить. Например, игра, написанная только для DirectX 11, не работает в Windows XP, которая имеет последнюю версию DirectX 9.
Вы можете проверить версию DirectX в своей системе, нажав кнопку «Пуск», введя «dxdiag» в поле поиска и нажав Enter. Когда появится окно средства диагностики DirectX, вы увидите номер версии справа в разделе «Информация о системе» версии DirectX.
Если он включен в Windows, почему игры устанавливают его?
Так что, если DirectX является частью Windows, почему игры сначала его устанавливают? Короткий ответ: установка DirectX - беспорядок.
Это зависит не только от одной из библиотечных игр DirectX Direct3D, но и от нескольких. Разработчики игр должны указать точную версию вспомогательной библиотеки Direct3D. Последняя версия библиотеки не может быть использована. Например, если разработчик игры перенаправил свою игру на d3ddx10_40.dll, игра не может использовать d3ddx10_41.dll. Вам нужно 40 версий, и только этот файл будет сделан.
Эти файлы будут найдены в папке «C: Windows System32». В 64-разрядной системе 64-разрядные библиотеки - это C: Windows System32, а 32-разрядные библиотеки - это C: Windows SysWOW64.
Даже если вы запускаете последнюю версию программы установки DirectX, не гарантируется, что она установит все более старые версии библиотек DirectX в вашей системе. Microsoft также решила, что эти файлы библиотеки Direct3D не будут связаны с системой Windows. Например, даже библиотеки Direct3D, созданные до выпуска Windows 10, не все с Windows 10. Они должны быть установлены той программой, которая им нужна. Как отмечает Microsoft в документации для разработчиков игр, в Центре обновления Windows и пакетах обновления не указаны дополнительные компоненты для DirectX.
Это даже становится сложнее, чем это. 32-битные игры требуют 32-битных версий библиотеки, а 64-битные игры требуют 64-битной библиотеки.
Это похоже на ситуацию с распространяемыми библиотеками Microsoft Visual C ++. Различные программы зависят от разных версий библиотек, и вам нужно установить много разных версий. Вполне вероятно, что ваша система имеет много установленных.
Но почему каждая компьютерная игра должна переустанавливать ее?
Итак, каждая игра должна устанавливать точную неполную версию необходимых библиотек DirectX. Но если вы уже установили эту конкретную версию библиотеки DirectX, вам не нужно запускать установщик DirectX напрямую?
Ложные игры нелегко легко проверить на правильность установки своих библиотек DirectX. Как указывает сайт поддержки Steam, установщик Microsoft DirectX является единственным официально поддерживаемым способом проверки правильности установки файлов DirectX. Игры запускают программу установки DirectX, часто в фоновом режиме, которая устанавливает все необходимые библиотеки и устраняет любые системные проблемы.
Программа установки DirectX - единственный способ, которым Microsoft позволяет разработчикам распространять эти файлы. Программисты могут не пытаться быть умными, копируя библиотеки DirectX в вашей системе и пропуская программу установки, иначе они не станут нарушением лицензии на программное обеспечение MIcrosoft. Они также могут столкнуться с различными ошибками, даже если они попытались это сделать. Вот почему никто не работает.
Конечно, не все игры должны запускать установщик DirectX при первом запуске. Игры, использующие OpenGL или Vulkan вместо DirectX Direct3D, запускать не обязательно. Некоторые игры также зависят только от основных версий DirectX, таких как DirectX 11, «10» или «9», и не требуют установки DirectX, поскольку они не используют ни одну из этих библиотек.
Могу ли я удалить некоторые из этих библиотек?
Не следует удалять любые библиотеки DirectX в папке System32 или в папке «SysWOW64». Если они в вашей системе, значит, им нужна игра или другая программа. Если вы начнете удалять файлы библиотеки, программы могут сломаться. Невозможно точно определить, какие файлы библиотеки DirectX нужны для каких игр в вашей системе, поэтому нет способа узнать, что можно безопасно удалить.