DirectX – что – это такое, как – оно работает, где – скачать

DirectX — что это такое, как оно работает, где скачать
Стал часто сталкивался со всевозможными заблуждениями на тему DirectX . Например, пользователи пытаются ставить DirectX каких-то неправдоподобных версий, скачивают непонятно что с каких-то «левых» сайтов и т.п. получая в итоге всевозможные ошибки в работе Windows и игр.
Со всем этим я и разберусь в этой заметке, постаравшись расставить все точки над i в деле об игровой технологии DirectX.
Оглавление
Что такое DirectX
Чтобы разобраться, где правда, а где вымысел, для начала узнаем — что же такое DirectX? Википедия говорит нам:
DirectX  (от англ.

  direct  — прямой, непосредственный) — это набор API. разработанных для решения задач, связанных с программированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. Пакет средств разработки DirectX под Microsoft Windows  бесплатно доступен на сайте Microsoft  по адресу http://www.microsoft.com/ru-ru/download/details.aspx?id=35.

Зачастую обновленные версии DirectX поставляются вместе с игровыми приложениями. (источник )
Более простыми словами: DirectX — это «прослойка» между видеокартой и играми, позволяющая полностью реализовать всю вычислительную мощь компьютера для отрисовки красивой графики.
Помню, как в 2003 году я радовался правдоподобным отражениям в стеклах машин и лужах на дороге в игре Need for Speed: Underground, когда установил в компьютер видеокарту с поддержкой DirectX 9. Конечно, одними отражениями дело не ограничивается, но обо всем по порядку.

Чем отличаются версии DirectX
Технологии прогрессируют довольно быстро. Каждая новая версия DirectX позволяет программистам добавить какой-нибудь новый эффект в игру, а старые — оптимизировать.
Думаю, наиболее наглядно разницу между возможностями DirectX разных версий покажет это видео:
Обратите внимание на красивые эффекты летящего снега из-под колес машины и мягкие тени в DirectX 11 версии (слева). В принципе, такие эффекты, как мягкие тени и снег из-под колес можно реализовать, ограничившись технологией DirectX 9, но падение производительности будет ощутимым — в «девятке» нет ни оптимизации, ни грамотной реализации подобных эффектов.

Второй пример — игра Crysis 2:
В целом, чем выше версия DirectX — тем лучше картинка. Но не стоит ожидать чуда — зачастую изменения не бросаются в глаза. На мой взгляд, главная причина столь малой разницы качества изображения в том, что сейчас игры разрабатываются одновременно для игровых консолей Xbox 360, Sony Playstation, а также для ПК.

Приставки по сравнению с современными «персоналками» слабы как в плане производительности, так и в плане поддерживаемых технологий. В итоге мы играем на компьютере в игры, графика которых осталась на уровне этих самых консолей, вышедших еще в 2005—2006 годах: это размытые текстуры и минимум эффектов. Да, есть игры, разработанные или измененные специально для ПК, но таких единицы.

Типичный пример межплатформенности — игра Skyrim:
Разница в графике между Playstation 3 и Xbox360 заключается в деталях: на PS3 где-то воды капает мало, на Xbox 360 тени не реагируют на мерцающие источники света. На ПК (в видео обозначен как «Windows») таких проблем нет, плюс видны объекты на дальних расстояниях, но больше никаких улучшений нет. Позже разработчики выпустили набор текстур высокой четкости для ПК-версии игры, но кардинально графику это не улучшило.
Для того, чтобы вы увидели, какую графику способен выдавать компьютер (и не умеет приставка) — пример игры, заточенной под использование всех возможностей видеокарты и процессора настольного компьютера:
Видите разницу? Красивое освещение, четкие текстуры, плавные движения.

Между прочим, такой уровень детализации был бы недостижим с помощью устаревших технологий DirectX 9 — слишком много объектов находятся в кадре одновременно. Также присутствует много эффектов, которые реализуются силами видеокарт с поддержкой DirectX 10 как минимум.

Возможности графического движка игры Crysis 3:
Вывод: вопреки мнению некоторых пользователей, DirectX не улучшает графику в играх, а только дает возможность программисту сделать игру красивее. Если игра разрабатывалась для DirectX 9, то наличие DirectX 10-й версии ничего не изменит. Все зависит не только от возможностей видеокарты, но и от поддержки технологий игрой. Если все совместить — получится просто чудесная игра в плане графики.
Разные Windows и версии DirectX
DirectX по сути представляет собой набор файлов — программных библиотек.

Если их не будет в системных папках, то игры в лучшем случае будут отображаться без эффектов, в худшем — не запустятся, выдавая ошибку (при запуске игры появляется ошибка «не найден d3dx9_42.dll», где цифры могут быть разными).
Минимальный набор этих файлов уже присутствует в только что установленной Windows. В зависимости от версии операционной системы, будет разный комплект файлов, а значит — поддержка разных версий DirectX (информация отсюда ):
Windows XP SP2 – DirectX 9.0c
Windows Vista – DirectX 10
Windows Vista SP1 – DirectX 10.1
Windows Vista SP2 – DirectX 11
Windows 7 – DirectX 11.1
Windows 8 – DirectX 11.1
Windows 8.1.

— DirectX 11.2
Windows 10 — DirectX 12
Предыдущие версии тоже установлены.  Т.е. Windows 8 имеет поддержку  DirectX 11.2, 11.1, 11, 10.1, 10, 9  и ниже.
О том, как установить полный набор файлов DirectX, будет ниже по тексту.

Поддержка видеокартой DirectX разных версий
Чем новее видеокарта, тем более высокую версию DirectX она поддерживает. Все предыдущие версии также будут поддерживаться.
Windows тоже должна поддерживать эту версию. С видеокартой, поддерживающей DirectX 12, в Windows XP вы ничего не сможете сделать — запустятся игры, работающие только через девятый DirectX и ниже.
Как узнать, какую версию DirectX поддерживает моя видеокарта и Windows?
Видеокарта
Подсмотреть информацию о том, какую версию DirectX поддерживает ваша видеокарта, можно на официальной страничке сайта производителя либо в Яндекс.Маркете .

Windows
Это сложнее, потому что многое зависит от установленных обновлений.
Алгоритм таков:
1. Убедитесь, что у вас установлены все обновления Windows (Пуск — Все программы — Центр обновления Windows — Поиск обновлений — Установить).
2. Необязательный пункт: обновите драйвер видеокарты до самой новой версии:
Официальная страница драйверов для видеокарт Intel  (выберите в списке «Графические адаптеры», затем нужную модель)
3.

Нажимаете Пуск — Выполнить (если нет такого пункта, можно нажать сочетание клавиш Win + R . где Win — кнопка с логотипом) — Вводите «dxdiag» без кавычек – затем кнопка ОК.
Появится окно «Средство Диагностики DirectX» . На вкладке «Система» можно увидеть установленную на компьютере версию DirectX:
Эту версию сменить нельзя . за исключением обновления системы — например, при обновлении Windows Vista SP1 на SP2  поддерживаемая версия изменится с 10.1  на 11 .

Совет
Другими способами установить поддержу нового DirectX нельзя . Никакая подмена файлов не включит на старой Windows поддержку новых версий DirectX.
В интернете полно всяких наборов «DirectX 10 для Windows XP» и аналогичных. Запомните, это — обман. В Windows XP невозможно включить поддержку более новых версий DirectX.
Как заставить игру X использовать DirectX версии Y?

Leave a Reply

Your email address will not be published. Required fields are marked *