> > > > GTC 2016: технология Multi Resolution Shading будет применяться не только для VR

GTC 2016: технология Multi Resolution Shading будет применяться не только для VR

Опубликовано:

nvidia gtcВиртуальная реальность является одной из основных тем на нынешней конференции GPU Technology Conference от NVIDIA. Конечно, разработчиков интересуют новые API VR, здесь NVIDIA как раз может предложить интерфейсы GameWorks VR или VRWorks, облегчающие создание игр и приложений VR.

Сегодня основной сферой применения VR остаются игры. Но в будущем очки VR будут играть важную роль и в других областях. Здесь можно отметить трансляции спортивных матчей, фильмы, вещание концертов, виртуальные путешествия и розничную торговлю, когда вы сможете выбирать покупки в виртуальном магазине. Конечно, не следует забывать и о профессиональных сферах применения. Вчера NVIDIA как раз представила программу VR Ready для рабочих станций и соответствующую аппаратную поддержку в виде карт Quadro.

NVIDIA GTC 2016: VRWorks
NVIDIA GTC 2016: VRWorks

На GTC 2016 NVIDIA вновь упомянула широко известные технологии. Среди них отметим VR SLI, которая позволяет просчитывать картинку для каждого глаза на отдельном GPU, приводя к снижению задержек вывода изображения после получения данных сенсоров, что дает существенное преимущество. Технология VR Direct тоже призвана уменьшить задержки и обойти ряд этапов классического процесса рендеринга. Картинка отображается на VR напрямую, без предварительной обработки операционной системой и прохода кадрового буфера. Front Buffer Rendering обходит классическую иерархию буферов, обеспечивая вывод картинки на VR-очки (scanout) по мере заполнения фронтального буфера просчитываемым кадром. Здесь тоже в фокусе снижение задержек.

Multi Resolution Shading

NVIDIA вновь уделила внимание технологии Multi Resolution Shading, рассказав о новых сферах ее применения. Но перед тем, как мы к ним перейдем, позвольте напомнить принцип работы Multi Resolution Shading.

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

NVIDIA GameWorks VRNVIDIA GameWorks VR

NVIDIA GameWorks VR

NVIDIA использует трюк, позволяющий снизить вычислительные расходы при рендеринге областей с ограниченной видимостью. Изображение разделяется на девять зон. Так называемые зоны Viewports выделены так, чтобы быть как можно ближе к зонам пост-обработки. Самая большая зона Viewport по центру просчитывается почти как в оригинале. Боковые области, а особенно четыре угла, подвергаются сжатию, у них изменяется разрешение в зависимости от желаемого результата.

Все девять зон одновременно рассчитываются на GPU, но отдельно друг от друга. И финальная картинка получается уже адаптированной для очков VR, пост-обработки не требуется. Вырезание невидимых областей, сжатие и оптимизация разрешения областей позволили NVIDIA увеличить производительность пиксельных шейдеров в 1,3-2 раза.

Разные вычисления для Oculus Rift и HTC Vive, MRS для классического 2D

Из новой информации можно отметить отличающееся разделение областей viewports для очков Oculus Rift и HTC Vive, поскольку их оптическая система различается, что потребовало от NVIDIA внести соответствующие регулировки. Поэтому оптические искажения подстраиваются под конкретные очки VR. То же самое касается и разделения на зоны Viewports при использовании MSR.

NVIDIA GTC 2016: VRWorks
NVIDIA GTC 2016: VRWorks

Кроме VR NVIDIA позиционирует технологию Multi-Resolution Shading и на другие сценарии. Например, при выводе быстрого шутера от первого лица на классическом 2D-дисплее в полном разрешении имеет смысл просчитывать только центральную часть экрана. А пограничные области с помощью Multi-Resolution Shading можно просчитывать с меньшим разрешением. В шутере геймер все равно фокусируется на центральную область, поэтому снижение качества периферийных областей он не заметит. По краям дисплея геймер обычно замечает только движение перед тем, как действие переместится в центральную и верхнюю части экрана. Наложение текста и HUD выполняются пост-обработкой после MSR, поэтому их качество не ухудшится.

Таким шагом NVIDIA планирует увеличить производительность до 40 процентов. Однако технология пока находится в стадии тестирования, говорить о конкретной реализации еще рано. В архитектуре Maxwell уже имеются аппаратные блоки для вычисления Multi Resolution Shading, то же самое должно быть верно и для новой архитектуры Pascal. Следующим шагом кажется сопряжение технологии MSR с отслеживанием взгляда. В таком случае Viewports можно расставлять в зависимости от направления взгляда геймера. Динамическое изменение зон viewport уже поддерживается, так что технология кажется вполне возможной.