От чего зависит directx. Что такое директ икс: зачем он нужен? Как узнать поддерживаемую версию

Твитнуть

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

Со всем этим я и разберусь в этой заметке, постаравшись расставить все точки над i в деле об игровой технологии DirectX.

Что такое DirectX

Чтобы разобраться, где правда, а где вымысел, для начала узнаем, что же это такое - ДиректИкс? Википедия говорит нам:

DirectX (от англ. direct - прямой, непосредственный) - это набор API, разработанных для решения задач, связанных с программированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. … Зачастую обновленные версии DirectX поставляются вместе с игровыми приложениями.

Более простыми словами: DirectX - это «прослойка» между видеокартой и играми, позволяющая полностью реализовать всю вычислительную мощь компьютера для отрисовки красивой графики.

Помню, как в 2003 году я радовался правдоподобным отражениям в стеклах машин и лужах на дороге в игре Need for Speed: Underground, когда установил в компьютер видеокарту с поддержкой DirectX 9. Конечно, одними отражениями дело не ограничивается, но обо всем по порядку.

Чем отличаются версии DirectX

Технологии прогрессируют довольно быстро. Каждая новая версия DirectX позволяет программистам добавить какой-нибудь новый эффект в игру, а старые - оптимизировать.

Думаю, наиболее наглядно разницу между возможностями DirectX разных версий покажет это видео:

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

Второй пример - игра Crysis 2:

Считается, что чем выше версия DirectX - тем лучше картинка. Но не стоит ожидать чуда - зачастую изменения не бросаются в глаза. На мой взгляд, главная причина столь малой разницы качества изображения в том, что сейчас игры разрабатываются одновременно для игровых консолей Xbox, Sony PlayStation и ПК. Приставки по сравнению с современными «персоналками» слабы в плане производительности и поддерживаемых технологий. В итоге мы играем на компьютере в игры, графика которых осталась на уровне года выхода консолей, любуясь на размытые текстуры и упрощенные эффекты. Да, есть игры, разработанные или доработанные для ПК, но таких единицы.

Типичный пример межплатформенности - игра 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 10 имеет поддержку 12-й версии, DirectX 11.2, 11.1, 11, 10.1, 10, 9 и ниже.

О том, как установить полный набор файлов DirectX, будет по тексту.

Поддержка видеокартой DirectX разных версий

Чем новее видеокарта, тем более высокую версию DirectX она поддерживает. Все предыдущие версии также будут поддерживаться. То есть старые игры, использующие ДиректХ 7/8/9 теоретически должны работать нормально. На практике ограничением становится поддержка операционной системы. Игры, разработанные для Windows 95/98/ME зачастую вылетают на более новых ОС, видеокарта тут совершенно не при чём.

При этом нужно понимать, что от Windows тоже зависит, какой DX будет работать. Игры, которым требуется 12-й Директ, не запустятся в Win7/8 и тем более XP. Сама видеокарта работать в древних системах будет, просто современные API функции будут недоступны. Таким образом, с видеокартой, поддерживающей DirectX 12, в Windows XP вы не поиграете в современные игры - запустятся только работающие через девятый DirectX и ниже.

Как узнать, какую версию DirectX поддерживает моя видеокарта и Windows?

Видеокарта

Подсмотреть информацию о том, какую версию DirectX поддерживает ваша видеокарта, можно на официальной страничке сайта производителя и в любом онлайн-магазине. Например, в Яндекс.Маркете . Однако, в целом, все видеокарты, вышедшие после 2015 года, поддерживают 12-ю версию. Хотя именно с DX12 есть нюансы, об этом ниже.

Windows

Узнать, какую версию поддерживает Windows, сложнее, потому что многое зависит от установленных обновлений. Если у вас Windows 10, то там точно самая свежая версия API. Для всех остальных ОС алгоритм таков:

1. Убедитесь, что у вас установлены все обновления Windows (Пуск - Все программы - Центр обновления Windows - Поиск обновлений - Установить).

2. Необязательный пункт: обновите драйвер видеокарты до самой новой версии:

Другим способом переключить версию, если игрой это не предусмотрено, никак нельзя. Сами подумайте - разработчики писали код игры, используя команды под определённую версию. Просто так взять и заменить команды на другие невозможно.

Поддерживать DirectX определенной версии должны все стороны: видеокарта, операционная система и игра.

Таким образом вопрос «на каком DirectX лучше играть» бессмысленный - что поддерживает железо, ОС и использует игра, то и будет.

Нужно ли устанавливать DirectX с сайта Microsoft? Что это дает?

Кратко: можно, только версию DirectX это не изменит!

Если хотите, чтобы игры запускались нормально - обязательно установите все обновления из Центра обновления Windows, потому что именно оттуда Windows берет свежие версии библиотек. Подтверждение от Microsoft.

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

Windows 7, 8 и 10 эти библиотеки, в общем-то, не нужны, потому что требуемые обновления приходят через Центр обновлений. Но если у вас не запускается какая-то старая (2005-2010 годов) игра, использующая DirectX 9, пробуйте установить тот самый инсталлятор. Авось поможет.

D3DX9_24 .dll -D3DX9_43 .DLL
D3DX10. DLL - D3DX10_43 .DLL
D3DCompiler_33.dll - D3DCompiler_43.DLL
D3DX11_42.DLL
D3DX11_43.DLL
D3DCSX_42.DLL
D3DCSX_43.DLL
XACTENGINE2_0.dll - XACTENGINE2_9.DLL
XACTENGINE3_0.dll - XACTENGINE3_7.DLL
XAUDIO2_0.DLL
XAUDIO2_1.DLL
XAUDIO2_2.DLL
XAUDIO2_3.DLL
XAUDIO2_4.DLL
XAUDIO2_5.DLL
XAUDIO2_6.DLL
XAUDIO2_7.DLL
XAPOFX1_0.dll -XAPOFX1_5.DLL
X3DAUDIO1_0.dll - X3DAUDIO1_7.DLL
XINPUT1_1.DLL
XINPUT1_2.DLL
XINPUT1_3.DLL

Чтобы проверить, что устанавливается инсталлятором, я скачал программу автономной установки DirectX , которая нужна для установки обновлений DirectX на компьютерах без интернета:

Судя по датам, на момент написания этой записи обновления компонентов DirectX выходили 18 апреля 2011 года (обновление от 29.01.2016 г.: теперь все приходит через Центр обновлений другими пакетами).

Загруженная программа - по сути самораспаковывающий архив. Откроем его архиватором 7-zip :

Обратите внимание на имена файлов - в инсталляторе содержатся как файлы, имеющие отношение в DirectX 9 (d3dx9_31, d3dx9_32, d3dx9_33 и т.д), так и к DirectX 10 (d3dx10_35, d3dx10_40 и т.д.). Каждая версия обновляется - выходят новые версии.dll библиотек, добавляются новые.

Еще раз напомню: это не обновление DirectX с версии на версию. Это обновление версий программных библиотек и к нумерации 9, 10, 10.1, 11, 11.1 отношения не имеет. Вы не сможете повысить версию установленного DirectX таким способом.

После установки добавятся новые библиотеки и обновятся старые, что даст возможность запуститься тем играм, которые сообщают об ошибке отсутствия d3dx* . Так что попробовать установить можно.

Откуда скачать DirectX?

Просто установите обновления через Центр обновления!

Ни с каких сайтов скачивать ДиректИкс нельзя! Вы рискуете попасть на вирусы!

Компоненты DirectX обновляются через Центр обновления Windows . Только так вы можете получить поддержку DirectX 10.1 и 11 на Windows Vista, 11.1 на Windows 7.

Microsoft DirectX входит в качестве составной части в операционных системах Windows. Вы можете обновить DirectX, применив последний пакет обновления или другие обновления через Центр обновления Windows.

Если скачать и установить DirectX на Windows XP, появится ли там DirectX 11?

Не появится . DirectX 10, 11 и последующих версий на Windows XP не будет никогда. Можно долго распространяться на эту тему, я лишь скажу следующее: владельцы Windows XP, смиритесь - эта ОС давно уже перестала быть «игровой». Многие современные игры не поддерживают Windows XP. Даже Майкрософт официально забила на нее.

Стоит заметить, что существует сборка DirectX 10 для Windows XP, сделанная умельцами. По сути это всего лишь набор программных библиотек, не добавляющих эффекты DirectX 10, а только позволяющая некоторым играм запускаться без ошибок в XP, если в их настройках включен режим «DirectX 10». В любом случае, этот набор библиотек с высокой долей вероятности может вызвать глюки в операционной системе, так что ставить такое поделие ни в коем случае нельзя.

Как установить DirectX версии 11.1 на Windows 7?

В связи с появлением Windows 10 этот вопрос актуален как никогда. Там поддержка DirectX 11.1 уже есть изначально. В Windows 7 изначально установлена версия 11 . Поддержка новой версии DirectX придет через Центр Обновления Windows (Пуск - Все программы - Центр обновления Windows). Обновление называется KB2670838.

Так что обновляйте Windows через Центр Обновления. Windows 8 это тоже касается.

DirectX 12

Много слухов циркулирует вокруг DirectX 12. Попробую расставить все точки над i.

Windows 7, 8 и DirectX 12

Нет. Нет и ещё раз нет! DirectX 12 в Windows 7 и 8 не будет. Теоретически это возможно сделать, если производители видеокарт и Microsoft скооперируются. На практике - увы. 12-я версия - прерогатива Win10.

Многие старые видеокарты частично поддерживают DirectX 12

Представители производителя видеокарт AMD и nVidia заявляли, что видеокарты, поддерживающие DirectX 11, будут поддерживать и DirectX 12. Это оказалось маркетинговым лукавством. Преимущество DirectX 12 перед 11 - многократное увеличение производительности за счет оптимизации работы с компонентами видеокарты (памятью, видеопроцессором). «Железная» часть видеокарт, выпущенных в эпоху DirectX 11 и ранее, не приспособлена под DirectX 12, поэтому основная «фишка» новой версии API - ускорение обсчета графики - работать не будет.

То есть современные игры, которым для работы требуется 12-я версия графического API, с такими видеокартами запустятся. Но качество графики придётся выкрутить на минимум, чтобы получить более-менее приличную частоту кадров.

Есть три уровня поддержки старыми видеокартами нового графического API: Tier 1, Tier 2 и Tier 3. Tier 3 - самая полная поддержка стандарта. И она, пожалуй, наиболее близка к тому, что представляет собой DX12. В современные игры с ними на минимальных настройках графики можно играть вполне комфортно.

Intel ValleyView2 HD Graphics

Intel HD Graphics 2500

Intel HD Graphics 4000

И новее.

AMD Radeon HD 5xxx

AMD Radeon HD 6xxx

AMD Radeon HD серий 7xxxG, M и D

AMD Radeon HD 8xxxG

И новее.

Вроде как все должны.

Intel HD Graphics 4400

Intel HD Graphics 4600

Intel HD Graphics 5000

Intel Iris Graphics 5100

Intel Iris Pro Graphics 5200

NVIDIA GeForce GT 430

NVIDIA GeForce GT 440

NVIDIA GeForce GTS 450

NVIDIA GeForce GTX 460

NVIDIA GeForce GT 520M

NVIDIA GeForce GT 520

NVIDIA GeForce GT 525M

NVIDIA GeForce GT 540M

NVIDIA GeForce GTX 550 Ti

NVIDIA GeForce GTX 560

NVIDIA GeForce GTX 560 Ti

NVIDIA GeForce GTX 570

NVIDIA GeForce GTX 580

NVIDIA GeForce 610M

NVIDIA GeForce GT 610

NVIDIA GeForce GT 620M

NVIDIA GeForce GT 620

NVIDIA GeForce GT 630M

NVIDIA GeForce GT 630

NVIDIA GeForce GT 635M

NVIDIA GeForce GT 640M

NVIDIA GeForce GT 640

NVIDIA GeForce GT 730

И новее.

Intel - нет.

AMD - нет.

NVIDIA GeForce GT 650M

NVIDIA GeForce GTX 650

NVIDIA GeForce GTX 650 Ti

NVIDIA GeForce GTX 650 Ti Boost

NVIDIA GeForce GTX 660M

NVIDIA GeForce GTX 660

NVIDIA GeForce GTX 660 Ti

NVIDIA GeForce GTX 670

NVIDIA GeForce GTX 680

NVIDIA GeForce GT 740M

NVIDIA GeForce GT 750M

NVIDIA GeForce GTX 750

NVIDIA GeForce GTX 750 Ti

NVIDIA GeForce GTX 760

NVIDIA GeForce GTX 765M

NVIDIA GeForce GTX 770

NVIDIA GeForce GTX 780

NVIDIA GeForce GTX 780 Ti

NVIDIA GeForce 840M

NVIDIA GeForce GTX 850M

NVIDIA GeForce GTX 860M

NVIDIA GeForce GTX 970

NVIDIA GeForce GTX 980

И новее.

Intel - нет.

AMD Radeon HD 7750

AMD Radeon HD 7770

AMD Radeon HD 7850

AMD Radeon HD 7870

AMD Radeon HD 7950

AMD Radeon HD 7970

AMD Radeon R4 Graphics

AMD Radeon HD 8600

AMD Radeon HD 8800

AMD Radeon R7 200

AMD Radeon R9 200

AMD Radeon R9 390X

И новее.

А вот у нВидии видеокарт с полной поддержкой DirectX 12 пока нет.

Обновление от 3.03.2018: уже есть. Все современные поддерживают 12-ю версию.

Обратите внимание - после 2015 года поддержка 12-й версии API улучшилась, сейчас об уровнях Tier знать не требуется.

Дополнительные уровни - Feature levels

Мне, как владельцу AMD Radeon HD7950, хотелось бы радоваться, что у неё точно-точно есть поддержка DX12, но не получается. Дело в том, что Microsoft пошла дальше и ввела дополнительные уровни особенностей («Feature levels»). Если уровни Tier - индикатор для покупателей, то Feature levels предназначены для разработчиков и сообщают о том, какие же возможности новой версии API поддерживаются процессором видеокарты полноценно.

Feature level 11.0 - поддержка видеокартой DirectX11 и функции «Resource Binding» из Tier 1. Представители таких видеокарт: Nvidia GeForce GTX 400/500/600/700.

Feature level 11.1 - DirectX 11.1 и поддержка множества функций, которые я здесь приводить не буду (зачем?). Представители:

  • Nvidia GeForce GTX 745/750;
  • AMD Radeon HD серий 7700-7900/8500-8900, Rx 240-280;
  • Intel HD Graphics 4200-5200, 5300-6300;

Feature level 12.0 - поддержка некоторых возможностей Tier 1 и Tier 2. Представители: AMD Radeon HD 7790/8770, Rx 260/285/290 и новее.

Feature level 12.1 - полная поддержка Tier 1, аппаратная поддержка всех возможностей DirectX 12.

Таким образом, ни одна из видеокарт, вышедших до 2015 года, не поддерживает DirectX 12 полностью. Часть возможностей реализована на программном уровне, поэтому одна и та же игра, использующая DX 11 и DX 12, не получит ощутимого прироста производительности при переходе на новую версию API.

Итог

От уровня доступа к «железу» компьютера сильно зависит скорость работы программ. Особенно это касается игр. DX 12 предоставляет возможности, которыми разработчики не должны пренебрегать. Увы, на практике они не всегда используются полностью. Поэтому GTA V, вышедшая на ПК в 2015 году, выглядит лучше и выдаёт на том же железе больше кадров в секунду, чем схожая геймплеем Watch Dogs 2, появившаяся на свет полтора года спустя.

Очень часто многие пользователи сталкиваются со всевозможными заблуждениями на тему DirectX. Например, некоторые пытаются скачать сам DirectX с непонятных сайтов. А что еще могут засунуть «доброжелатели» в свои «левые сайты» под видом настоящего DirectX, так это всякие вредоносные программы или Амиго, с кучей сторонних приложений типа , или того хуже, трояны и вирусы. Вам это нужно? Если хотите узнать как правильно скачать и установить DirectX, читаем нашу инструкцию от сайта .

Давайте вспомним, что такое DirectX?

DirectX (от англ. direct - прямой, непосредственный) - это набор API, разработанных для решения задач, связанных с программированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. Зачастую обновленные версии DirectX поставляются вместе с игровыми приложениями.

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

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

Самое большое заблуждение — это то, что пользователи пытаются найти и установить, например DirectX 10 (или тем более DirectX 11 или 12) на Windows XP. Сразу скажем, что это не получится сделать! Даже не пытайтесь. В интернете, на многих сайтах, нерадивые горе-учителя, учат и уверяют скачать и установить DirectX 10 на Windows XP. На тех же на левых сайтах, есть для Windows XP DirectX 10 разработанный группой энтузиастов. Так как это далеко не разработка microsoft, не пытайтесь даже ставить это нечто. DirectX его назвать трудно, так как оно наносит большой вред компьютеру, и полный набор глюков в играх.

Такая же история и с Windows 7, где вас уверяют вставить на нее DirectX 12, а потом народ удивляется, почему тот или иной DirectX не устанавливается.

Не верьте всему подряд, что пишется в интернете, на заборе тоже многое написано. Все это — великий развод, не видитесь вы на эту чепуху! Конечно, если поковырять и изменить в реестре (что автоматом и делают некоторые вредоносные программки, меняя просто название версии), чтобы в свойстве отображалась любая версия DirectX, да хоть DirectX 15, хоть 20 напишут, от этого ведь на самом деле он не поменяется, а как был по качеству допустим девятым, таким и останется. Давайте просто разберемся во всей этой путанице с DirectX.

Все дело в том, что каждая версия DirectX должна соответствовать своим требованиям, которых вообщем то всего лишь три.

  • 1- Каждый выпуск Windows, имеет в составе свою определенную версию DirectX, и не более!
  • 2 — Ваша видеокарта! Если например у вас установлена на компьютере операционная система Windows 10, а именно десятка поддерживает последнюю версию DirectX 12, то и ваша видеокарта должна поддерживать DirectX 12, вот тогда можете радоваться, будет вам счастье. А если у вас видеокарта устаревшая и не поддерживает двенадцатую дирекцию, то естественно, вы хоть волчком крутитесь, все равно будет отображаться в свойствах и соответствовать именно тот DirectX, который поддерживает ваша видеокарта и не более!
  • 3- Правильная установка драйверов! Да, вы не ослышались, вот именно — правильная установка драйверов. Все дело в том, что если у вас все соответствует, и сама ОС Windows, и видеокарта, даже в свойствах системы указан правильный DirectX, но это еще не факт, что так оно и есть.

Приведем совершенно недавний пример. У знакомого не запускалась на ноутбуке игра.
Требование к игре: Windows 7 (или выше) x64, и DirectX 11.
Все параметры ноутбука для запуска игры соответствуют. Установлена Windows 7 x64, а как вы знаете, она поддерживает DirectX 11. Стоят две видеокарты, одна простая от Intel с поддержкой DirectX 10, а вторая, игровая от AMD, с поддержкой 11 дирекции. Казалось бы, игра должна запускаться, а вот ау… В чем дело? Начинаем разбираться. Оказывается все драйвера были раннее установлены с , а в свойствах производительности системы указан DirectX 10, за место нужной нам 11, вот игра и не запускалась. Драйвер от сервиса DriverPack Solution на видеокарту от AMD был установлен неполноценно, вообщем криво, и система её просто не воспринимала, в работе была только простая видеокарта от Intel которая поддерживает только DirectX 10. Помогла полная переустановка драйвера скаченного с сайта производителя для видеокарты от AMD. В итоге теперь DirectX 11, и игра отлично запускается.

Ничего не имеем против этого сервиса, он очень удобен, запустил на автомате DriverPack Solution, и все дрова стоят в системе. Это действительно очень удобно для установки систем, если вы не играете в игры, а если хотите иметь 100 процентную отдачу от своего компьютера в играх, то устанавливайте драйвера как положено. Уже не раз сталкивались именно с такими проблемами от DriverPack Solution. В диспетчере устройств вроде как бы все драйвера на вид установлены, а по сути установлены неполноценно. Мы даже термин придумали к такой установке драйверов -«Дырявые покрышки». Вроде и есть драйвера, а по сути пустышки, лишь бы в свойствах диспетчера устройств дыру заткнуть этими неполноценными драйверами. Не удивляйтесь потом, почему у вас та, или иная игра не запускается.

В обязательном порядке, устанавливайте все драйвера, особенно на видеокарты, именно с сайта производителя вашего оборудования или с родными драйверами на SD-дисках которые шли в комплекте к вашему компьютеру (ноутбуку). Когда вы выполните все эти не хитрые требования, тогда ваша система и будет работать как положено.

А то как обычно бывает? Установят криво саму систему Windows, а потом еще и криво установят драйвера на неё, вот и получаются «Танцы с бубном». Мало того, так еще обвиняют Майкрософт, что мол плохие у них операционные системы. А по сути, кто виноват? Конечно виноваты сами пользователи, которые все криво изначально поставили, а те кто не сам ставит, то отдают свои компьютеры в сервисные центры, в надежде, что там им все качественно установят. Так вот и там тоже попадаются криворукие мастера, и не факт, что все верно сделают. Накатят быстренько систему кривую, порой даже сборочку пиратскую втюхают, а скажут вам, что лицензионную поставили, а далее дровишки с DriverPack Solution набросают, вот и получаются «Дырявые покрышки», но самое главное, вы еще за этот «шедевр» заплатите свои деньги, и не малые.

Наш совет! Перед тем как отдать свой ПК в сервисные центры, узнайте, в каком из них, работает хороший и добросовестный мастер, вот туда и несите свой компьютер, или вы наткнетесь на горе-мастера, после которого ваш компьютер будет просто деревянным, как и сам этот мастер. Вы ведь когда серьезно относитесь к своему здоровью, обращаетесь наверное к лучшему доктору? С компьютером, тоже самое.

Наверное для вас немного все проясняется? Теперь вы думаете, зачем я столько времени мучился, излазил весть интернет, чтобы установить то, что вообщем сделать просто оказывается невозможно, так как выше установленного железа на компьютере не прыгнуть, даже если соответствует версия Windows.

Вот теперь, давайте поговорим, какая версия DirectX включёна в состав Windows XP, Windows 7, Windows 8.1 и Windows 10.

Какая версия DirectX у последних выпусков Windows:

  • Windows XP SP3 — 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 10 имеется поддержка DirectX 12, и все версии такие как DirectX 11, 10, 9 и ниже, тоже включены в этот состав Дирекции. Теперь нетрудно запомнить, какой Windows имеет поддержку и содержит в себе ту или иную версию DirectX.

Если вы хотите чтобы у вас работал сам DirectX, нужно чтобы еще и видеокарта поддерживала эту версию DirectX.

Например если вы установили операционную систему Windows 10, а она имеет поддержку DirectX 12, и приобрели видеокарту с поддержкой тоже DirectX 12, то это и будет правильно. А если у вас установлена к примеру Windows 7, а она поддерживает только до версии DirectX 11.1, а ваша видеокарта имеет поддержку DirectX 12, так вот у вас и будет система видеть только DirectX 11.1. DirectX 12 на Windows 7 ну никак не выйдет.

В зависимости от выпусков операционных систем Windows, поддержка DirectX тоже разная. Чем новее выпуск Windows, тем выше сама версия DirectX. На сегодняшний день, самая последняя версия, это DirectX 12, которая поддерживается только операционной системой Windows 10. Выше версию еще не придумали. Так что, если вы встретите в интернете тему про дирекцию 13, 14, 15 и так далее, то знайте, это полный развод.

Каждый последующий выпуск Windows уже содержит в себе нужную версию DirectX. Вам нет необходимости что-то устанавливать и беспокоиться по этому поводу. Единственно, кому нужно пополнить библиотеку DirectX полным комплектом, так это тем, кто играет в игры, особенно для тех, кто играет в старые игры. Так как операционные системы Windows уже содержат в себе новую dll библиотеку DirectX, а иногда для запуска старых игр, DirectX нужно пополнить старой библиотекой, в итоге она будет полноценная, что для новых, что для старых игр.

Где скачать DirectX?

Через Центр обновления, загружаются все важные обновления, в том числе и DirectX, поэтому мы советуем вам обновления не отключать.

Microsoft DirectX входит в качестве составной части в операционные системы Windows. Вы можете обновить DirectX, применив последний пакет обновления или другие обновления через Центр обновления Windows.

Многие современные устройства имеют DirectX-совместимые драйверы, иными словами, пользователь должен установить DirectX для использования всех возможностей устройства. На данный момент система обновления драйверов Windows Update позволяет загружать только необходимые библиотеки, а не весь драйвер целиком.

Чем отличаются версии DirectX

Технологии развиваются довольно быстро. Каждая новая версия DirectX позволяет программистам добавить какой-нибудь новый эффект в игру, а старые – оптимизировать, поэтому библиотека версий DirectX пополняется новыми компонентами.

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

Например если игра разрабатывалась для DirectX 9, то наличие DirectX 12 установленной на компьютере, ничего не изменит. Все зависит не только от возможностей видеокарты, но и от поддержки технологий игры. Реалистичные виды, красивое освещение, четкие текстуры, плавные движения, этого добиваются все игровые компании, разрабатывающие игры, поэтому компоненты DirectX всегда пополняются новшествами.

Есть еще один момент, наверное многие с этим сталкивались. Допустим, DirectX установлен на компьютере, а при установке какой либо игры, выходит окно установить DirectX. В этом ничего особенного нет, так как возможно именно для данной игры, в библиотеке DirectX не хватает определенных компонентов, а если и есть, то система пропустит установку, подтвердив, что все компоненты установлены.


Пожалуй все геймеры слышали и устанавливали такое приложение как DirectX. Связано это с тем, что куча игр, по крайней мере ранее, требовали установки каких-то особенных версий программы. Так как данное приложение активно развивалось в эпоху зарождения игр, то без обновления или установки такого важного инструмента как DirectX практически не обходилось.

Сразу стоит отметить, что DirectX используется не только для игр, но и некоторых программ, чаще всего с графическим интерфейсом вроде обработки изображений, рисования чертежей и т.д.

Что из себя представляет DirectX?

Сложилось впечатление, что это некая добавка к играм, а некоторые до сих пор думают, что это какая-то неведомая часть системы. В какой-то степени – да, без этой начинки ничто работать как нужно не будет (в особенности игры), но представляет из себя сам DirectX некий пакет СОМ-совместимых объектов от корпорации Microsoft.

Здесь начинается немного программирования, объект – это некий инструмент, который включает в себя определённое количество функций для достижения часто используемых целей. Проще всего это объяснить на примере автомобиля: по отдельности существуют цилиндры, поршни, фильтры и т.д., все они, являются запчастями, напротив, двигатель – это уже агрегат, совмещающий в себе множество деталей и выполняющий задачи передвижения транспорта. Запчасти, в данном примере, представляют собой функции, а двигатель – объект.

Для того, чтобы каждому разработчику не собирать весь агрегат по новой, создали пакет Windows Direct, который это уже сделал за них. Для подавляющего большинства случаев, объектов достаточно для выполнения стандартных операций, в остальных нужно разрабатывать другие пути достижения цели.

Если игра или приложение разработано под DirectX 10, то работать на младшей версии оно не будет.

Используя тот же пример, если у вас запчасти остались от дедовского Москвича, то собрать из него 8-и цилиндровый современный двигатель не получится.

Какой Directx установить?

Мы плавно перебрались к вытекающему вопросу, какой же версии пакет нужно использовать. Здесь всё крайне индивидуально, так как всё зависит от 3-х основных платформ и, если хоть какая-то не будет поддерживать нужную версию, то ничего работать так и не будет (в плане игры).

Итак, определённую версию DirectX должны поддерживать:

  • Видеоадаптер;
  • Операционная система;
  • Непосредственно приложение.

На самом деле это веб установщик и он сначала проверит наличие вашей версии программы, а потом, если потребуется, загрузит новую версию или обновления к уже существующей, если у вас новая версия. Такой подход не всегда удобен и, возможно, после того, как запустите Directx инсталлятор, вам потребуется найти и оффлайн файл. Он необходим для ПК без доступа в сеть и, иногда, как показал опыт, необходим при сбоях в установленном приложении.

Этот вариант установки уже устарел с выходом новых версий и используется только, если нет выхода в сеть или отключены обновления. В общем, все необходимые пакеты обновлений DirectX приходят вместе с остальными обновлениями системы и не требуют ручного вмешательства.

Изменение поддержки версий DirectX на разных уровнях

Также следует ответить на назревающий в умах многих, вопрос: «Как заставить Windows XP, 7, 8, 8.1/старенькую видеокарту поддерживать современную версию DirectX?» Ответ - никак. Такой функции не существует и даже обходных путей просто нет. Костыли не помогают, так как они потребуют полной переработки DirectX, а никто не обладает данными ресурсами, плюс ко всему, если даже Microsoft не смогла это реализовать, то вряд ли кто-то сможет.

То же относится и к играм с поддержкой 11.1 версии, опустить её до уровня DirectX 9.0 не получится, кроме тех приложений в настройках, в которых присутствует соответствующая функция. Таковых не много, так как нужно не играм скачиваться до заниженных требований пользователей, а последним приобретать современное оборудование. Да, и выполнять двойную работу мало кто станет.

От версии DirectX зависит качество графики, текстуры и анимация. При более старых версиях количество движущихся объектов очень ограничено мощностями компьютера, так как нет должной оптимизации. По мере роста версий DirectX качество графики и скорость обработки возрастает, позволяя погружаться в игру целиком.



Если у Вас остались вопросы по теме «Что такое Directx?», то можете задать их в комментариях


if(function_exists("the_ratings")) { the_ratings(); } ?>

Я думаю, что каждый любитель компьютерных игр сталкивался с таким термином. Далеко не все понимают для чего он предназначен. Проще говоря, DirectX — это определенный промежуточный слой, между видеокартой и видеоигрой.

Немного истории

Создателями ПО является всем известная компания Microsoft. DirectX – это набор инструментов , предназначенный для создания компьютерных игр или работы с компьютерной графикой.

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

Первая версия Windows Game SDK (раннее название directX) появилась еще в 1995 году и была создана как аналог уже существующей графической библиотеке OpenGL.

Различие версий

Во время появления первых игр, поддерживающих DirectX 12 новая версия приводила к снижению производительности , особенно на видеокартах NVIDIA. Но технологии развиваются со скоростью света. Каждая последующая цифра в названии делает возможным программистам добавить новый пакет эффектов в игру или оптимизировать старые.

Более подробно рассмотрим различие между компонентами на видео:

Возьмем в качестве примера игру Dirt 3.

На видео мы можем заметить, как отличается изображение в зависимости от версии.

К примеру, в изображении с левой стороны (используется Директ 11) более мягкие тени, добавлены эффекты летящего из-под колес снега. Этого результата можно добиться и на DirectX 9, но это серьезно скажется на производительности компьютера. Это можно обосновать тем, что девятый Директ менее оптимизирован.

В качестве второго примера приведу грамотный разбор автором различных версий ПО в популярных на сегодняшний день играх

В видеоролике проводится сравнение двух DirectX, а именно 11-й и 12-й.

Поддержка различных версий Windows

DirectX по своей сути – папка программных библиотек. В случае если его не будет, то игры либо не будут запускаться, либо будут без эффектов. Список поддержки предустановленных операционной системой разных версий Директа ниже.

Следующие версии, такие, как 11.3, 11.1, 11, 11.2 поддерживают операционные системы: Windows 8, 8.1, 10, 7

Directx12 предустановлен в Windows 10.

Более ранние, а именно 10, 10.1 и 9.0c поддерживают операционные системы windows XP, Vista, SP1, SP2 и SP 3

Как узнать какой DirectX, поддерживает видеокарта

Информацию о поддержке можно найти на сайте производителей видеокарты или в любом из интернет-магазинов в описании видеокарты. Такие популярные видеокарты, как GeForce GTX 1050 4 gb, 1080 8gb, 1030 2gb, 1060 6gb, Sapphire Radeon RX480 8gb, 970 4gb поддерживают DirectX 12.

Также можно воспользоваться утилитой GPU-Z . После запуска в указанном на скриншоте окне в скобках будет указана поддерживаемая версия программного обеспечения.

Определяем версию на компьютере

Чтобы понять, какой Директ стоит на компьютере достаточно нажать сочетание клавиш Win + R и ввести «dxdiag» во всплывшем окне.

После проделанных манипуляций откроется программа «Средство диагностики DirectX». Всю необходимую информацию о версии компонента и системе в целом вы можете найти в данной утилите.

Подробнее о dxdiag на нашем сайте.

Что такое Direct3D

Direct3D — это интерфейс программирования графических приложений (API) для Microsoft Windows. Часть DirectX Direct3D используют для рендера 3D графики в программах, требующих повышенную производительность, к примеру, в играх. Direct3D использует аппаратное ускорение , если оно предусмотрено в видеокарте — это делает возможным ускорить 3D-рендеринг или же ускорить его частично.

Direct3D расширяет возможности аппаратного обеспечения 3D-графики, в том числе Z и W-буферизацию, буферовку трафарета, пространственное сглаживание, альфа-смешение, смешение цветов и текстур, отсечения, отбраковки, эффекты атмосферы, перспективного текстурного картирования, программируемые шейдеры HLSL и эффекты. Объединение с другими возможностями директа позволяет Direct3D предоставить следующие функции: видео-сопоставление, 3D-рендер в 2D-оверлейных плоскостях и даже спрайты, обеспечивающие использование 2D и 3D-графики в медиа-связях.

Другие компоненты

Direct3D – это один из важных, но не единственный компонент входящий в комплект директа. Рассмотрим каждый компонент отдельно.

  • DirectDraw. Сейчас не используется и его разработка прекращена. Ранее отвечал за вывод растровой графики.
  • DirectInput. Эта часть отвечает за внешние игровые устройства . Т.е. именно он обрабатывает данные, которые поступают с джойстиков, мыши, клавиатуры и другого периферийного оборудования.
  • DirectPlay. Отвечает за сетевое взаимодействие с играми. Доступна поддержка соединения клиент-сервер (для многопользовательских игр, которые обрабатывают данные на сервере) и клиент-клиент (локальные игры, где связь происходит напрямую между компьютерами).
  • DirectSound. Как понятно из названия – это работа со звуком . Обрабатывает звук на низком уровне (формат wav).
  • DirectMusic. Обработка музыки в форматах Microsoft.
  • DirectShow. Тоже все должно быть понятно из названия. Отвечает за ввод и вывод аудио и видео данных.
  • DirectX Instruments. Служит для синтезирования MIDI звуков . Ранее использовалась в некоторых аудио программах по написанию музыки. Сейчас практически вытеснена технологией VST от Steinberg.
  • DirectSetup. Отвечает за процесс установки всего пакета директ икс.
  • DirectX Media Objects. Поддержка потоковых объектов (эффекты, энкодеры, декодеры и др.)
  • Direct2D: обработка и вывод двухмерной графики , в формате 2D.

Что такое Feature levels и его поддержка видеоконтроллерами

Feature levels – это уровень функций видеокарты. Это понятие начало использоваться с Direct3D 11.

Каждая видеокарта может реализовать определенный уровень функций , который зависит от установленного графического процессора. Сам по себе уровень функций – это четко заданные возможности видеоконтроллера. К примеру, Feature levels 9_1 содержит функции, которые реализованы в Direct3D 9, а 11 уровень функций, соответственно в Директ 3D 11.

Работает такая система только на повышение , например, игра или программы, разработанные для 9 версии, будут работать в 11, но на оборот нет.

Более детально о Feature levels можно прочесть на официальном сайте:

Пока в природе не существовало DirectX, большинство игровых программ для персональных компьютеров работали под управлением Ms Dos.
Чтобы запустить такие игры, пользователям приходилось бороться, в прямом смысле этого слова, с конфигурационными файлами системы, такими, как AUTOEXEC.BAT, CONFIG.SYS, и с настройками драйверов типа EMM386.EXE и т.д... лишь ради того, чтобы получить несколько дополнительных свободных байт из доступных 640Кб базовой памяти, даже если на компьютере установлено 16Мб оперативной памяти.

Жизнь разработчиков программного обеспечения была не сахар, потому что для преодоления ограничения в 640Кб приходилось использовать различные драйверы для каждой разновидности видеоадаптеров и звуковых карт.

С выходом в свет технологии компании Microsoft DirectX для Windows 95 все указанные выше проблемы становятся историей.

Теперь разработчики могут использовать аппаратно независимый интерфейс программирования, с помощью которого создаются новые игры, для участия в которых пользователю достаточно лишь вставить в устройство чтения компакт-диск с данными и наслаждаться игрой. Теперь писать игры и играть в них стало гораздо приятнее.

Но разработка игр с использованием DirectX остается все еще непростой задачей. Иногда все еще достаточно трудно найти грамотную документацию, и начинающие разработчики тратят много времени на поиск знаний о том, как использовать такие новшества, как DirectDraw, Z-буферы или DirectSound, а также многие другие сложные, но полезные инструменты.

Цель этой статьи - помочь разработчикам, использующим DirectX, несколькими советами, основанными на моем собственном опыте написания программ. Обычные пользователи смогут получить из этого обзора общее представление о том, что такое DirectX.

Что такое DirectX ?

DirectX представляет собой набор из нескольких API (application programming interface - интерфейс программирования приложений), позволяющих разработчикам игр и других интерактивных приложений получать доступ к специфическим функциям аппаратного обеспечения без необходимости написания аппаратнозависимого программного кода. DirectX основан на наборе интерфейсов COM или классов. COM расшифровывается, как Component Object Model (Компонентная Модель Объектов), и представляет собой спецификацию интерфейса, в котором функции вызываются через указатели. Таким образом, объекты COM могут описываться такими языками программирования, как C/C++, Delphi или даже Basic. Все примеры, ссылка на которые была выше, написаны на C++, т.к. я пользуюсь именно этим языком. Интерфейс COM используется не только в DirectX, но и на уровне операционной системы в качестве модели объектов и является сердцем одной из самой широко применяемой технологии - OLE (Objects Linking and Embedding - связывание и встраивание объектов).

Последняя версия DirectX имеет порядковый номер 5.0 и включает в себя следующие API:

  • DirectDraw - обеспечивает доступ к аппаратным средствам, отвечающим за изображение. Предлагается возможность работать с двумерной графикой и напрямую управлять видеопамятью, оверлеями и сменой видеостраниц.
  • DirectSound - как видно из названия, этот компонент обеспечивает аппаратнонезависимый интерфейс воспроизведения звука. DirectSound позволяет приложениям полностью использовать возможности аппаратных компонентов, обеспечивающих работу со звуком, например, микширование без временных задержек.
  • DirectInput - Обеспечивает аппаратнонезависимый ввод данных в систему в режиме реального времени. События, обрабатываемые DirectInput, формируются клавиатурой, мышкой и джойстиком.
  • DirectPlay - представляет собой независимый протокол для осуществления связи между компьютерами. Может применяться для многопользовательских игр, связь в которых осуществляется через Интернет, локальную сеть или прямое последовательное соединение с помощью кабеля. Интерфейс, именуемый DirectPlay Lobby, позволяет создавать онлайновые места встреч в интернете, попадая в которые множество людей могут объединяться и совместно участвовать в играх.
  • Direct3D - это подсистема создания трехмерных графических изображений. Состоит из API низкого уровня, который обеспечивает несколько базовых возможностей создания изображения, и API высокого уровня, который осуществляет комплекс операций, образующих изображение.

DirectX 5.0 SDK (Software Development Kit - Набор разработчика программ), доступен для загрузки с сайта Microsoft.

Справочник по DirectX для начинающих

Если Вы не являетесь разработчиком игровых программ, но Вам нравиться играть на персональном компьютере, Вы точно должны были слышать о DirectX. Почему?

Потому что DirectX широко используется в современном поколении компьютерных игр. Каждая игрушка, имеющая логотип "for Windows 95 ", прежде, чем запуститься на Вашем компьютере, требует наличия установленного в системе DirectX. Вот почему DirectX это не просто "нечто для программистов", это принципиально необходимое нечто для игроков.

В тоже время если какая-то из таких современных игр установленна на Вашем компьютере, значит, DirectX тоже установлен, и Вы можете узнать об этом, обратив внимание на несколько новых файлов, которые появились в директории WindowsSystem , например DDRAW.DLL или DPLAY.DLL. Это компоненты DirectX, которые используются всеми играми, установленными в Вашей системе и работающими через интерфейс DirectX.

DirectX используется для обработки событий, которые должны совершаться в каждой игре, таких, как вывод изображения на экран или считывание входных данных с клавиатуры, мыши или джойстика.

С появлением все большего и большего числа игр, использующих DirectX, пользователи замечают некоторые отличия, например:

  • Улучшенные многопользовательские игры
    Причина, почему хороших многопользовательских игр не так много, в том, что они очень сложны в создании. DirectPlay делает создание таких игр менее болезненной проблемой и упрощает их установку. Вот почему мы вправе ожидать увеличения количества новых классных многопользовательских игр.
  • Завораживающие 3D-игры
    Вы знаете, почему трехмерные игры идут на Вашем компьютере так медленно? Причина в том, что изображение 3D-объектов на плоском экране требует огромного количества математических вычислений. Если эти вычисления осуществляются центральным процессором системы, то такие процессы обсчитываются слишком медленно, так как процессор выполняет еще и другие системные операции. Одним из решением этой проблемы является возложение задач по обработке трехмерных процессов на специальные 3D-видеоакселераторы.

    Такие карты имеются в продаже, но многие игры не используют аппаратные возможности специализированных плат, потому что создатели игры должны написать соответствующий драйвер, а иногда бывает проблематично переписать заново целые фрагменты кода для того, чтобы использовать преимущества аппаратной обработки 3D. Компонент Direct3D, впервые включенный во вторую версию DirectX, обеспечивает стандарт на использование видеоадаптеров, обеспечивающих аппаратную 3D-акселлерацию, и его применение, несомненно, заставит трехмерные игрушки работать быстрее.

    Кроме этого, Direct3D эмулирует программную реализацию 3D для компьютеров, не оснащенных аппаратной поддержкой обработки трехмерной графики.

  • Упрощенная установка программ
    Игры, соответствующие спецификации DirectX, полностью используют возможности, предоставляемые интерфейсом Windows 95, и их установка также проста, как инсталляция Вашего любимого текстового процессора.

    Это означает, что система больше не будет спрашивать Вас о том, какое прерывание использует звуковая карта или кто является изготовителем видеоадаптера.
    Конечно, существует вероятность несовместимости вашего аппаратного обеспечения с драйверами DirectX, однако со временем этих проблем не станет, так как все современные компоненты компьютера поступают в продажу уже сертифицированными на соответствие стандарту DirectX.

  • Изображение в играх стало гораздо лучше
    Большинство игр, написанных для DOS, используют низкое разрешение изображения, обычно 320x240. Это объясняется тем, что такое разрешение максимально для стандартных VGA-видеокарт, поддерживающих отображение только 256 цветов.
    Для того, чтобы использовать более высокое, а следовательно, более качественное разрешение, такое, как 640x480 или 800x600, разработчикам необходимо писать игры, работающие с видеокартами стандарта Super VGA, а это означает увеличение объема работ.

    DirectX поддерживает VGA и SVGA видеорежимы при 64К цветов (Hi-color) без дополнительных затрат ресурсов. С каждым днем производительность видеоадаптеров возрастает, следовательно, DirectX игры будут выглядеть все более реалистично и привлекательно.