Аппаратная поддержка directx 12

Аппаратная поддержка directx 12

Microsoft DirectX 12
Тип Графический API
Разработчики Microsoft
Операционная система Windows 10
Первый выпуск 29 июля 2015
Состояние Выпущено вместе с OC Windows 10.
Лицензия Пользовательское соглашение
Сайт windows.microsoft.com

DirectX 12 — компонент интерфейса программирования приложений. DirectX 12 обеспечивает функции для взаимодействия операционной системы и приложений с драйверами видеокарты. Эти функции привязаны к операционной системе в линейке Windows и доступны в Windows 10. DirectX 12 вышел в 2015 году.

Содержание

Возможности и нововведения [ править | править код ]

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

История развития [ править | править код ]

Корпорация Microsoft в марте 2014 года на конференции GDC анонсировала низкоуровневый API нового поколения — DirectX 12, нацеленный на конкуренцию с Mantle и OpenGL.

DirectX 12 стал доступен после выхода 29 июля 2015 года Windows 10, остающейся на данный момент единственной ОС, поддерживающей DirectX 12.

В 2018 году на конференции GDC Microsoft представила обновление для DirectX 12 — Microsoft DXR, которое позволяет API выполнять трассировку лучей в реальном времени.

Двенадцатая версия Директ Икс необходимо для запуска некоторых современных игр. Доступна она только на Windows 10. Но помимо программной совместимости, есть еще и аппаратная. Речь, разумеется, о компьютерном «железе», в частности, о графических адаптерах. Видеокарты, поддерживающие DirectX 12, сейчас легко найти в продаже. Собственно говоря, к ним относятся все современные модели от компаний Nvidia и AMD. Но мы все же остановимся на вопросе совместимости более подробно.

Вопрос совместимости

DirectX 12 является одним из модулей операционной системы Виндовс 10. Он активируется только в том случае, если на аппаратном уровне поддерживается графическим адаптером. Чтобы проверить его доступность, воспользуйтесь диагностическим инструментом DxDiag. Вызывается он из диалогового окна «Выполнить» (Win + R на клавиатуре). Введите туда одноименную команду и нажмите Enter. Снизу окна вы увидите необходимую информацию.

Читайте также:  Brand 2018 info что это

Теперь перейдем непосредственно на вопросе совместимости. На сайте производителей видеокарт есть подробные технические характеристики, в том числе и поддерживаемые версии ДиректХ. Чтобы узнать модель графического устройства, сделайте следующее:

Рекомендуем! InstallPack Стандартный
установщик
Официальный дистрибутив DirectX Тихая установка без диалоговых окон Рекомендации по установке необходимых программ Пакетная установка нескольких программ

DirectX-for-pc.ru рекомендует InstallPack, с его помощью вы сможете быстро установить программы на компьютер, подробнее на сайте.

  1. Нажмите на клавиатуре Win + Q. Тогда откроется поисковая форма в меню «Пуск».
  2. Впечатайте туда «Сведения» и кликните по первому элементу.
  3. В «Компоненты» выделите строку «Дисплей».
  4. Нужная информация размещена в «Описание адаптера».

Предостережение

Нередко на непроверенных ресурсах мелькают ссылки на якобы рабочие версии Директ Икс 12 для неподдерживаемых видеоадаптеров и операционных систем. Неподготовленного пользователя это может ввести в заблуждение. Хотим вас предостеречь: ни в коем случае не доверяйте таким сайтам и не загружайте какие-либо программы. Это все со стопроцентной вероятностью вирусы.

Близится выход Windows 10, поэтому сегодня внимание производителей видеокарт, разработчиков игр и геймеров приковано к новым API. Но большинство пользователей по-прежнему путаются в том, какие видеокарты будут поддерживать новый DX 12 и в каком виде. Нас вновь ожидают несколько уровней поддержки. Они соответствуют разным уровням аппаратной и программной поддержки, ниже мы как раз рассмотрим их более детально.

Большинство современных видеокарт, будь то от AMD или NVIDIA, поддерживают DirectX 12 в "родном" режиме. Однако речь здесь идёт о минимальном уровне поддержки, старые GPU не смогут полностью реализовать все технологии, поскольку они вышли два-три года назад. Но позвольте пролить свет на данный вопрос.

DirectX 12 API

Начнём с API DirectX 12. Важной частью API является снижение избыточной вычислительной нагрузки, что верно и для других низкоуровневых API, таких как Mantle. Здесь суть кроется не столько в представлении новых технологий, сколько в более эффективном использовании доступных ресурсов. Первые тесты под Windows 10 уже показали существование потенциала производительности. Но данные тесты были ограничены определёнными сценариями, и пока не совсем понятно, какой прирост производительности можно ожидать в играх из-за снижения избыточной вычислительной нагрузки.

На низком уровне API DirectX 12 обеспечивает для программистов более эффективные средства доступа к "железу". Сюда входит и улучшенное управление видеопамятью. Так что потенциально перед программистами открываются дополнительные возможности, но при этом и влияние ошибок может быть весьма печальным.

Читайте также:  Crysis не запускается на windows 7 x64

Технология Asynchronous Compute тоже является частью низкоуровневой поддержки, она позволяет лучше и эффективнее использовать ступени фиксированного конвейера рендеринга и уменьшить время рендеринга. Так что одновременно можно выполнять больше команд, а также задействовать больше ступеней конвейера. Уменьшение времени рендеринга приведёт к более высокой частоте кадров в секунду и к снижению задержек, что положительно сказывается на некоторых областях – например, на поддержке очков виртуальной реальности VR.

DirectX 12_0

Только GPU или архитектуры, специально разработанные для поддержки DirectX 12, будут поддерживать уровень функций DirectX 12_0, который содержит ряд новых технологий. Среди них – тайловые ресурсы Tiled Resources. В принципе, тайловые ресурсы известны ещё по DirectX 11, они отличаются высокой эффективностью по используемой памяти, а также могут значительно улучшить уровень детализации. С помощью мелких текстур в многократных ориентациях можно симулировать крупные текстуры. Кроме того, существенно экономится память. А качество картинки приносить в жертву не придётся.

В примере приводится классическая текстура Texture 3D под DirectX 11 с разрешением 1.200 x 600 x 600 пикселей с 32-битным цветом – она занимает 1,6 Гбайт. С тем же качеством можно использовать тайловую текстуру Tiled Texture 3D через многократные повторения – она будет иметь разрешение 32 x 32 x 16 пикселей с 32-битным цветом. Размер при этом будет составлять 156 Мбайт. В одном из примеров приведена сцена рендеринга, в которой тайловая 3D-текстура используется 2.500 раз. Для создания и симуляции некоторых материалов в 3D добавляется ещё одно информационное поле. Им может быть, например, значение прозрачности или вязкости. Такой подход позволяет лучше симулировать жидкости и газы.

Ещё один тип тайловых ресрусов – объёмные тайловые ресурсы (Volume Tiles Resources), однако они относятся к уровню функций уже не DirectX 12_0, а 12_1.

Новые технологии DirectX 12

К уровню DirectX 12_0 относится Typed UAV и новая модель Bind, которые ориентируют API на большее число ядер CPU, что обеспечивает более широкую параллелизацию и производительность. Обе функции мы уже рассматривали в обзоре GeForce GTX 980 и GTX 970.

DirectX 12_1

Ещё на шаг дальше Microsoft и разработчики GPU пошли с DirectX 12_1. Но данный урвоень функций поддерживают только самые новейшие GPU. К ним относятся все GPU на основе 2-го поколения "Mawell". Одна из новых технологий – консервативная растеризация (Conservative Rasterization). Она используется для фильтра динамического суперразрешения (Dynamic Super Resolution) и сглаживания Multiframe Sampled Anti-Aliasing.

Читайте также:  Расширение переводчик для сафари

Новые технологии DirectX 12

При растеризации небольшого объекта/пикселя в некоторых случаях лучше учитывать все покрытые точки семплирования, пусть даже частично. Также консервативная растеризация важна при вокселизации VXGI. Улучшенная методика наиболее заметна и при расчете теней.

Аппаратная поддержка

Конечно, многих читателей интересует вопрос о том, какие GPU или видеокарты будут поддерживать DirectX 12 и на каком уровне. Хотя оба разработчика GPU AMD и NVIDIA несколько лет говорят о поддержке DirectX 12, она пока остаётся довольно ограниченной.

Поддержка DirectX 12 на современных видеокартах

Архитектура GPU DirectX 12 API DirectX 12_0 DirectX 12_1 DirectX "12_2"
NVIDIA "Maxwell" 2-го поколения Да Да Да Да
NVIDIA "Maxwell" 1-го поколения Да Нет Нет Нет
NVIDIA Kepler Да Нет Нет Нет
NVIDIA Fermi Да Нет Нет Нет
AMD GCN 1.2 Да
AMD GCN 1.1 Да
AMD GCN 1.0 Да

По крайней мере, NVIDIA вместе с представлением GeForce GTX 980 Ti пролила свет на поддержку нового API. Только видеокарты 2-го поколения архитектуры "Maxwell" будут поддерживать все упомянутые ранее функции и технологии. Среди них — GeForce GTX Titan X, GTX 980 Ti, GTX 980, GTX 970 и GTX 960. Все другие видеокарты вплоть до линейки GeForce 500 с GPU "Fermi" смогут поддерживать DirectX 12 API на базовом уровне, пользователи выиграют от улучшенного взаимодействия между драйвером и API.

К сожалению, со стороны AMD картина не такая понятная. Архитектура "Graphics Core Next" тоже даёт разные уровни поддержки. GCN версии 1.2 была реализована на видеокартах Radeon R9 285, в модифицированном виде мы получим поддержку и на новых видеокартах "Fiji". Версии GCN 1.1 (линейки Radeon 290 и Radeon 260) и GCN 1.0 (линейки Radeon 200 и Radeon 7000) тоже совместимы с DirectX 12, но, скорее всего, тоже на самом нижнем уровне. К сожалению, от AMD пока нет чётких утверждений по поводу поддержки DirectX 12. Некоторые функции, подобные асинхронным шейдерам (Asynchronous Shaders), должны работать на всех GPU с архитектурой "Graphics Core Next".

Вероятно, нам придётся подождать некоторое время, прежде чем AMD, NVIDIA и Intel представят более конкретную информацию об уровне функций. По крайней мере со стороны NVIDIA ситуация с поддержкой прояснилась.

Ссылка на основную публикацию
Adblock
detector