DirectX 12 или Vulkan — что лучше в играх?

Многие современные игры при запуске в Windows предлагают выбор между двумя графическими API — DirectX 12 или Vulkan, что может вызвать у пользователей вопрос: что лучше выбрать.
В этой статье подробно об отличиях Vulkan от DirectX и о том, какие преимущества и недостатки можно получить при выборе каждой из опций для запуска вашей игры.
Что такое DirectX и Vulkan
И DirectX и Vulkan представляют собой API для взаимодействия программы, а в текущем контексте — игры, с оборудованием вашего компьютера. В то время как Vulkan — API только для графики, DirectX — набор различных API, но при выборе между ним и Vulkan в играх обычно подразумевается лишь графическая часть — Direct3D.
Оба предназначены для того, чтобы облегчить разработку игр независимо от конкретного графического оборудования пользователя, обеспечив при этом максимально высокую производительность в играх. И тот и другой графический API может работать с видеокартами AMD, NVIDIA и другими.
В то время как DirectX — разработка Microsoft и используется лишь в операционных системах этой компании, начиная с Windows 10, Vulkan может быть использован в Windows, MacOS, Linux, Android и других операционных системах.
Что выбрать — Vulkan или DirectX 12

Многие современные игры позволяют использовать как Vulkan, так и DirectX в качестве графического API. Четкого ответа на вопрос какой из этих API лучше нет, но:
- Большинство тестов показывают более высокую частоту кадров (FPS) в играх при выборе Vulkan, за счет того, что для работы этого API требуется меньше ресурсов компьютера, а также лучше реализована работа на многоядерных процессорах. Однако это может зависеть от конкретной игры и оборудования компьютера пользователя.
- Есть мнение, что выбор DirectX 12 в Windows позволяет добиться более стабильной работы игры, в некоторых случаях — избежать сбоев.
- Выбор Vulkan часто позволяет снизить нагрузку на процессор, то есть в этом плане может оказаться более эффективным.
- Визуальных отличий в картинке при одинаковых настройках графики в игре при использовании Vulkan и DirectX обычно нет.
- Работа игры при выборе того или иного API может зависеть от конкретной игры и от того, насколько успешно разработчики реализовали работу с Vulkan и/или DirectX.
Единственно верного ответа на вопрос «Что выбрать — Vulkan или DirectX 12» нет. Многочисленные тесты в сети и опыт пользователей показывают, что производительность в каждом из вариантов выбора будет зависеть:
- От самой игры.
- От настроек графики в игре.
- От графического оборудования и поколения видеокарты: например, большинство тестов показывают, что для современных видеокарт NVIDIA предпочтителен Vulkan, а для AMD обычно более быстрым оказывается DirectX 12
- В некоторых случаях — от других характеристик компьютера, таких как производительность процессора.
Подводя итог, оптимальный вариант — проверить работу и DirectX, и Vulkan, переключив API в настройках игры, после чего сделать вывод, какой из вариантов оказался предпочтительным в вашем случае, либо оставить параметры по умолчанию, если при их использовании у вас и без того нет каких-либо проблем с производительностью в игре.
DirectX 11 против DirectX 12: в чем различия и какой использовать?
![]()
DirectX 12 был выпущен вместе с Windows 10 в 2015 году. С его выходом компания Microsoft открыла новую эру для геймеров и разработчиков игр. Способный снизить нагрузку на CPU и повысить производительность GPU, DirectX 12 быстро завоевал себе имя.
Однако действительно ли повышение производительности так просто, как переход с DirectX 11 на DirectX 12? Давайте выясним это, рассмотрев различия между DirectX 11 и 12.
Что представляет собой DirectX от Microsoft?
![]()
DirectX — это набор API, используемых для обработки задач, связанных с мультимедиа. Сюда входит программирование игр на платформах Microsoft, таких как Windows и Xbox. Чтобы представить некоторый контекст, давайте вкратце поговорим об API.
Интерфейс прикладного программирования (API) позволяет двум или более компьютерным программам общаться друг с другом. Подумайте об этом как о телефоне. Если ваша мама отправит вам сообщение со списком продуктов, ваш телефон получит эти данные и отобразит их для вас. По сути, это и есть API.

В чем разница между DirectX 11 и DirectX 12?
![]()
Итак, каковы различия между DirectX 11 и DirectX 12? Проще говоря, DirectX 12 — это последняя версия DirectX. Одно из самых заметных различий между этими двумя версиями заключается в том, как они взаимодействуют с вашим оборудованием. Большинство игр, разработанных с использованием DirectX 11, задействуют от двух до четырех ядер процессора. Одно из этих ядер обычно предназначено для того, чтобы сообщать графическому процессору, что делать.
Затем игра использует оставшиеся ядра для обработки различных параметров, требующих большого количества мощностей CPU, например, движения объектов или расстояния прорисовки. С другой стороны, DirectX 12 распределяет нагрузку на CPU между несколькими ядрами, а также позволяет каждому ядру одновременно общаться с GPU.
DirectX 12 также поставляется с некоторыми причудливыми фичами. К ним относятся асинхронные вычисления и объекты состояния конвейера (PSO). Асинхронные вычисления повышают эффективность использования GPU, позволяя нескольким рабочим нагрузкам работать параллельно. Это, по сути, раскрывает весь потенциал вашего GPU.
Представьте официанта в ресторане. Когда официант принимает заказ, он сначала спрашивает, что бы вы хотели выпить. После того как вам принесут напитки, он спросит, что бы вы хотели получить в качестве основного блюда. Ваш заказ выполняется поэтапно. Официант не спросит вас, что бы вы хотели на десерт, пока вы не съели основное блюдо. Хотя это и эффективно, но не так эффективно, как могло бы быть.
При вычислениях каждая из задач официанта будет выполняться отдельным ресурсом GPU. Пока вы не получите свой напиток, ресурсы GPU, необходимые для принятия заказа на основное блюдо, будут простаивать. С асинхронными вычислениями DirectX 12 официант сможет принимать ваш заказ одновременно, как в сети ресторанов быстрого питания. Это позволяет максимально эффективно использовать GPU и повышает производительность в играх.
В DirectX 12 также появились PSO. В DirectX 11, когда геометрия игры передается на GPU для рендеринга, различные аппаратные настройки отвечают за интерпретацию и рендеринг этих данных. Это называется графическим конвейером и представляет собой поток входных и выходных данных, который происходит во время рендеринга кадров на GPU. Однако графический конвейер DirectX 11 не идеален.
Этот конвейер содержит набор различных состояний, включая состояние растеризации, состояние наложения, состояние трафарета глубины и другие компоненты. В DirectX 11 между этими различными состояниями существуют зависимости. В результате одно состояние не может быть завершено, пока не будет определено предыдущее состояние. Это снижает загрузку GPU и увеличивает накладные расходы CPU за счет снижения производительности.
Чтобы обойти эту проблему, в DirectX 12 появились PSO, которые представляют собой объекты, описывающие состояние всего графического конвейера. PSO похожи на бутылку, в которой содержатся различные состояния и компоненты, необходимые для создания изображения. Это позволяет графическому процессору предварительно обрабатывать каждое зависимое состояние вместо того, чтобы постоянно пересчитывать состояния на основе текущего графического конвейера.
Это значительно снижает накладные расходы процессора, присутствующие в DirectX 11, и повышает производительность. Итак, как же на самом деле выглядит это различие? По данным Microsoft, DirectX 12 снижает нагрузку на CPU на 50 процентов и повышает производительность GPU на 20 процентов. Хотя это и значительные улучшения, это не означает, что вы увидите те же результаты.

Почему переход с DirectX 11 на DirectX 12 не так прост
DirectX 11 был впервые выпущен для Windows Vista 27 октября 2009 года. Таким образом, если учесть, что DirectX 12 вышел в 2015 году, то между DirectX 11 и DirectX 12 прошло шесть лет. За это время тысячи игр были разработаны с использованием DirectX 11. К сожалению, перейти с DirectX 11 на DirectX 12 не так-то просто.
![]()
DirectX 11 — это так называемый высокоуровневый API. Проще говоря, с API высокого уровня разработчикам работать проще. В результате получаются стабильные, отшлифованные и играбельные игры. С другой стороны, DirectX 12 — это низкоуровневый API, и по сравнению с DirectX 11 это совсем другой зверь. Хотя он позволяет разработчикам точно настраивать оптимизацию на гранулированном уровне, его использование требует обширных знаний.
Учитывая это, игра, разработанная на DirectX 12, может иметь худшую производительность в зависимости от знаний разработчика об API. Есть улучшения, которые приходят с DirectX 12, но все зависит от того, насколько хорошо программист может их реализовать. По этой причине многие разработчики предпочитают придерживаться высокоуровневых API, таких как DirectX 11.
Что выбрать: DirectX 11 или DirectX 12?
Ответ зависит от нескольких вещей, например, от того, какую игру вы хотите запустить. Например, Guild Wars 2 работает на DirectX 11. Даже если ваша ОС и аппаратное обеспечение используют DirectX 12, у вас не будет возможности выбрать DirectX 12 в Guild Wars 2, потому что игра не поддерживает его. Это полностью решение разработчика, компании ArenaNet.
Хотите верьте, хотите нет, но ArenaNet потребовалось девять лет, чтобы перейти с DirectX 9 на DirectX 11. Однако есть игры, которые поддерживают и DirectX 11, и DirectX 12. Например, Fortnite. В настройках игры пользователи могут переключаться между обеими версиями.
![]()
Возможность выбора между DirectX 11 и DirectX 12 также зависит от вашего оборудования. Практически любой современный GPU будет поддерживать DirectX 12, но этого нельзя сказать о более старых GPU, таких как Radeon HD 4870. Этот графический процессор, выпущенный в 2008 году, поддерживает только DirectX 10. Это означает, что на нем невозможно запустить большинство современных игр, которые работают с использованием DirectX 11 и DirectX 12.
DX11 и DX12: а есть ли между ними разница?
Сменяются видеокарты, игры, процессоры, а смена DX11 на DX12 тянется еще с 2015 года, поэтому многие и забыли, чем эти версии отличаются друг от друга, и что же принесет новая API. В большей части на этом лежит вина и самого Microsoft, так как они сделали DX12 достоянием исключительно Win10, заявив что на более старых системах DX12 невозможно реализовать, но не так давно появилась информация, что поддержка DX12 все же появится на win7, и первой игрой будет World of Warcraft. В результате долгое время компьютеров с поддержкой DX12 было крайне мало, чтобы разработчикам игр вообще стоило обращать на этот сегмент свое внимание. Пожалуй, только сама Microsoft и ее дочерние игровые компании перешли на полноценный выпуск игр на DX12, но среди них не было значимых шедевров, и, пожалуй, самая узнаваемая серия — это Forza Horizon.
Однако, на начало 2019 года ситуация стала меняться, и, прежде всего, мы уже видим в статистике STEAM, что большинство компьютеров (64.53%) уже имеют как видеокарту так и операционную систему, совместимую с DX12, и стоит напомнить, что последнее поколение приставок Microsoft и Sony тоже поддерживают DX12, что в итоге дает нам абсолютное большинство игровых устройств DX12 ready.
В итоге мы видим, что на конец 18 и начало 19 года все больше и больше игр отказываются от DX11 как основного API в пользу как DX12, так и Vulkan. Вот их список:
- Lara Croft Shadow of the Tomb Raider
- Resident evil 2 (remake)
- Crackdown 3
- Metro Exodus
- The Division2
- Devil may cry 5
Готовятся к выходу и, скорее всего, будут иметь поддержку Vulkan или DX12
- DOOM Eternal
- Wolfenstein Youngblood
- Serious Sam 4
- Star wars fallen order
- Rage 2
Поскольку мы выяснили, что для полномасштабного ввода DX12 есть как готовность со стороны пользователей, так и достаточное кол-во крупных проектов, то стоит освежить знания о этом API. Вероятнее всего, вы считаете, что самым главным отличием DX12 от своего предшественника является возможность трассировки лучей, и на этом все отличия заканчиваются, но это вовсе не так. Давайте взглянем на отличия этих двух версий, чтобы нам лучше понимать, чего эти версии могут и не могут, и что реально принесет DX12.
Помимо упомянутой трассировки лучей DX12 включал в себя такую технологию как Multi Gpu — это возможность объединения нескольких видеокарт даже различных производителей для обработки изображения. Звучит здорово, но, на мой взгляд, технология имеет мало шансов на широкое применение, и вот почему. Для разработчика игр придется сначала заставить работать просто неимоверное кол-во различных вариаций видеокарт, потом еще это все протестировать, а это очень много времени и очень много затрат, а выгоды от введения сомнительны. Для разработчика GPU это будет означать, что можно купить менее мощную видеокарту и установить ее параллельно, причем это может быть видеокарта их конкурента, в итоге это будет влиять на среднюю цену купленных у них устройств — для достижения искомой производительности можно будет покупать видеокарту классом ниже. Вообще стоит вспомнить SLI и CrossFire — много ли игр поддерживают эти технологии? Вот мы и добрались до наиболее значимых отличий DX12 от предшественника — работа с потоками CPU.
Таким образом выглядит пример работы игры с DX11: один поток отвечает за обработку видео, на остальных работают другие части движка, например звуковой движок, сетевая часть, расчет NPC и так далее, главное, что за самую емкую и сложную часть отвечает только 1 ядро процессора. Теоретически DX11 может работать максимум с двумя потоками, но, к сожалению, как показывает практика, это остается только теорией. DX12 уже способен работать с восемью потоками, и выглядит это так:
DX12 распределяет по потокам/ядрам самую объемную задачу по подготовке данных и последующей обработке их на GPU, что влияет положительно на производительность. Производительность, разумеется, не вырастает в 8 раз, так как этот процесс не идеально масштабируемый, и есть и другие узкие места. Забавно отметить, что результаты работы в случае всего одного потока или восьми отправляются на GPU о обрабатываются тысячами ядер CUDA или CU в зависимости от вендора GPU.
Что же происходит с данными попавшими в GPU?
Вверху видна последовательность обработки данных DX11, которая происходит в строго установленном порядке, и без выполнения предыдущих задач следующие не могут быть реализованы, тогда как DX12 имеет возможность разделения и исполнения этих задач на разных ядрах нашего GPU, что обеспечивает большую загрузку самого GPU и приводит к уменьшению задержек и росту FPS. Важно отметить, что скорость исполнения самих элементов, из которых состоит вся задача, не увеличивается. Весь выигрыш в производительности достигается только за счет оптимизации очереди — это и называется асинхронные вычисления.
Давайте теперь взглянем на то, что же конкретно подготавливает CPU для последующей обработки на GPU, если конечную картинку мы видим в таком виде:
То процессор передает каркас изображения в виде сетки полигонов для последующей закраски — аналогия с деткой книжкой-раскраской более чем уместна.
Каждый из полигонов обрабатываются на CPU и называется вызовом отрисовки или draw call. Соответственно, чем больше полигонов в кадре мы видим, тем больше нагрузка на CPU, такие ситуации наиболее характерны для игр с открытым миром и появления большого количества объектов в кадре, особенно если это очень детализированные объекты как NPC. В других случаях — когда мы смотрим в небо или видим незначительное кол-во полигонов в каком-нибудь ограниченном пространстве, например, коридоре, где вызовов отрисовки не так много, преимущества DX12 тают. Давайте перейдем к выводам из теоретической части знакомства с DX12.
В визуальном плане DX12 имеет очень скудные преимущества перед DX11 — лучи это самое яркое отличие.
Программирование под DX12 сложнее, и все преимущества нового API раскрываются полностью, только когда движок изначально разрабатывается, а не адаптируется под него.
Для несложных сцен, где в кадре мало объектов/предметов и полигонов, DX12 может показывать меньшую производительность по сравнению с DX11, так как все вызовы отрисовки прекрасно успевают обрабатываться на 1 ядре процессора, а в случае с DX12 результаты работы восьми потоков надо еще синхронизировать. Это может быть верно для целых игр, а не просто сцен, если они в своей основе имеют несложную графику.
DX12 не снижает нагрузку на процессор, а, наоборот, увеличивает, только при этом нагрузка распределяется до 8ми ядер/потоков процессора а не ложится на 1 ядро.
Выигрыш от перехода на DX12 будет у процессоров с небольшой производительностью на ядро, но большим их количеством, например, как серия FX от AMD.
Синтетический тест 3D mark Api Overhead Test https://3dnews.ru/911658
Наблюдаем в кадре то самое большое количество объектов, и результат — отличие на порядок,- это действительно огромная разница, даже если сделать скидку на то, что это синтетический тест.
Игровые тесты
- FX 6300 @4500
- DDR3 2133
- RX 580 8GB
Lara Croft Shadow of the Tomb Raider
Для рассмотрения возьмем последнюю сцену из 3х тестовых отрезков — она наиболее характерна большим количеством вызовов отрисовок.
Обратите внимание на загрузку процессора: слева DX11 74%, справа DX12 100%.
Первые 3 значения относятся к последней сцене теста, четвертое же значение — это результат по всем трем сценам. Примечательно что максимальный кадр, который был отмечен, был в момент показа именно куска неба, и разницы между API нету, в то время как наибольшая разница отмечена именно в минимальных кадрах, и достигает она внушительных 43%. То есть, в самых графически нагруженных сложных сценах мы видим наибольшую пользу от перехода на DX12.
Resident Evil 2 remake

В этом тесте мы видим куда менее тривиальные результаты: падение максимального и среднего кадра, но и подъем минимальных значений аж на целых 33%. То есть, в моментах, где производительности 1 потока вполне хватает, DX11 даже быстрее, но как только сцена усложняется и производительности 1 потока недостаточно, DX12 раскрывается, что переносит весь игровой процесс до 60+ кадров, а DX11 опускается до условно неиграбельных 45. Боюсь именно с такими результатами и связана такая нелюбовь тестеров к DX12, так как в нем может быть меньше максимальных кадров, и даже, что может показаться совсем неприемлемым, и средние кадры, однако, как ни парадоксально, DX12 при этом более комфортен для игры.
Давайте перейдем к связкам с другим видеокартами и процессорами и понаблюдаем за результатами. Для этого выберем 4 игры:
- Lara Croft Shadow of the Tomb Raider
- Resident Evil 2 remake
- Division2
- Metro Exodus
Все эти игры работают как в режиме DX11, так и DX12. Давайте сравним, каковы будут изменения от смены API. Во всех тестах в качестве CPU применялся 9900K в разгоне до 5.0. Другими словами, мы увидим ситуацию, когда процессор не ограничивал нашу производительность.
Данные в таблице — это изменения в % между API. Интересно, что видеокарты семейства Pascal по-разному реагируют на DX12, несмотря на одинаковую архитектуру в их основе, прироста на младших моделях нет, связано ли это с работой драйвера или аппаратной части, находится за рамками этого блога. Нужно констатировать только одно: на видеокартах, формально имеющих поддержку DX12_1, прироста от перехода на новый API может не быть. С другой стороны, видеокарта RX 580, формально имеющая поддержку только DX12_0, дает прирост в 9% как топовая GTX 2080, прирост у видеокарт Vega доходит до 17%, что является просто потрясающим результатом. В любом случае мы замечаем прирост на последних сериях видеокарт от 5% до почти 20% производительности, и это очень значительное изменение. Что можно сказать — даже в связке с мощным процессором на современных видеокартах переход на DX12 оправдан и увеличивает производительность, если провести подобные тесты с менее производительным процессором, то отличия будут еще более существенны.
Справедливо будет заметить, что у компании Nvidia традиционно была хорошая производительность под DX11, и можно было бы предположить, что DX12 просто мог не давать таких преимуществ как у конкурентов. Давайте немного отвлечемся от темы сравнения API и взглянем более пристально на сами видеокарты.
Что ж, в DX11 видим тотальное доминирование продуктов Nvidia, и только Vega 56 немного опережает своего визави в виде GTX1070.
Однако при переходе на DX12 ситуация кардинально меняется, и Vega 56 опережает GTX 1070 уже на 13% и отстает на 7,6% от GTX1080, Vega 64 же опережает GTX 1080 5.4% и не дотягивает до RTX 2070 всего 2%! Да, похоже, AMD не зря в своих презентациях много внимание уделяла DX12 — действительно, их продукция намного лучше чувствует себя под новым API.
В качестве вывода можно сказать, что для владельцев старых процессоров, которые приобрели одни из последних серий видеокарт, переход на DX12 в любимой игре даст ощутимую прибавку производительности вплоть до 50%, при использовании DX12 на топовых видеокартах и процессорах выигрыш DX12 может составлять 10-20%, что тоже крайне не мало, поэтому все больше и больше разработчиков обращают внимание на новый API, и если в 19 году как минимум 50% из крупных, так называемых AAA, игр вышло с поддержкой DX12, то с выходом консолей нового поколения как от Microsoft, так и от Sony игровая индустрия окончательно перейдет на новый стандарт, поэтому при покупке видеокарты уже сейчас стоит обращать внимание преимущественно на тесты именно в этом API. Поэтому, скажем, новые серии Turing в виде 1660 1660ti 1650 1650ti могут быть намного привлекательнее, чем это могло бы казаться на первый взгляд т.к. по сравнению с 1050ti,1060, 1070 они действительно быстрее работают под новым API.
DirectX 11 или DirectX 12: что лучше для игр?
Главная мысль: Обычно DirectX 12 даёт вам лучший игровой опыт. Это может включать в себя более высокую частоту кадров и расширенные визуальные эффекты. Но если вы играете в игры на старом оборудовании, вы можете обнаружить, что DirectX 11 повышает стабильность игры.
Версия DirectX, которую вы выберете для игр на ПК, может существенно повлиять на производительность. Но только потому, что DirectX 12 новее, означает ли это, что это всегда лучший выбор? Давайте посмотрим на различия между DirectX 11 и 12 и выясним, какая версия лучше для игр.
Что такое DirectX?
DirectX — это набор API (интерфейсов прикладного программирования), созданных Microsoft и включённых в ОС Windows. Набор API включает Direct3D, DirectPlay, DirectSound, DirectDraw и некоторые другие. Он был разработан, чтобы помочь разработчикам игр обеспечить работу своего программного обеспечения с максимально возможным количеством различных конфигураций оборудования.
Вместо того чтобы предоставлять отдельные драйверы для нескольких графических, видео и звуковых аппаратных компонентов, разработчики игр могут сосредоточиться на программировании для совместимости с DirectX и быть уверенными, что их программное обеспечение будет работать. Неважно, есть ли у конечного пользователя, например, Radeon RX 7900 или Geforce RTX 3060.
Эта стандартизация интерфейса между программным и аппаратным обеспечением является ключом к буму компьютерных игр за последние 20 с лишним лет. Хотя доступны и другие наборы API, включая Vulkan и OpenGL, почти каждая успешная игра последних двух десятилетий использует или поддерживает DirectX.
DirectX 11 и 12: в чём разница?
Основное и, пожалуй, самое важное различие между DX 11 и DX 12 — это уровень, на котором они взаимодействуют с вашим оборудованием.
DirectX 12 использует низкоуровневые API, которые работают на программном уровне, близком к аппаратному. Это означает, что он имеет более прямой контроль над видеокартой и может работать более эффективно. DirectX 11 — это высокоуровневый API, что означает, что, хотя он по-прежнему имеет доступ к графическому процессору и другому оборудованию, он более изолирован и имеет только более общий контроль над оптимизацией.
Этот низкоуровневый доступ к аппаратной оптимизации делает работу с DirectX 12 более сложной и трудоёмкой. Вероятно, поэтому, несмотря на то, что DX 12 был выпущен в 2015 году, игры всё ещё разрабатываются для более простого и часто более стабильного DirectX 11.
Такие игры, как Icarus, попросят вас выбрать между DX11 и DX12:
Второе отличие, которое следует учитывать при сравнении DX 11 и 12, — это использование ядра ЦП. Долгое время у геймеров не было особых причин выбирать ЦП с более чем четырьмя ядрами, потому что разработчикам игр было трудно разрабатывать игры, которые могли бы эффективно использовать больше ядер. В DirectX 12 Microsoft решила эту проблему, встроив поддержку многоядерной обработки в API. При игре с использованием DX 12 чем больше ядер, тем выше производительность.
Возможность доступа к нескольким ядрам сочетается с ещё одной новой функцией DX 12: параллельными вычислениями. В DirectX 11 операции выполняются в линейной очереди, при этом такие функции, как сжатие текстур, симуляция физики, генерация теней и загрузка данных ЦП выполняются одна за другой. DirectX 12 позволяет выполнять эти типы операций параллельно и в нескольких потоках, что приводит к заметному повышению эффективности.
DirectX 12 также представляет асинхронные вычисления. Это позволяет выполнять операции, не дожидаясь завершения предыдущей. Например, процедура создания внутриигровых теней может быть выполнена до завершения операции сжатия текстуры.
Крошечные оптимизации, достигнутые за счёт использования параллельных и асинхронных вычислений, возможно, сотни каждую секунду, складываются и формируют ядро разницы между DX 11 и DX 12. Проще говоря, DirectX 12 гораздо более эффективен при взаимодействии между игровым программным обеспечением и аппаратном обеспечении ПК.
Лучше для игр DirectX 11 или DirectX 12?
В целом, вы увидите лучшую производительность игры при использовании DirectX 12. Это большой шаг вперёд по сравнению с DirectX 11 с точки зрения оптимизации и эффективности между программным обеспечением и совместимым оборудованием, и любая игра, которая была запрограммирована для использования всех преимуществ, будет работать. лучше, чем при использовании старого API.
Повышение уровня производительности зависит от каждой конкретной игры, главным образом потому, что не каждая игра требует или может использовать низкоуровневую оптимизацию, которую предлагает DX 12. NVIDIA предполагает, что использование DirectX 12 с RTX 3090 может увеличить частоту кадров Assassins Creed Valhalla на целых 24% и Cyberpunk 2077 на 20% по сравнению с DX 11. Однако Far Cry 6 и The Division 2 получают прирост только на 5%.
DirectX 12 также поддерживает более широкий спектр расширенных функций графического процессора, таких как трассировка лучей и VRS (затенение с переменной скоростью). Если игра и ваша видеокарта могут использовать эти эффекты, выбор DX 12, несомненно, даст вам лучшее визуальное впечатление.
Какой DirectX следует использовать?
Не все игры позволяют выбирать между использованием DirectX 11 и 12. На самом деле количество игр, предлагающих выбор, всё ещё довольно мало. И даже игры, совместимые с DirectX 12, часто по умолчанию используют DirectX 11 при первой установке. DirectX 11 может быть даже лучшим выбором на старом оборудовании ПК, просто чтобы избежать проблем с совместимостью.
Но большинство компьютерных геймеров заметят повышение производительности, особенно частоты кадров, при переходе на DirectX 12, если он доступен. Если в настройках игры есть возможность выбора, стоит попробовать обе версии, чтобы увидеть, какая из них работает лучше всего.
Часто задаваемые вопросы
Какой у меня DirectX?
Если вы используете Windows 10 или 11, на вашем компьютере должен быть установлен DirectX 12. Он входит в состав обеих операционных систем. Вы можете проверить это, открыв диалоговое окно «Выполнить» (сочетание клавиш Win+r) и набрав «dxdiag», чтобы открыть средство диагностики DirectX.
Нужно ли устанавливать DirectX 12?
Нет, обычно вам не нужно устанавливать DirectX 12 вручную, поскольку он поставляется с Windows. Если для запуска игры требуется определённая версия DirectX 12, вам будет предложено установить её при установке игры. Вы также можете обновить DirectX, когда станут доступны новые версии.
Увеличивает ли DirectX 12 частоту кадров?
Если DirectX 12 правильно реализован разработчиком игры, его использование должно привести к более высокой частоте кадров. Волшебного удвоения FPS вы вряд ли увидите, но прирост на 20-25% по сравнению с DX 11 — не редкость.
Что такое DirectX 12 Ultimate?
DirectX 12 Ultimate — это последняя версия DirectX 12, выпущенная в 2020 году. Она разработана как унифицированная библиотека API для консолей Windows и Xbox и содержит несколько новых функций, включая DirectX Raytracing и Mesh Shading. Не все видеокарты поддерживают DirectX 12 Ultimate, поэтому доступность зависит от вашего оборудования.