Какой DirectX следует использовать?
Не все игры позволяют выбирать между использованием DirectX 11 и 12. На самом деле количество игр, предлагающих выбор, всё ещё довольно мало. И даже игры, совместимые с DirectX 12, часто по умолчанию используют DirectX 11 при первой установке. DirectX 11 может быть даже лучшим выбором на старом оборудовании ПК, просто чтобы избежать проблем с совместимостью.
Но большинство компьютерных геймеров заметят повышение производительности, особенно частоты кадров, при переходе на DirectX 12, если он доступен. Если в настройках игры есть возможность выбора, стоит попробовать обе версии, чтобы увидеть, какая из них работает лучше всего.
Что такое DirectX?
DirectX — это набор API (интерфейсов прикладного программирования), созданных Microsoft и включённых в ОС Windows. Набор API включает Direct3D, DirectPlay, DirectSound, DirectDraw и некоторые другие. Он был разработан, чтобы помочь разработчикам игр обеспечить работу своего программного обеспечения с максимально возможным количеством различных конфигураций оборудования.
Вместо того чтобы предоставлять отдельные драйверы для нескольких графических, видео и звуковых аппаратных компонентов, разработчики игр могут сосредоточиться на программировании для совместимости с DirectX и быть уверенными, что их программное обеспечение будет работать
Неважно, есть ли у конечного пользователя, например, Radeon RX 7900 или Geforce RTX 3060.. Эта стандартизация интерфейса между программным и аппаратным обеспечением является ключом к буму компьютерных игр за последние 20 с лишним лет
Хотя доступны и другие наборы API, включая Vulkan и OpenGL, почти каждая успешная игра последних двух десятилетий использует или поддерживает DirectX.
Эта стандартизация интерфейса между программным и аппаратным обеспечением является ключом к буму компьютерных игр за последние 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?
Если вы используете 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, поэтому доступность зависит от вашего оборудования.
Image Quality: DirectX 11 Vs. DirectX 9
Before I say anything else, I’m going to mention the experience I had in evaluating DiRT 2’s DirectX 11 implementation: it turns out that people see what they expect to see. I’m as guilty of this as anyone, which is why we collect objective data like screenshots to support any conclusions we make. Despite the proof, you would not believe how many people have accused me of making a mistake when comparing DiRT 2’s DirectX 9 and DirectX 11 visuals. Some folks assume that the difference is huge, and the mind tends to play tricks to convince its owner that expectations will be met. I’ve had discussions with readers claiming that the difference between DirectX 9 and DirectX 11 in DiRT 2 is like night and day, that it’s incredibly obvious to them, and if the evidence doesn’t support that opinion, then the evidence must be flawed. But the evidence shows that the differences are minor at best, and completely unnoticeable during gameplay at worst.
Why am I mentioning this? It’s a pre-emptive strike, because Aliens vs. Predator falls in the same boat. Folks, it is almost impossible to tell if this game is running in DirectX 9 or DirectX 11 mode during actual play. Despite the impressive tessellated alien mesh on the previous page, I am convinced that there is no realistic way to tell if the game is running in DirectX 9 or 11 mode while playing it unless AA is enabled, assuming your style of gameplay doesn’t involve spending time standing still and staring at alien corpses until they melt away.
While the potential for tessellation to improve the detail of a 3D model is undeniable, any noticeable increase in the final result depends on the difference between the appearance of the standard version vs. the tessellated version. The standard alien model is extremely well-detailed, and so meticulously crafted, in fact, that I don’t think it’s at all practical to assume anyone would see the difference while playing this game. Perhaps a player might notice something if they scrutinize a non-moving alien body, but while actually playing the game and fighting the aliens, it’s completely unapparent.
What about high dynamic-range AO and DirectX 11-enhanced shadows? These features are even subtler than the tessellation effect. In a static screenshot comparison, you need to struggle to find any difference whatsoever.
The only DirectX 11-exclusive feature with noticeable teeth is AA, which is no surprise. I’m not sure what the technical reason is that prevents AA from running on DirectX 9 hardware, but the DiRT 2 developers managed to include AA in the DirectX 9 code path. The great majority of DirectX 9 games out there support AA, and to me the feature is important enough to spend development time on for a universal solution. In any case, none of this is the API’s fault. If you want to use AA in this game, you will need a DirectX 11 graphics card. End of story.
What’s the good news? In our testing, the DirectX 11 code path provided superior performance compared to DirectX 9 in many cases, even though the enhanced effects were enabled. That means that all the DirectX 11 goodness is often free, and in this light, the miniscule visual impact doesn’t seem so bad. It’s one thing to trade performance for tiny details, but it’s quite another to have your cake and eat it, too.
Лучше для игр 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, несомненно, даст вам лучшее визуальное впечатление.