DirectX 12 уже достаточно давно используется, однако не все пользуются им. Причины этого могут быть различными. В этой статье мы рассмотрим различия между версиями 11 и 12 DirectX и определим, какую из них предпочтительнее использовать. В настоящее время многие современные игры предоставляют возможность выбора между этими двумя версиями в меню запуска. Например, если у вас нет мощного компьютера, какую версию стоит выбрать? Ответ на этот вопрос вы найдете в нашей статье.
Особенности версий
Учитывая, что DirectX 12 является развитием предыдущей версии, DirectX 11, прежде чем сделать выбор в пользу какого-либо API, необходимо тщательно изучить их основные различия и потенциальные возможности.
В 2015 году, в рамках выхода Windows 10, была представлена новая версия DirectX 12, которая произвела революцию в сфере разработки игр и игрового процесса. Эта новая версия DirectX обещала значительное повышение эффективности, особенно за счет снижения нагрузки на центральный процессор и более рационального использования графического процессора. Хотя некоторые могут увидеть главное отличие между DX11 и DX12 в добавлении трассировки лучей, на самом деле различия гораздо глубже. В частности, DirectX 12 включает технологию Multi-GPU, которая позволяет синхронизировать несколько видеокарт для повышения производительности. Тем не менее, несмотря на перспективы, этот подход имеет и свои ограничения, а также может не получить широкого распространения из-за высоких требований к разработке и тестированию со стороны компаний, занимающихся созданием игр.
Одним из ключевых различий между DirectX 11 и DirectX 12 является их способность управлять процессорными потоками. В отличие от DX11, который часто прибегает к использованию одного ядра процессора для выполнения ресурсоемких вычислений, DX12 обладает возможностью эффективно задействовать до восьми потоков, что способствует более равномерному распределению нагрузки и увеличению общей производительности.
При использовании API DX12, задачи по обработке данных и их подготовке к передаче на графический процессор распределяются среди процессорных потоков, что влияет на общую эффективность системы. Несмотря на то, что применение восьми потоков не приводит к восьмикратному росту производительности, такой метод все же существенно улучшает использование ресурсов.
Важно подчеркнуть, что применение API DX12 позволяет передавать вычисления для обработки на множество ядер CUDA или CU, зависящее от производителя GPU, тем самым демонстрируя высокий уровень параллелизма и эффективное использование вычислительных ресурсов современных графических процессоров.
Для демонстрации различий между DirectX 11 и DirectX 12 можно прибегнуть к аналогии с ресторанным обслуживанием. В случае DirectX 11 процесс выполнения задач напоминает последовательное обслуживание заказов официантом: сначала подают напитки, затем подают основное блюдо и т.д. В DirectX 12, вдохновленном принципами работы сетей ресторанов быстрого обслуживания, официант способен принимать и обрабатывать заказы параллельно, что значительно ускоряет и улучшает процесс обслуживания.
Один из ключевых факторов при выборе между DirectX 11 и DirectX 12 заключается в совместимости игры с соответствующей версией API. Некоторые игры, такие как Guild Wars 2, оптимизированы исключительно для работы с DirectX 11, что означает, что выбор версии API в данном случае определяется разработчиками. В отличие от этого, Fortnite предоставляет возможность выбора между двумя версиями API в настройках игры, давая игрокам возможность оценить их эффективность на собственных компьютерах.
Выбор между DirectX 11 и DirectX 12 также определяется характеристиками вашего оборудования. Подавляющее большинство современных графических карт поддерживают DirectX 12, предоставляя пользователям доступ к его расширенным возможностям. В случае же старых GPU, таких как Radeon HD 4870, поддержка ограничена DirectX 10, что не позволяет запускать современные игры, разработанные для более новых версий API.
В итоге, решение о выборе между DirectX 11 и DirectX 12 должно основываться на индивидуальных условиях. Пользователи с новейшим оборудованием, включая многоядерные процессоры и современные видеокарты, могут заметить существенный прирост производительности при переходе на DirectX 12 в играх и программах. Тем не менее, для некоторых игр и приложений, особенно если они еще не оптимизированы под новый стандарт, DirectX 11 может оказаться более подходящим вариантом. В случае, если игра предоставляет выбор и ваш компьютер относится к бюджетному сегменту, рекомендуется остановиться на версии 11.