Obs directx 12 как включить
Предлагаем в этой статье разобраться, что нужно знать обычному пользователю ПК о приложении DirectX.
Для обычного игрока разработка компьютерных программ может показаться сложным и длительным процессом. И это действительно так. Например, каждая модель консолей (Xbox, PlayStation, Nintendo) содержит в себе один конкретный процессор, видеокарту, встроенную память, слоты ввода и другие аппаратные компоненты. Поэтому для них не требуется дополнительное ПО.
В то же время разработчики компьютерных игр сталкиваются с большим изобилием аппаратных конфигураций. Как следствие, возникает необходимость в приложении, способном заставить весь этот “зоопарк” работать слаженно и без ошибок.
Что такое DirectX в Windows 10
Простыми словами, DirectX это программное обеспечение, взаимодействующее с аппаратными компонентами ПК. Оно участвует в вычислительных процессах, связанных с рендерингом 2D и 3D графики, рендеринге видео и воспроизведении звука на платформе Windows.
Комментарий NVIDIA: Основное внимание DirectX 12 направлено на значительное увеличение качества графики за счет снижения нагрузки на центральный процессор.
Приложение яростно соперничает с OpenGL, другим графически ориентированным софтом, представленным в 1992 году. Он представляется с открытым исходным кодом и находится в непрерывной разработке технологического консорциума Khronos Group. И хотя OpenGL является кросс-платформенным API, он вряд ли когда-либо станет конкурентом для DirectX в Windows.
Преимущества DirectX 12
Вплоть до выхода DirectX 12, недостатком программы было отсутствие низкоуровневого доступа к аппаратным компонентам компьютера. Для решения этой проблемы AMD выпустили свой собственный пакет, под названием Mantle API. Это помогло оптимизировать работу старых версий DirectX с аппаратурой AMD. Тем не менее, данный софт никак не повлиял на владельцев видеокарт NVIDIA.
Исторически сложилось так, что драйверы и программное обеспечение ОС управляли памятью и другими ресурсами ПК отдельно от имени их разработчиков. Однако это было неэффективно. Низкая производительность связана в первую очередь с тем, что данный алгоритм не мог проанализировать потребности активной программы. DirectX 12 в свою очередь помогает приложениям напрямую управлять ресурсами компьютера и выполнять синхронизацией аппаратуры. В результате разработчики игр могут наладить эффективную работу GPU относительно других компонентов.
Дополнительной особенностью DirectX 12 является функция распределения нагрузки между ядрами центрального процессора. Если раньше, в DirectX 11, “отдуваться за всех” могло лишь одно ядро, то теперь задействованы все элементы ЦП.
Частые вопросы о DirectX
Как определить версию DirectX
Часто на DirectX не обращают такого же внимания, как оно уделяется версии драйвера видеокарты или любого другого устройства. Это вполне естественно. И по этой причине многие пользователи не знают какая версия программного обеспечения у них установлена. К счастью, уточнить ее довольно легко.
1. Воспользуйтесь комбинацией клавиш Windows + R и откройте утилиту Выполнить .
Компьютерная графика — обширная и быстроразвивающаяся дисциплина. С каждым годом интерфейсы прикладного программирования становятся более гибкими, что позволяет на их основе реализовывать более сложные алгоритмы формирования и обработки изображений. Однако возможности интерактивной графики не достигли уровня пакетов 3d-моделирования и визуализации. Все это подталкивает к активным исследованиям в данной области.
DirectX 12 — компонент интерфейса программирования высокопроизводительной графики. Основные цели нового интерфейса — снижение CPU-оверхеда драйвера, понижение уровня абстрагирования оборудования, возможность объединения графических карт на уровне API (до этого существовали только vender-specific решения CrossFireX, NVIDIA SLI). Официально выпущен Microsoft в июле 2015.
Статья рассчитана на тех, кто уже работал с графическими библиотеками (OpenGL, DirectX 11). Однако для людей, которые планирует начать изучение графики именно с 12 версии возможно тоже будет полезной.
В ней мы рассмотрим следующие темы:
- Окружение
- Краткое описание графического пайплайна
- Новые возможности DirectX 12
- Состояния
- Команды
- Синхронизация
- Прикрепление ресурсов
Окружение
DirectX 12 является частью Windows SDK в Windows 10. В качестве IDE используем Visual Studio, язык программирования C++. Для работы с DirectX, необходимо подключить хедеры d3d12.h dxgi1_6.h и библиотеки d3d12.lib, dxguid.lib, dxgi.lib, d3dcompiler.lib. Все это лежит в стандартных каталогах Windows SDK. Так же распространяется "D3D12 Helper Library" в виде одного заголовочного файла d3dx12.h, она позволяет сократить количество boilerplate кода. Его можно просто скачать по адресу d3dx12.h и вложить в проект.
Краткое описание графического пайплайна
В основе графической библиотеки лежат функции рисования, которые запускают графический конвейер — программно-аппаратное средство визуализации трехмерной графики. Аппаратная составляющая представлена видеоадаптером, программная — драйвером. Графический конвейер можно представить в виде черного ящика, разделенного на этапы и выполняющего необходимые преобразования. Содержимое этого черного ящика может быть различным. Выполняемые преобразования зависят от назначения графической системы, стоимости, требуемого уровня универсальности и многих других факторов. Также, конкретный видеоадаптер — сложный механизм, правила работы которого зачастую известны лишь непосредственно производителю.
Итак, на сегодняшний день процесс визуализации трехмерной сцены выглядит в общих чертах следующим образом.
Преобразование вершин
Каждая вершина имеет определенный набор атрибутов таких, как позиция, цвет, текстурные координаты, вектор нормали или все векторы из касательного пространства и, возможно, некоторые другие. Трансформация вершин — это первая стадия графического конвейера. На этом этапе входными данными являются атрибуты конкретной вершины, над которыми производятся математические преобразования. Эти операции включают трансформацию позиции вершины, генерацию и преобразование текстурных координат, расчет освещения для каждой отдельной вершины, а также любые другие операции, которые необходимо выполнить на уровне вершин. Каждая вершина обрабатывается параллельно с другими вершинами на доступных ядрах графического ускорителя. Основной результат вершинной программы — преобразовать координаты из модельного пространства в специальное пространство отсечения (clip space).
Построение примитивов и растеризация
Текстурирование и окрашивание
Над атрибутами примитивов, растеризированных в набор фрагментов, на этой стадии проводится необходимая интерполяция, а также последовательность математических преобразований и операций текстурирования, что определяет конечный цвет каждого фрагмента. Также на этом этапе может определяться новая глубина или даже исключение фрагмента из буфера кадра.
Пофрагментные операции
На этом этапе проводится ряд пофрагментных тестов, таких как тест отсечения (scissor test), тест трафарета (stencil test) и тест глубины (depth test). Эти тесты определяют конечный вид, цвет и глубину фрагмента перед обновлением экранного буфера. Если какой-либо тест проходит с ошибкой, то фрагмент не обновляется. После тестов выполняется операция смешивания, которая комбинирует финальный цвет фрагмента с текущим цветом пиксела, а итоговый результат записывается в экранный буфер. Операция смешивания выполняется на этом этапе, поскольку стадия текстурирования и окрашивания не имеют доступа к экранному буферу.
Более детальное устройство конвейера можно посмотреть в спецификации DirectX 11 (документ по DiretcX 12 затрагивает лишь изменения с предыдущей версией)
Новые возможности DirectX 12
Мы переходим от теоретической части непосредственно к описанию конкретных возможностей DirectX 12.
Состояния
В 11 версии программистам известны различные функции изменения состояний графического ускорителя: RSSetState(), OMSetDepthStencilState(), OMSetBlendState(). Оказалось, что такой подход плохо ложится на оборудование. В конечном итоге драйвер устанавливает адаптеру одно монолитное состояние, а отдельные вызовы или некоторые комбинации состояний могли приводить к непредсказуемым задержкам со стороны драйвера. В новой версии инженеры переосмыслили этот подход и исключили атомарное изменений состояний, теперь они объединены в одно — PSO (Pipeline State Object). Такое нововведение кажется более удобным со стороны пользователя: теперь не нужно беспокоиться о "висячих состояниях", которые остались с прошлых проходов. Более того, для лучшей эффективности установки, теперь дополнительно требуется передавать информацию о всех прикрепленных ресурсах в шейдер через Root Signature (об этом ниже).
Команды
Таким образом, реализация двойной и тройной буферизаций теперь выглядит более явно: создаются соответствующее количество command list, как только они заполнены, CPU переходит в режим ожидания свободного листа.
Здесь же стоит упомянуть о ресурсах, которые прикреплены к конкретному командному листу. Теперь удаление ресурса, использующегося на GPU, ведет к непредсказуемым последствиям. Например, раньше легально было выполнить Release() для текстуры которая еще используются — драйвер автоматически отследит, когда ресурс перестанет использоваться и только после этого удалит его.
Синхронизация
Для возможности отслеживания работы GPU, DirectX 12 предоставляет концепцию fence, которая инкапсулирована объектом ID3D12Fence интерфейсом. Fence — это целое число, которое представляет выполненную работу GPU на текущий момент. Сначала происходит эмитинг следующего «свободного» значения, вызывая ID3D12CommandQueue::Signal() в командной очереди. Затем с помощью ID3D12Fence::SetEventOnCompletion(UINT64 Value, HANDLE hEvent) происходит ассоциирование значения с примитивом winapi event. Теперь поток с помощью WaitForSingleObject() над подготовленным event-ом может приостановить выполнение до момента выполнения всей работы, предшествующий контрольному значению. Как только вся работа на GPU выполнится, значение в fence обновится, вызов WaitForSingleObject() разблокируется и поток продолжит выполнение.
Прикрепление ресурсов
Биндинг ресурсов в шейдер — одна из самых запутанных тем современного DirectX.
Обзор
В DirectX 11 использовалась следующая модель биндинга: каждый ресурс устанавливался в шейдер соответствующим вызовом API. Например, для установки двух текстур (если не задумываться о семплерах) в 5 и 6 слоты пиксельного шейдера применялся следующий код:
Где GetShaderResourceView() возвращает указатель на объект типа ID3D11ShaderResourceView.
В шейдере затем текстуры использовались так:
Такая система достаточно удобная со стороны программиста, но с точки зрения графического ускорителя нет. Допустим, нам необходимо прикрепить текстуру на чтение в шейдере. Как должна быть передана информация о текстуре? Если мы заглянем в документацию GCN ISA, найдем следующий параграф:
Дескрипторы
Сейчас ресурсы не прикрепляются в графический пайплайн прямо через вызовы методов, прикрепление происходит опосредовано через дескрипторы. Дескриптор — небольшой кусочек памяти, который содержит информацию о ресурсе (GPU виртуальный адрес, и, например, количество мипов, формат). Множество дескрипторов хранятся в дескрипторной куче — это просто массив дескрипторов фиксированного размера. Дескрипторные кучи могут содержать информацию о разных типах ресурсов:
- Constant buffer views (CBVs)
- Unordered access views (UAVs)
- Shader resource views (SRVs)
- Samplers
CBVs, UAVs, SRVs могут содержаться в одной дескрипторной куче, а описания семплеров — в отдельной. Это разделение выражает тот факт, что семплеры в ускорителе обрабатываются отдельно.
Выше мы упомянули так называемые shader visible ресурсы. Соответственно, существуют non shader visible ресурсы:
- Render Target Views (RTVs)
- Depth Stencil Views (DSVs)
- Stream Output Views (SOVs)
Такие views ресурсов предназначаются только для прикрепления ресурса в пайплан (но не для использования в шейдере), и поэтому их нужно создавать в отдельной non shader visible дескрипторной куче (это задается флагом D3D12_DESCRIPTOR_HEAP_FLAGS::D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE при создании кучи).
Есть еще одна группа view's, для которых дескрипторы (и, соответственно, дескрипторная куча) не требуются:
- Index Buffer View (IBV)
- Vertex Buffer View (VBV)
Представлены типами D3D12_INDEX_BUFFER_VIEW и D3D12_VERTEX_BUFFER_VIEW соответственно. То есть описания индексных и вершинных буферов содержатся в указанных выше структурах и затем передаются напрямую в Pipeline State Object. Вся память в PSO автоматически версионируется драйвером.
Таким образом, теперь вместо создания множества объектов типа ID3D11. View, мы создаем дескрипторы в дескрипторной куче.
Root signature
Root signature — объект DirectX 12 API который задает соответствие лэйаута дескрипторов и данных в слоты шейдера. Это, в некотором смысле, действительно сигнатура шейдера только с точки зрения использования ресурсов. Root signature не содержит конкретных дескрипторов и данных, она лишь задает лэйаут (устройство) дескрипторов, которые биндятся уже позднее на этапе рендеринга.
Root signature состоит из массив записей, которые называются root parameter. Действительные данные root parameter устанавливаются в рантайме и называются root arguments. Меняя root argument, меняются данные которые читает шейдер. Root parameter бывают трех типов:
- Root constants (1 DWORD == 32bit value)
- Inline descriptors (так как 64-bit GPU virtual addresses, стоит 2 DWORDs каждый)
- Таблица дескрипторов (1 DWORD)
Максимальный размер root signature — 64 DWORDs. Типы отсортированы по возрастанию уровня косвенности доступа ресурса в шейдере, но по убыванию возможностей.
Root constant это встроенное в root signature 32-битное значение, которое используется в шейдере как constant buffer. Предназначается для наиболее активно изменяющихся констант (например, MVP матрицы), но имеет жесткие ограничения на максимальный размер (всего поместится 4 матрицы). Так же такие данные доступны в шейдере с нулевым уровнем косвенности, и имеют более быстрый доступ чем все остальные способы. Полностью версионируются драйвером: их можно "установить и забыть".
Приложение может поместить дескрипторы напрямую в root signature во избежании хранения дескрипторов в куче дескрипторов — это второй способ inline descriptors. Пример таких данных — константа per object. Таким образом, не нужно беспокоиться о свободном месте в куче дескрипторов. Имеет первый уровень косвенности. Версионируется сам дескриптор (то есть описание ресурса), но ресурс который описывает этот дескриптор должен быть доступен до завершения его использования на GPU. Установка конкретных данных производится, например, методом ID3D12GraphicsCommandList::SetGraphicsRootConstantBufferView, в него передается индекс root parameter нашего inline descriptor и виртуальный адрес буфера.
Мы подошли к третьему, основному и универсальному способу прикрепления ресурсов. Таблица дескрипторов содержит массив descriptor range. Descriptor range — описание непрерывной цепочки дескрипторов определенного типа. Описание одной записи в таблицы дескрипторов проще показать кодом:
Видим, что RangeType — указывает тип дескриптора, NumDescriptors — количество, BaseShaderRegister — номер регистра внутри шейдера. Остальные параметры служат для расширенной настройки и пока не будем их рассматривать. В рантайме дескрипторы устанавливаются методом ID3D12GraphicsCommandList::SetGraphicsRootDescriptorTable, в него передается индекс root parameter нашей таблицы дескрипторов и первый дескриптор. Все дескрипторы, указанные в описании таблицы дескрипторов, подхватываются автоматически. Из этого следует, что они должны располагаться непрерывно друг за другом в descriptor heap.
Заключение
Мы рассмотрели некоторые возможности DirectX 12. Если вам интересная данная тема или любая другая из области компьютерной графики, отписывайтесь в комментариях.
Что такое DirectX 12
DirectX 12 (DX12 или Директ Икс 12) – версия утилиты, разработанная специально для ОС Windows 10, которая способна задействовать мощность вашего компьютера в полную силу. Благодаря улучшению производительности мультимедийных задач, пользователь наблюдает качество компьютерных игр так, как и было задумано разработчиком: быстрая смена кадров, реалистичные визуальные эффекты, классный звук, впечатляющая графика, в том числе в 3D.
DX12 революционно отличается от всех предыдущих версий DirectX. Последняя версия утилиты ускоряет работу процессора даже в режиме многозадачности. Рендеринг работает без зависаний с такой частотой смены кадров, что воссоздается полное ощущение реальности при должной прорисовке картинки. За этим стоят 2 возможности DX12, которых раньше не было. Многопоточность при записи команд в буфер, а также асинхронные шейдеры помогают видеокарте одновременно работать над командами GPGPU и инструкциями рендеринга.
В DX12 также добавлена технология Tiled Resources. Со слов производителя, она дает «беспрецедентную детализацию», так как будет подгружать текстуры для рендеринга только в тот момент, когда взгляд игрока будет направлен в их сторону. Это разгрузит память и поддержит производительность на высокой скорости. Ощущение реальности пространства добавит трассировка лучей в реальном времени, которая визуализирует угол падения освещения.
Как определить текущую версию DirectX.
Узнать, какая версия DX используется сейчас ОС Windows 10, поможет инструмент DxDiag. Он раскроет всю нужную информацию о драйверах и компонентах, доступных для пользования. Для этого нужно:
Для более ранних версий Windows принцип действий схож.
Как установить софт
Если у вас установлено автоматическое обновление Windows, а программная платформа NET Framework работает корректно, то у вас все компоненты DirectX уже установлены, а следующие обновления версий будут происходить автоматически. Если в вашей ситуации необходимо установить вручную DX12, то сделать это можно по следующей схеме:
- Для 32 или 64 разрядной ОС Windows 10 скачиваем программное оборудование по ссылке на официальном сайте Microsoft:
- Нажимаем кнопку «Загрузки» в правом верхнем углу страницы браузера;
- Для запуска установки компонентов программы открываем файл «dxwebsetup.exe»;
- Во время установки действуем по запросам диалогового окна: соглашаемся с пользовательскими условиями и продолжаем установку кнопкой «Далее»;
- Приложение или устанавливается с нуля, или обновляет текущую версию.
При установке может загрузится более старая версия, чем DirectX 12. Это говорит о том, что модули вашего ПК не поддерживают обновления утилиты. Если ваша цель конкретно DX12, то вам придется поменять процессор и видеокарту на более мощные.
Почему на компьютере может быть по-прежнему версия DirectX 11 или 10, несмотря на обновления
Интерфейс прикладного программирования (application programming interface или API) обеспечивает прямой доступ мультимедийных приложений к необходимому им оборудованию, чем ускоряет сам процесс игры. Сегодня этот API от Microsoft доминирует в мире компьютерных видеоигр для Windows, а разработчики учитывают ресурсы DX12 при разработке своих игр. О популярности утилиты говорит сотрудничество с Microsoft крупнейших производителей видеокарт, например, Nvidia и AMD. Также параметры своих процессоров под требования нового API подгоняют такие гиганты видеографики как Intel и Qualcomm.
Windows 10 с DirectX 12 используется для работы многих гаджетов: стационарные компьютеры, ноутбуки, планшеты, а также смартфоны. С этой утилитой работает и геймпад Xbox One. Но если на вашем ПК стоит оборудование, не подходящее под требования новых компонентов Майкрософтского API, то установить DX12 не удастся, у вас по-прежнему будет более старая версия. Проверьте, подходит ли ваш процессор и видеокарта под стандарты нового DX12:
Поддерживаемые графические процессоры
- Core i3, i5, i7;
- Haswell;
- Broadwell;
- Skylake;
- Kaby Lake;
- Coffee Lake;
- Cannon Lake.
Все мобильные процессоры Qualcomm.
Совместимость с видеокартами
- Radeon: HD 7000, 7000M, 8000, 8000M, R5 M240, R7 M200, R7, R9, RX 460-580, Vega Frontier Edition, RX Vega 56 и 64;
- Ryzen: 2000G, 2000G PRO, а также мобильный Ryzen Mobile 1000, 1000 PRO, 2000, 2000 PRO;
- Kaveri и Godavari: A4, A6, A6 PRO, A8, A8 PRO, A10, A10 PRO;
- Mullins: E1, A4, A10 из серии Micro-6000;
- Beema: E1, E2, A4, A6, A8.
Если в этом списке не оказалось вашей модели процессора и видеокарты – не отчаивайтесь. Попробуйте поискать информацию о совместимости на сайте разработчика вашего оборудования. Представленный список не исчерпывающий и приводит только самые распространенные модели.
Как удалить DX12
Если при запуске игр или других приложений, обслуживанием которых занимается DirectX, возникает ошибка, то виной всему скорее всего служит повреждение библиотеки. Обычно обновление программного обеспечения решает эту проблему. Но если обновление не дало результата, приходится применять более радикальный путь – удаление и новая установка.
С каждым годом набор компонентов API от Майкрософт увеличивается, ровно как и количество мультимедийных приложений. Чтобы пользователь нечаянно не нарушил стройную работу Windows, DirectX устанавливается вместе с операционной системой. Поэтому удалить DX12 с компьютера обычным способом через панель управления «Удалить или изменить программу» нельзя. Но есть и другой вариант.
- Для начала создайте точку восстановления. Если что-то пойдет не так, всегда можно вернуться к первоначальной версии.
- Скачиваем веб-установщик библиотек DirectX. Обращаем ваше внимание, что во время инсталляции будет установлена последняя поддерживаемая вашим оборудованием версия. Она включает все компоненты предыдущих вариаций, так что игры, требующие более старых изданий DX, будут работать.
- Скачиваем программу-деинсталлятор для DX. Например, DirectX Eradictor, DirectX Killer или DirectX Happy Uninstall.
- Отключаем Интернет, чтобы система не запустила автоматическое обновление.
- Удаляем компоненты API с помощью деинсталлятора, после чего обязательно перезапускаем систему.
- Устанавливаем ранее скаченный файл «dxwebsetup.exe» и еще раз перезагружаем компьютер.
После манипуляций по этой схеме проблемы с запуском игр должны решиться. Если ничего не изменилось, то возможно нужная игра требует более высокую версию DX, чем может потянуть ваш компьютер. О требованиях приложения можно почитать в магазине для скачки ПО в разделе «Описание».
Ели вы настоящий ценитель качественных игр, то без DX12 не обойтись. Разработчики Майкрософт постарались и совершили реальный прорыв, открыв для создателей игр новые возможности. Установив последнюю версию DX12, вы почувствуете существенную разницу в прорисовке деталей и качестве визуальных эффектов даже на одном и том же оборудовании.
Что такое DirectX 12
DirectX 12 (DX12 или Директ Икс 12) – версия утилиты, разработанная специально для ОС Windows 10, которая способна задействовать мощность вашего компьютера в полную силу. Благодаря улучшению производительности мультимедийных задач, пользователь наблюдает качество компьютерных игр так, как и было задумано разработчиком: быстрая смена кадров, реалистичные визуальные эффекты, классный звук, впечатляющая графика, в том числе в 3D.
DX12 революционно отличается от всех предыдущих версий DirectX. Последняя версия утилиты ускоряет работу процессора даже в режиме многозадачности. Рендеринг работает без зависаний с такой частотой смены кадров, что воссоздается полное ощущение реальности при должной прорисовке картинки. За этим стоят 2 возможности DX12, которых раньше не было. Многопоточность при записи команд в буфер, а также асинхронные шейдеры помогают видеокарте одновременно работать над командами GPGPU и инструкциями рендеринга.
В DX12 также добавлена технология Tiled Resources. Со слов производителя, она дает «беспрецедентную детализацию», так как будет подгружать текстуры для рендеринга только в тот момент, когда взгляд игрока будет направлен в их сторону. Это разгрузит память и поддержит производительность на высокой скорости. Ощущение реальности пространства добавит трассировка лучей в реальном времени, которая визуализирует угол падения освещения.
Как определить текущую версию DirectX.
Узнать, какая версия DX используется сейчас ОС Windows 10, поможет инструмент DxDiag. Он раскроет всю нужную информацию о драйверах и компонентах, доступных для пользования. Для этого нужно:
Для более ранних версий Windows принцип действий схож.
Как установить софт
Если у вас установлено автоматическое обновление Windows, а программная платформа NET Framework работает корректно, то у вас все компоненты DirectX уже установлены, а следующие обновления версий будут происходить автоматически. Если в вашей ситуации необходимо установить вручную DX12, то сделать это можно по следующей схеме:
- Для 32 или 64 разрядной ОС Windows 10 скачиваем программное оборудование по ссылке на официальном сайте Microsoft:
- Нажимаем кнопку «Загрузки» в правом верхнем углу страницы браузера;
- Для запуска установки компонентов программы открываем файл «dxwebsetup.exe»;
- Во время установки действуем по запросам диалогового окна: соглашаемся с пользовательскими условиями и продолжаем установку кнопкой «Далее»;
- Приложение или устанавливается с нуля, или обновляет текущую версию.
При установке может загрузится более старая версия, чем DirectX 12. Это говорит о том, что модули вашего ПК не поддерживают обновления утилиты. Если ваша цель конкретно DX12, то вам придется поменять процессор и видеокарту на более мощные.
Почему на компьютере может быть по-прежнему версия DirectX 11 или 10, несмотря на обновления
Интерфейс прикладного программирования (application programming interface или API) обеспечивает прямой доступ мультимедийных приложений к необходимому им оборудованию, чем ускоряет сам процесс игры. Сегодня этот API от Microsoft доминирует в мире компьютерных видеоигр для Windows, а разработчики учитывают ресурсы DX12 при разработке своих игр. О популярности утилиты говорит сотрудничество с Microsoft крупнейших производителей видеокарт, например, Nvidia и AMD. Также параметры своих процессоров под требования нового API подгоняют такие гиганты видеографики как Intel и Qualcomm.
Windows 10 с DirectX 12 используется для работы многих гаджетов: стационарные компьютеры, ноутбуки, планшеты, а также смартфоны. С этой утилитой работает и геймпад Xbox One. Но если на вашем ПК стоит оборудование, не подходящее под требования новых компонентов Майкрософтского API, то установить DX12 не удастся, у вас по-прежнему будет более старая версия. Проверьте, подходит ли ваш процессор и видеокарта под стандарты нового DX12:
Поддерживаемые графические процессоры
- Core i3, i5, i7;
- Haswell;
- Broadwell;
- Skylake;
- Kaby Lake;
- Coffee Lake;
- Cannon Lake.
Все мобильные процессоры Qualcomm.
Совместимость с видеокартами
- Radeon: HD 7000, 7000M, 8000, 8000M, R5 M240, R7 M200, R7, R9, RX 460-580, Vega Frontier Edition, RX Vega 56 и 64;
- Ryzen: 2000G, 2000G PRO, а также мобильный Ryzen Mobile 1000, 1000 PRO, 2000, 2000 PRO;
- Kaveri и Godavari: A4, A6, A6 PRO, A8, A8 PRO, A10, A10 PRO;
- Mullins: E1, A4, A10 из серии Micro-6000;
- Beema: E1, E2, A4, A6, A8.
Если в этом списке не оказалось вашей модели процессора и видеокарты – не отчаивайтесь. Попробуйте поискать информацию о совместимости на сайте разработчика вашего оборудования. Представленный список не исчерпывающий и приводит только самые распространенные модели.
Как удалить DX12
Если при запуске игр или других приложений, обслуживанием которых занимается DirectX, возникает ошибка, то виной всему скорее всего служит повреждение библиотеки. Обычно обновление программного обеспечения решает эту проблему. Но если обновление не дало результата, приходится применять более радикальный путь – удаление и новая установка.
С каждым годом набор компонентов API от Майкрософт увеличивается, ровно как и количество мультимедийных приложений. Чтобы пользователь нечаянно не нарушил стройную работу Windows, DirectX устанавливается вместе с операционной системой. Поэтому удалить DX12 с компьютера обычным способом через панель управления «Удалить или изменить программу» нельзя. Но есть и другой вариант.
- Для начала создайте точку восстановления. Если что-то пойдет не так, всегда можно вернуться к первоначальной версии.
- Скачиваем веб-установщик библиотек DirectX. Обращаем ваше внимание, что во время инсталляции будет установлена последняя поддерживаемая вашим оборудованием версия. Она включает все компоненты предыдущих вариаций, так что игры, требующие более старых изданий DX, будут работать.
- Скачиваем программу-деинсталлятор для DX. Например, DirectX Eradictor, DirectX Killer или DirectX Happy Uninstall.
- Отключаем Интернет, чтобы система не запустила автоматическое обновление.
- Удаляем компоненты API с помощью деинсталлятора, после чего обязательно перезапускаем систему.
- Устанавливаем ранее скаченный файл «dxwebsetup.exe» и еще раз перезагружаем компьютер.
После манипуляций по этой схеме проблемы с запуском игр должны решиться. Если ничего не изменилось, то возможно нужная игра требует более высокую версию DX, чем может потянуть ваш компьютер. О требованиях приложения можно почитать в магазине для скачки ПО в разделе «Описание».
Ели вы настоящий ценитель качественных игр, то без DX12 не обойтись. Разработчики Майкрософт постарались и совершили реальный прорыв, открыв для создателей игр новые возможности. Установив последнюю версию DX12, вы почувствуете существенную разницу в прорисовке деталей и качестве визуальных эффектов даже на одном и том же оборудовании.
Читайте также: