DirectX 12 против DirectX 11 – как DX12 изменит компьютерные игры на Windows 10

DirectX 12 против DirectX 11 – почему это важно?

Windows 10 появилась, и, наряду со встроенной Cortana, потоковой передачей игр Xbox One и модным новым веб-браузером, одной из ее ключевых функций является DirectX 12, последняя версия игрового API операционной системы.

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

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

Итак, давайте посмотрим, что дает DirectX 12.

Смотреть: краткое руководство по новым возможностям Windows 10.

DirectX 12 против DirectX 11 – низкоуровневая аппаратная абстракция

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

Что такое аппаратная абстракция? Что ж, это основа того, что делает API полезным. Вместо того, чтобы разработчикам писать код для работы с различным оборудованием и драйверами, всем этим занимается API, и вместо этого разработчикам приходится иметь дело с упрощенным набором инструкций.

Раньше DirectX строго обеспечивал лишь достаточно высокий уровень аппаратной абстракции, чтобы облегчить жизнь программистам. Однако недостатком является то, что у разработчиков меньше возможностей оптимизировать производительность для конкретного оборудования. С Direct3D 12 Microsoft предоставит более прямой доступ к аппаратным функциям.

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

Связанный: Что такое ХолоЛенс? Объяснение AR-гарнитуры Microsoft

DirectX 12 против DirectX 11 – сокращение накладных расходов на вызов отрисовки

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

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

Сокращение времени вызова отрисовки является тем же основным преимуществом, которое AMD представила в Mantle, поэтому Battlefield 4 была одной из первых игр, в которых использовался этот новый API.

Связанный: HoloLens против Google Glass: в чем разница?

DirectX 11: общее время выполнения каждого потока составляет 6,6 мс.


DirectX 12: общее время на поток уменьшено вдвое до 3,2 мс.

Мультиадаптер DirectX 12

Еще одна ключевая новая функция — Explicit Multi-Adapter. Это позволит в играх использовать мультиграфические процессоры разных марок и скоростей, независимо от существующих решений, таких как SLI и Crossfire.

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

Windows 10 DirectX 12

Это, пожалуй, самая сложная для реализации функция DirectX 12, поэтому еще неизвестно, будет ли кто-нибудь использовать ее в значительной степени, но, безусловно, приятно знать о ее возможностях.

Почему DirectX 12 сейчас?

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

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

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

Связанный: Практический опыт с HoloLens: что говорят эксперты

Кроме того, все новейшие консоли теперь оснащены APU (комбинированными процессорами и графическими процессорами), изготовленными AMD, поэтому оптимизация для этих платформ также дает уроки по оптимизации для ПК с AMD. аппаратное обеспечение. Фактически, Xbox One перейдет на использование DirectX 12, полностью исключив любые накладные расходы. Именно поэтому AMD представила расширение Mantle для DirectX11, поскольку знала, что разработчики будут более заинтересованы в оптимизации ее оборудования благодаря победам в дизайне консоли.

Наконец, нельзя не отметить тот факт, что DirectX 12 будет использоваться на всех устройствах с Windows 10, включая не только ПК, но и планшеты и телефоны. Эта кроссплатформенная простота потенциально компенсирует любую дополнительную работу, которую может внести новый API.

Когда появится DirectX 12?

DirectX 12 будет поставляться в составе Windows 10, которая выйдет 29 июля 2015 года. Однако, чтобы увидеть результаты этой возможности, Microsoft планирует к праздничному сезону 2015 года выпустить игры, использующие преимущества DirectX 12.

Будет ли моя карта работать с DirectX 12?

DirectX 12 будет поддерживаться подавляющим большинством видеокарт для ПК, уже представленных на рынке. Любая карта Nvidia с момента запуска архитектуры Fermi (серия GTX 400), любая графика Intel со времен Haswell и любые карты AMD на базе GCN (серии HD 7000) поддерживают его, что составляет около 70% существующих установок. база.

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

Связанный: Xbox One против PS4

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

Зачем доверять нашей журналистике?

Основанное в 2003 году издание Trusted Reviews существует для того, чтобы давать нашим читателям подробные, объективные и независимые советы о том, что покупать.

Сегодня у нас есть миллионы пользователей в месяц со всего мира, и мы оцениваем более 1000 продуктов в год.