Какая последняя версия directx
Содержание:
- Совместимость
- Какая версия лучше?
- Как узнать, какую версию DirectX поддерживает моя видеокарта и Windows?
- Вводная информация
- Рекомендации разработчикам
- Подробности
- OpenGL или DirectX: что лучше для игр?
- Что из себя представляет DirectX?
- Что такое директ икс: зачем он нужен?
- Почему каждая игра должна переустанавливать DirectX
- Если DirectX уже включен в Windows, то почему игры устанавливают его?
- Какой Directx установить?
- Описание
- Архитектура D3D11 Framework[править | править код]
- Конвейер по обработке графики и звука
- Как заставить игру X использовать DirectX версии Y?
- Нужно ли устанавливать DirectX с сайта Microsoft? Что это дает?
- Поддерживаемые Windows версии DirectX
- Что делать, если у меня возникли проблемы с DirectX?
Совместимость
Многие современные устройства имеют DirectX-совместимые драйверы, иными словами, пользователь должен установить DirectX для использования всех возможностей устройства. На данный момент система обновления драйверов Windows Update позволяет загружать только необходимые библиотеки, а не весь драйвер целиком.
- Windows 95//98 SE/ME;
- Windows NT 4.0, Windows 2000, Windows 2000 Advanced Server, Windows 2000 Professional Edition, Windows 2000 Server, Windows 2000 Service Pack 2, Windows 2000 Service Pack 3, Windows 2000 Service Pack 4;
- Windows Server 2003, Windows Server 2003 Service Pack 1, Windows Server 2003 Datacenter x64 Edition, Windows Server 2003 Enterprise x64 Edition, Windows Server 2003 Standard x64 Edition, Windows Small Business Server 2003;
- Windows XP, Windows XP 64-bit, Windows XP Home Edition, Windows XP Media Center Edition, Windows XP Professional Edition, Windows XP Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3, Windows XP Starter Edition, Windows XP Tablet PC Edition;
- Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10;
- Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2016.
Какая версия лучше?
Все зависит от того, какую цель преследует пользователь. Для каждой версии операционной системы есть свои варианты DirectX. На Windows 7 не установиться версия файла 12, потому что она используются для более новых систем и игр, чьи требования в разы выше. Некоторые проекты разработанные так, что могут использовать старые и новые файлы. В меню можно будет выбрать подходящий вам пункт.
Тогда можно сделать вывод, что в большинстве случаев нельзя выбрать, какой список библиотек использовать в своей операционной системе. Разработчики ОС Windows и производители графических ускорителей уже сделали это за пользователей.
Важно. С неофициальных сайтов лучше ничего не качать, сборки там некачественные и кроме ошибок вы ничего не получите
Также не стоит устанавливать DirectX с новейшими дополнениями, если ваша система им не соответствует, та или иная игра все равно не пойдет, потому что видеокарта не распознает установленные компоненты. Для того, чтобы пользоваться возможностями свежего DX необходимо сменить видеокарту и (или) установить новую Windows.
Как узнать, какую версию DirectX поддерживает моя видеокарта и Windows?
Видеокарта
Подсмотреть информацию о том, какую версию DirectX поддерживает ваша видеокарта, можно на официальной страничке сайта производителя и в любом онлайн-магазине. Например, в Яндекс.Маркете. Однако, в целом, все видеокарты, вышедшие после 2020 года, поддерживают 12-ю версию. Хотя именно с DX12 есть нюансы, об этом ниже.
Windows
Узнать, какую версию поддерживает Windows, сложнее, потому что многое зависит от установленных обновлений. Если у вас Windows 10, то там точно самая свежая версия API. Для всех остальных ОС алгоритм таков:
1. Убедитесь, что у вас установлены все обновления Windows (Пуск — Все программы — Центр обновления Windows — Поиск обновлений — Установить).
2. Необязательный пункт: обновите драйвер видеокарты до самой новой версии:
Официальная страница драйверов для видеокарт nVidia
Официальная страница драйверов для видеокарт AMD (см. выбор драйвера справа вверху страницы)
Официальная страница драйверов для видеокарт 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.
Вводная информация
Стоит отметить, что без данного компонента невозможна нормальная работа операционной системы. Ей, как и многим приложениям, будет постоянно чего-то не хватать. Так что давайте для начала разберемся, что это за компонент такой.
Что такое DirectX?
Это набор специальных библиотек, необходимых операционной системе Windows для работы с 2D и 3D графикой. Пакет Директ Икс предоставляется компанией Microsoft. Причем совершенно бесплатно. Установить его может любой желающий.
А вот в операционной системе Windows 10 уже присутствует актуальная версия данных библиотек. Так что для тех, кто использует эту ОС данный материал не особо актуален. Оно и понятно. Ведь «десятка» — текущий проект компании из Редмонда.
Кому может пригодиться эта статья? Во-первых, тем, кто использует Windows 7, 8 или 8.1. Там иногда приходится производить обновление компонентов DirectX до последней версии. То же самое касается и тех, кто сидит на Vista.
А вот пользователям Windows XP рассчитывать не на что. Для них потолок – DirectX 9.0c. Но эта версия библиотек уже давно у них установлена. К сожалению, из-за политики компании Microsoft новых версий библиотек для XP не будет. Но если у вас восьмая (или более ранняя) версия библиотеки, то данная инструкция все же поможет.
А теперь давайте поговорим о том, как посмотреть версию компонентов, установленных в ОС. Это необходимо, поскольку может оказаться так, что обновление вовсе не нужно.
Как узнать версию DirectX?
Перед обновлением всегда необходимо проверять версию того компонента, который вы собираетесь обновить. Если она актуальна, то не нужно ничего делать. Получится зря потраченный трафик (так как все это скачивается из интернета).
Узнать версию DirectX можно при помощи встроенных инструментов Windows. Для этого даже не нужно устанавливать никаких сторонних приложений. Способ довольно простой. С ним справятся даже новички. Но на всякий случай мы предоставим подробную инструкцию:
- Открываем меню «Пуск» при помощи специальной кнопки на панели задач.
- Перемещаемся в каталог «Служебные – Windows» и кликаем по пункту «Выполнить».Вызвать этот инструмент можно и проще. Достаточно нажать сочетание клавиш Win + R».
- Далее вводим в текстовое поле dxdiag.
- Нажимаем «ОК» или Enter на клавиатуре.
Появится окно с огромным количеством информации. В числе прочего там будет строка «Версия DirectX».Именно в ней и отображается та версия библиотек, что установлена в системе. Если она неактуальна, то переходим к обновлению.
Стоит отметить, что процесс обновления выполняется в режиме онлайн. Поэтому просто необходимо наличие широкополосного подключения к интернету. Иначе ничего не выйдет. Многое также зависит от скорости. Если она маленькая, то процесс инсталляции затянется надолго. Итого нужно будет загрузить, в среднем, 150 МБ.
Рекомендации разработчикам
Наконец, если говорить о том, что лучше — OpenGL или DirectX – для разработчика, который только начинает освоение этих технологий и делает первые шаги, большинство специалистов в этой области отмечают, что сначала лучше ознакомиться с принципами функционирования и инструментальным набором DirectX, поскольку эта платформа выглядит для новичка более простой, и для нее постоянно выпускаются неплохие комплекты SDK, предназначенные как раз для упрощения адаптации программных продуктов к «железу», а только потом переходить к изучению OpenGL.
Впрочем, многое может зависеть и от того, какую конечную цель вы перед собой ставите и какой именно функционал каждой платформы будет использоваться в каждом конкретном случае (только графика, только звук или какие-то объединенные решения).
Подробности
Директ Икс — набор инструкций (библиотек, функций), позволяющих компьютеру наиболее эффективно наладить связь с техническим оснащением (по-простому — с «железом»). Причем это относится не только к видеокарте и графике в целом, как многим могло показаться. Например, модуль DirectInput отвечает за взаимодействие системы с устройствами ввода: клавиатурой, мышью, различными игровыми манипуляторами (джойстик, геймпад) и т. д.
Рекомендуем! InstallPack |
Стандартный установщик | |
---|---|---|
Официальный дистрибутив DirectX | ||
Тихая установка без диалоговых окон | ||
Рекомендации по установке необходимых программ | ||
Пакетная установка нескольких программ |
Существует огромное количество технических подробностей, но они будут интересны только продвинутым пользователям и программистам. В обыденности же ДиректХ можно назвать глобальным драйвером, хотя это не совсем корректно. Но опять же, нюансы здесь ни к чему.
Рядовой пользователь сталкивается с этим вот драйвером именно в играх. Их корректная работа — одна из причин, для чего нужен DirectX. Ведь без его наличия на компьютере при их открытии просто будут возникать всевозможные ошибки и ничего больше.
Совместимость
Пользователю в принципе даже не нужно разбираться, что это такое — DirectX. Достаточно скачать и установить его к себе на компьютер. Но тут есть важный момент нюанс — совместимость. Поговорим о нем более подробно. Во-первых, данный драйвер совместим только с операционной системой Windows. Более того, он создавался исключительно для нее. Во-вторых, разные его версии несовместимы с разными изданиями ОС.
Со вторым нюансом все довольно просто:
- Только на Windows 10 имеется последняя версия ДиректХ (она нумеруется как двенадцатая). Она интегрирована в систему, поэтому не нуждается в отдельной установке.
- На Виндовс 7 доступен только DirectX 11.
- А в XP — девятая версия.
Но это еще не все, ведь вопрос совместимости не ограничивается выбором ОС. Сама по себе видеокарта может не поддерживать последнюю версию библиотеки. Правда, это относится только к старым графическим адаптерам. С новыми такой проблемы не возникнет. За подробностями обратитесь к следующей статье. В ней вы найдете несколько немаловажных нюансов.
OpenGL или DirectX: что лучше для игр?
Что же касается игр, и тут однозначного ответа дать нельзя. Так, например, довольно часто можно встретить комментарии по поводу того, что графические чипы линейки Radeon 9800 лучшие результаты в тестах показывают на основе DirectX, а карты GeForce серии 5XXX – при использовании OpenGL. Зато у DirectX есть еще одно неоспоримое преимущество.
Поскольку мост OpenGL изначально создавался для других платформ, с ним в Windows возможно появление разного рода багов, а вот DirectX позволяет довольно сносно пользоваться играми даже на относительно устаревших компьютерах без всяких торможений (яркий пример тому – игра Age Of Empires).
Бывает и наоборот. Так, например, некоторые пользователи отмечают, что DOOM 3 на картах серии Radeon X1XXX с использованием OpenGL просто «летает», а Half-Life 2 очень часто «тормозит». Но тут, видимо, все зависит еще и от драйверов.
Но, по большому счету, если игра поддерживает использование обеих технологий, лучше всего посмотреть, каким будет результат работы видеокарты при использовании каждого режима попеременно. Само собой разумеется, что достижения оптимальной производительности и сами платформы, и драйверы графических ускорителей должны быть обновлены до самых последних версий.
Что из себя представляет DirectX?
Сложилось впечатление, что это некая добавка к играм, а некоторые до сих пор думают, что это какая-то неведомая часть системы. В какой-то степени – да, без этой начинки ничто работать как нужно не будет (в особенности игры), но представляет из себя сам DirectX некий пакет СОМ-совместимых объектов от корпорации Microsoft.
Здесь начинается немного программирования, объект – это некий инструмент, который включает в себя определённое количество функций для достижения часто используемых целей. Проще всего это объяснить на примере автомобиля: по отдельности существуют цилиндры, поршни, фильтры и т.д., все они, являются запчастями, напротив, двигатель – это уже агрегат, совмещающий в себе множество деталей и выполняющий задачи передвижения транспорта. Запчасти, в данном примере, представляют собой функции, а двигатель – объект.
Для того, чтобы каждому разработчику не собирать весь агрегат по новой, создали пакет Windows Direct, который это уже сделал за них. Для подавляющего большинства случаев, объектов достаточно для выполнения стандартных операций, в остальных нужно разрабатывать другие пути достижения цели.
Если игра или приложение разработано под DirectX 10, то работать на младшей версии оно не будет.
Используя тот же пример, если у вас запчасти остались от дедовского Москвича, то собрать из него 8-и цилиндровый современный двигатель не получится.
Что такое директ икс: зачем он нужен?
Я снова рад приветствовать своих дорогих читателей. И сегодня у меня для вас приятная новость: я расскажу о том, что такое директ икс. Этот вопрос постоянно возникает на форумах с разной тематикой, среди которых преобладает геймерская.
Там комментарии по этому поводу иногда слишком далеки от истины и могут ввести в заблуждение. Я же постараюсь осветить данную тему с разных сторон. И тогда у вас наверняка сложится более-менее точное понимание.
Начну с названия, которое, по большому счету, ничего не значит. Слово «директ», в английском звучании означает «прямой» или «непосредственный». Нам же ближе и понятнее слова «директория» и, конечно, «директор».
Вот от него и будем отталкиваться, подразумевая, что это «нечто», способное эффективно управлять чем-то сложным. Эта такая аналогия мне пригодится в дальнейшем для объяснения некоторых моментов. Ну а «Икс» – пусть так и остается, неизвестный объектом или именем нашего «менеджера».
Почему каждая игра должна переустанавливать DirectX
Следовательно, каждая игра должна установить точную младшую версию библиотек DirectX, в которой она нуждается. Но если вы уже установили определенную версию библиотеки DirectX один раз, то, конечно, игре не нужно запускать установщик DirectX – правильно?
Неправильно! Для игр нет возможности легко проверить, установлены ли нужные библиотеки DirectX. Как отмечает сайт поддержки Steam, установщик Microsoft DirectX является единственным официально поддерживаемым способом проверки правильности установленных файлов DirectX. Игры запускают установщик DirectX часто в фоновом режиме, который устанавливает все необходимые библиотеки и устраняет любые проблемы в системе.
Конечно, не все игры должны запускать установщик DirectX при первом запуске. Для игр, которые используют OpenGL или Vulkan, а не Direct3D DirectX, его не нужно запускать. Некоторые игры также зависят только от основных версий DirectX, таких как DirectX 11, 10 или 9, и не нужно вызывать установщик DirectX, потому что они не используют ни одну из вспомогательных библиотек.
Если DirectX уже включен в Windows, то почему игры устанавливают его?
Что же, если DirectX уже является частью Windows, то почему игры устанавливают и требуют его? Если кратко, то установка DirectX – это настоящий бардак.
В природе не существует какой-то одной определенной библиотеки DirectX Direct3D, на которую опираются все игры. Игровым разработчикам приходится нацеливаться на определенную версию вспомогательной библиотеки Direct3D. Нельзя просто использовать самые последние библиотеки и надеяться, что игра запуститься. Для примера, если разработчик игры нацелил ее на библиотеку d3ddx10_40.dll, то игра не может использовать библиотеку d3ddx10_41.dll. Ей потребуется 40-я версия и только она.
Вы можете найти эти библиотеки DirectX в своем компьютере по адресу C:\Windows\System32. На 64-битных системах, 64-битные библиотеки расположены по адресу C:\Windows\System32, а 32-битные в C:\Windows\SysWOW64.
Даже если вы запустите самый свежий установщик DirectX, то нет никакой гарантии, что он установит все ранее выпущенные вспомогательные библиотеки DirectX на вашу систему. Майкрософт также решила, что не станет аккумулировать все эти библиотеки Direct3D в самой Windows. Даже библиотеки Direct3D, созданные до выхода операционной системы Windows 10, не были включены в нее. Их нужно устанавливать с приложениями, которые в них нуждаются. Как Майкрософт заметили в документации, предназначенной для разработчиков игр, «Обновления Windows и Сервисные пакеты не предоставляют никаких опциональных компонентов DirectX».
Однако, все еще сложнее, чем кажется. 32-битные игры требуют библиотеки 32-битной разрядности, а 64-битные, соответственно, 64-битной разрядности. Похожая ситуация сложилась и с библиотеками Microsoft Visual Studio C++. Различные приложения полагаются на различные версии библиотек и вам нужно устанавливать их всех.
Какой Directx установить?
Мы плавно перебрались к вытекающему вопросу, какой же версии пакет нужно использовать. Здесь всё крайне индивидуально, так как всё зависит от 3-х основных платформ и, если хоть какая-то не будет поддерживать нужную версию, то ничего работать так и не будет (в плане игры).
Итак, определённую версию DirectX должны поддерживать:
- Видеоадаптер;
- Операционная система;
- Непосредственно приложение.
Сначала определимся какой Directx установлен в вашей системе сейчас. Для этого следует:
Нажмите Win+R и введите dxdiag;
В самом низу вы увидите пункт «Версия DirectX».
Полученная информация не совсем отражает ситуацию. Здесь показана версия, которая на данный момент установлена и её поддерживает система, но это не означает, что данная версия максимальна, а только то, что она была наиболее современной и доступной на момент установки. По мере обновлений как Windows, так и DirectX доступность версий может меняться.
Описание
Под таким лаконичным названием скрывается расширение для панели управления Виндовс — пульт настройки DirectX. Он открывает доступ к ранее закрытым настройкам графики. Сразу же хотим упомянуть, что разработка утилиты не была завершена, хоть и велась компанией Microsoft. Так что часть опций все равно будет недоступной.
Рекомендуем! InstallPack | Стандартный установщик |
Официальный дистрибутив DirectX | |
Тихая установка без диалоговых окон | |
Рекомендации по установке необходимых программ | |
Пакетная установка нескольких программ |
DirectX-for-pc.ru рекомендует InstallPack, с его помощью вы сможете быстро установить программы на компьютер, подробнее на сайте.
DCP существует только на английском языке. Интерфейс состоит из восьми вкладок. Вкратце рассмотрим каждую из них:
- DirectX — заглавное окно утилиты. Здесь содержатся сведения о текущей версии библиотеки (отображается не выше 9) и кнопка вызова информации о ПК DxDiag.
- Direct3D — настройки 3D-графики. Наибольший интерес здесь представляет опция Allow Hardware Acceleration.
Нередко именно ее настройка позволяет решить проблемы с совместимостью.
- DirectDraw — параметры отрисовки. Здесь есть аналогичный тумблер — Use Hardware Acceleration, который тоже окажется полезным. Если нажать Advanced Settings, то отобразится расширенный набор опций.
- DirectInput — установки по части устройств ввода. Здесь ничего интересного нет.
- DirectShow — вкладка, актуальная для разработчиков с режимом отладки.
- DirectSound — звуковые установки. Здесь получится выбрать устройство вывода звука и его захвата (микрофон).
- DirectPlay и DirectMusic — нефункционирующие вкладки.
Архитектура D3D11 Framework[править | править код]
Как я писал – наш фреймворк хранится в виде статической библиотеки.
Условно разобьем нашу библиотеку на системы – Common, Util, Input, Render, Framework.
Система Common – отвечает за общий код, на данный момент там только макросы прописаны, так что ее не рассматриваем отдельно.
Система Util – отвечает за вспомогательный код
Система Input – отвечает за работу с клавиатурой и мышью
Система Render – будет отвечать за работу с экраном
Framework – будет управлять всеми системами.
Эти системы условны – я их выделил, чтобы было удобней объяснять работу кода и чтобы его как-то упорядочить. Компилятор не знает об этих системах, это чисто условность для программиста.
Теперь рассмотрю каждую из систем.
Common и Utilправить | править код
Эти системы будут содержать вспомогательный код фреймворка. На данный момент в Common будут только общие макросы.
В систему Util будет входить класс Log. Этот класс будет вести логирование фреймворка. Задача этого класса – в любой момент выводить сообщение по требованию. Выводить мы будем в файл и в окно консоли, если оно есть. Кроме того, сделаем три типа сообщений – информационное, ошибка, и debug. Первое будет нужно для информирования. Второе используем в случае ошибок. Третье – это тоже что и информационное, но пишется только в debug. Для чего оно? Через него мы будем отслеживать процесс выполнения фреймворка. Почему же нам для этого не использовать первое? Дело в том, что логирование – это издержка выполнения, а запись в файл – это очень большая издержка. Но мы же хотим, чтобы наша система работала быстро… Можно вообще отказаться от лога, но тогда будет сложнее искать ошибки. Так вот – такой способ позволяет отказаться от записи в лог в релизе, когда мы найдем все ошибки. А в дебаге, в котором мы будем разрабатывать наш проект, можно спокойно вести логирование.
Inputправить | править код
Данная система отвечает за работу с клавиатурой и мышью. В системе ввода у нас будут два основных класса – InputListener и InputMgr. Систему ввода можно сделать множеством вариантов. Я решил в ней задействовать паттерн «Слушатель», он же — «Наблюдатель » (англ. ‘Listener’/’Observer’).
Работать это будет так – InputMgr осматривает (точнее получает список событий от Windows) текущее состояние клавиатуры и мыши, и в случае, если было какое-то событие, оповещает всех своих наблюдателей (которые наследуются от InputListener) об этом событии, они же в свою очередь получив оповещение, выполняют определенный код. Сложно? Не волнуйтесь, в коде это намного проще, чем в описании.
То есть когда вы захотите написать обработку ввода, вы должны создать наследника InputListener, полиморфировать нужные методы обработки событий, написать нужное поведение в этих методах и добавить экземпляр вашего наследника InputListener в InputMgr. Все. Дальше фреймворк сам будет думать, когда и как вызвать вашу обработку ошибок.
Данной системой мы еще очень долго не будем пользоваться, я ее написал для ваших опытов.
Renderправить | править код
Отвечает за вывод на экран. Будет состоять из двух классов – Render и Window.
Window – создает обычное окно. Кроме того взаимодействует с InputMgr, оповещая его о событиях клавиатуры и мыши. Также отслеживает другие события связанные с окном (сворачивание, изменение размера и т.д.)
Render – отвечает за рисование в Window.
Конвейер по обработке графики и звука
Справедливости ради стоит отметить, что DirectX действительно оказался прекрасно работающим решением. Это был настоящий Директор, который имел в своем распоряжении:
- оборудование – компьютерное железо, включающее все его ресурсы (CPU, RAM, GPU, звуковую карту);
- технологии – алгоритмы обработки данных;
- материалы – базы данных, библиотеки текстур, готовые эффекты;
- существующую инфраструктуру – действующую ОС;
- аппарат управления и инженерную службу – в лице основного модуля API, обеспечивающего взаимодействие.
Разработчику оставалось дать Директору «Х» четко сформулированное задание и предоставить исходные параметры. Например, в определенной сцене игры должен идти дождь, по небу плыть тучи, освещение пасмурное. А на мокрой дороге требовалось изобразить отражения и брызги. Разрешение экрана VGA, HD, FullHD и такие-то параметры сглаживания. Вот и все. Дальше DirectX сам просчитывал все детали и наносил их на исходный кадр, соответствующий сухой погоде. Видеорядом процесс не ограничивался, и к нему добавлялось соответствующее звуковое сопровождение.
Базовые модули DX
По сути Microsoft бесплатно сделало за разработчиков ту работу, для которой требовались немалые кадровые и финансовые ресурсы. А так, используется слаженное взаимодействие реальных компонентов DirectX, обеспечивающих нужный результат:
- за объемную и двумерную графику соответственно отвечают «3D» и «2D» компоненты;
- с музыкой и звуком работают модули «Sound» и «Music», а «X Instruments» позволяет программировать музыкальные инструменты;
- «Play» необходим для синхронизации объектов сетевых игр;
- обработка команд пользователя, поступающих с контроллеров, мыши или клавиатуры выполняется блоком «Input», а потоковые медиа сигналы обрабатываются «X Media Objects» и транслируются модулем «Show»;
Я преднамеренно сократил обозначения компонентов. Но все их полные наименования включают слово Direct, например «DirectSetup» или «Direct 2D».
Вы можете сказать, ну и что здесь нового, ведь и до появления ДиректХ компьютер мог с помощью графических и звуковых плат обрабатывать медиаконтент. Так-то, оно так. Но только прогресс не стоит на месте. И задача разработчиков ПО и железа постоянно сводилась к тому чтобы успевать предлагать современные решения, поспевая друг за другом.
Вместо разработки ОС проще совершенствовать ее отдельные компоненты. Так DirectX обновлялся почти каждый год. Некоторые его последние версии были просто оптимизацией предыдущих. А другие предоставили совершенно новые возможности, например в 8.0 впервые появилась работа с шейдерами.
Совместимость DirectX и видеокарты – слабое звено любо го ПК
Вполне понятно желание пользователей иметь самый новый DirectX. Но здесь стоит четко понимать, что его разработчики также ориентируются на наиболее актуальные компоненты. Поэтому, чтобы любой Директ Икс работал как положено, он должен поддерживаться тремя «китами»:
- интегрированной или дискретной видеокартой;
- операционной системой;
- устанавливаемым программным обеспечением (игрой);
Новую ОС и вместе с ней медийную API можно установить. Последняя Windows 10 вообще сама предлагает актуальные обновления, среди которых и библиотеки Директ Х. Они так же идут и с играми.
А вот на поддержку DirectX в характеристиках видеокарты никак повлиять нельзя. Можно только уточнить версию, для которой предназначен графический адаптер, посмотрев паспортные характеристики или вызвав «Средство диагностики» с помощью функции «dxdiag» в командной строке. Если вас ситуация не устраивает – видеокарту придется менять.
Я надеюсь что рассказал вам кое-что полезное и заставил по-новому взглянуть на DirectX. Теперь это для вас не просто графическая прослойка между ПК и игрушкой. А неотъемлемый компонент современной операционной системы. Возможно, при покупке или сборке нового компьютера вы уделите ему больше внимания. А пока стоит с огромным уважением относиться к выполняемой им работе.
На этом я говорю вам: «До новых встреч!» и желаю удачи.
Как заставить игру X использовать DirectX версии Y?
Только если в настройках игры версию можно переключить. Например, смену поддерживает GTA V. В ней доступно аж три варианта рендера DirectX: 10, 10.1 и 11.
Другим способом переключить версию, если игрой это не предусмотрено, никак нельзя. Сами подумайте — разработчики писали код игры, используя команды под определённую версию. Просто так взять и заменить команды на другие невозможно.
Поддерживать 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, пробуйте установить тот самый инсталлятор. Авось поможет.
Список ошибок DirectX, исправляемые с помощью этого установщика 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 — загрузка полного комплекта обновлений
Судя по датам, на момент написания этой записи обновления компонентов 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*. Так что попробовать установить можно.
Поддерживаемые Windows версии DirectX
Итак, ниже представлен перечень версий Windows и их максимально доступные для использования пакеты DirectX:
- Windows XP SP2 — DirectX 9.0c;
- Windows 7 и 8 – DirectX 11.1;
- Windows 8.1. — DirectX 11.2
- Windows 10 — максимальная на данный момент версия DirectX
Также все более новые версии содержат встроенные и оптимизированные функции менее свежих обновлений и даже версий. Так в версию 12 входят все более старые от 9.0с до 11.2.
Соответственно, выше головы не прыгнешь, для поддержки самой новой версии, придется менять ОС. Особенно часто Directx для Windows 7 64 bit используется 11 версии, но можно обновить до 11.1, вам стоит проверить данную информацию, так как из-за этого может пропасть поддержка современных игр.
Что делать, если у меня возникли проблемы с DirectX?
Если вы видите ошибку с сообщением, относящимся к DirectX, во время запуска или установки игры, то, возможно, что-то не так с установщиком DirectX, который был приложен с устанавливаемой игрой. Вы не можете просто пойти и скачать установщик DirectX с сайта Майкрософт, так как вам нужно запустить установщик, который требуется самой игре.
Вы можете попробовать пройти в директорию с игрой в вашей системе или на диске с установщиком игры, найти там установщик DirectX, который зачастую называется DXSETUP.exe, и запустить непосредственно его, не устанавливая игру, чтобы решить возникшую проблему.
Также вы можете получить больше информации о том, как решить проблему, выполнив поисковый запрос на имя игры или приложения и сообщения, указанного в ошибке DirectX.
8