Следующее поколение VR-игр на PS5

JASE A Product Marketing
Feb 22, 2023|10 Мин
Следующее поколение VR-игр на PS5
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.

Гарнитура VR нового поколения от Sony Interactive Entertainment, PlayStation® VR2 (PS VR2), выходит сегодня, и мы рады поделиться с Вами новейшими инструментами, с помощью которых Вы можете создавать для этой инновационной платформы. В этом посте мы рассмотрим два аспекта разработки для PS VR2: графику и входы.

PS VR2 и графика
Пример графического потенциала с разрешением 4K в PS VR2

PS VR2 использует вычислительную и графическую мощь PS5 нового поколения, чтобы помочь Вам создавать потрясающие, высокопроизводительные VR-игры. Вы можете нацелиться на эквивалент разрешения 4k, запуская игры с частотой 60 Гц, 90 Гц или 120 Гц, что должно быть достижимо на PS5 при использовании некоторых приемов, рассмотренных ниже.

Во-первых, давайте начнем с конвейеров рендеринга. Мы рекомендуем Universal Render Pipeline (URP) большинству разработчиков VR, потому что URP будет нашим первым конвейером рендеринга, поддерживающим некоторые уникальные функции PS VR2, такие как рендеринг с фовеацией и отслеживание взгляда. Вы также можете использовать Scriptable Build Pipeline (SRP), Built-in Render Pipeline и High Definition Render Pipeline (HDRP), но имейте в виду, что некоторые функции, например, рендеринг с фовеатом, пока что доступны только в URP.

В целом, URP отлично подходит для VR-игр. Он гибкий, простой в использовании и настраиваемый. Это также хорошо работает, если Вы создаете игру для нескольких платформ, включая устройства VR "все-в-одном". Вы можете создать свой собственный конвейер рендеринга с помощью SRP, и мы предоставляем обширный C# API, который позволит Вам реализовать любой рендерер, необходимый Вашим играм.

PS5 также обеспечивает прогресс на стороне GPU благодаря новому графическому API NGGC. В NGGC мы воспользовались технологиями оптимизации, доступными на PS5, в недоступных ранее формах. Мы также переработали наш бэкэнд рендеринга, чтобы обеспечить эффективное использование нескольких ядер и улучшить переходы между состояниями GPU. В результате рендеринг становится более эффективным с точки зрения использования CPU, GPU и памяти, обеспечивая те же самые визуальные результаты, без повторного создания активов или игрового кода.

Облицованная визуализация
Пример фовеативного рендеринга в PS VR2

PS VR2 сможет использовать технику, известную как foveated rendering. Эта техника поможет Вам создавать VR-игры с лучшей визуальной точностью, уменьшая нагрузку на GPU, необходимую для рендеринга данной сцены. Foveated rendering используется для повышения производительности GPU за счет снижения качества изображения в периферийном зрении.

Аппаратное обеспечение PS VR2 может пойти еще дальше, используя отслеживание глаз для оптимизации рендеринга на GPU. Проецируя информацию о взгляде в пространство экрана, Вы можете сделать высококачественный рендеринг именно в той области экрана, куда смотрит игрок.

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

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

Благодаря этой возможности, рендеринг с фовеацией на PS VR2 может быть до 2,5 раз быстрее, без каких-либо потерь восприятия по сравнению с эквивалентным качеством изображения при стандартном стерео рендеринге. Мы также наблюдали ускорение до 3,6 раз, когда рендеринг с фовеацией сочетался с отслеживанием движения глаз. (Обратите внимание, что эти тесты представляют собой идеальное увеличение производительности, протестированное на демо-версии Unity, и цифры будут отличаться в зависимости от Вашей игры).

Foveated рендеринг на PS VR2 позволяет значительно снизить нагрузку на GPU при том же качестве восприятия - а в сочетании с технологией отслеживания движения глаз прирост производительности будет еще выше.

Входные элементы управления для PS VR2
PS VR2

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

Использование отслеживания движения глаз работает точно так же, как и другие устройства ввода XR. У Вас есть доступ к компонентам для eye gaze, которые представляют собой комбинацию положения и вращения обоих глаз, определяющих место в виртуальном мире. Вы можете использовать это, чтобы определить, куда в данный момент смотрит пользователь.

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

Вот пример простой прицельной сетки на основе взгляда:

public class GazeReticle : MonoBehaviour
{
Vector3 m_GazePosition;
Vector3 m_GazeForward;
Quaternion m_GazeRotation;

	// In this script, gazeTracker is driven by a TrackedPoseDriver component wired up to the Position/Rotation
// of the eyeGazePosition and eyeGazeRotation from PSVR2 headset in the Input System Actions.
public GameObject gazeTracker;

void Update()
{
RaycastHit hitInfo;
m_GazePosition = gazeTracker.transform.position;
m_GazeRotation = gazeTracker.transform.rotation;
m_GazeForward = m_GazeRotation * Vector3.forward;
if (Physics.Raycast(m_GazePosition, m_GazeForward, out hitInfo, 10.0f))
{
transform.position = hitInfo.point;
}
}
}

В этом сценарии Вы увидите объект трекера взгляда, который управляет движением прицела, используя тот же TrackedPoseDriver, который мы можем использовать для отслеживания любого другого контроллера XR в Unity. Этот параметр связан с параметрами eyeGazePosition и eyeGazeRotation, установленными в нашей карте действий Input System. Существует также TrackedPoseProvider, специально созданный для работы с отслеживанием движения глаз, если Вы планируете использовать более традиционные методы ввода Unity.

Контроллеры чувств

Новые контроллеры Sense Controllers доступны для разработчиков Unity и включают в себя интересные уникальные функции, которые можно найти только на PS VR2.

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

В новой системе PS VR2 используется технология отслеживания "изнутри наружу", обеспечивающая шесть степеней свободы как для гарнитуры, так и для контроллеров. Теперь Вы можете использовать большинство, если не все, стандартных стеков Unity XR, что упрощает разработку игр для более широкой платформы. Чтобы настроить сами контроллеры, мы открыли эти элементы управления вводом как через традиционный менеджер ввода Unity, так и через более новый пакет Input System.

Помимо отслеживания движения глаз и ввода данных с контроллера, SDK для PS VR2 также позволяет полностью контролировать тактильные ощущения технологии PS VR2 Sense. Это включает в себя тактильную обратную связь на основе звука, обеспечивающую более глубокие ощущения для игроков, а также более традиционную виброподдержку. Новые контроллеры также оснащены адаптивными триггерами, доступными в контроллерах PS5 DualSense, что означает, что Вы можете запрограммировать триггеры на различные стили обратной связи в зависимости от игрового контекста. В дополнение к тактильным ощущениям, основанным на контроллерах, в PS VR2 добавлена обратная связь с гарнитурой, позволяющая настраивать вибрацию в гарнитуре. Это можно использовать для оповещения игроков о каком-либо событии или в сочетании со звуком для придания ощущениям большей реалистичности.

Мы приложили все усилия, чтобы обеспечить Вам гибкость при интеграции ввода и тактильных ощущений PS VR2 в Ваши игры. Благодаря комбинации улучшений отслеживания и стандартному Unity XR SDK для PS VR2, Вы можете использовать весь стек Unity XR, включая такие вещи, как XR Interaction Toolkit, другие активы, зависящие от XR SDK, пакеты Unity Asset Store и другие пакеты, доступные через Unity Package Manager.

Эти возможности позволяют Вам исследовать новые формы игрового процесса и построения мира.

Начните работать с PS VR2

PS VR2 доступен уже сегодня, и Вы можете создавать для него игры с помощью Unity 2021 LTS и более поздних версий. Для рендеринга с фовеацией требуется Unity 2022.2 и более поздняя версия. Мы с нетерпением ждем, что эта гарнитура будет означать для индустрии VR, поскольку она открывает новый уровень производительности и управления вводом, позволяя Вам создавать еще более захватывающие и увлекательные впечатления.

Вам понадобится активная подписка Unity Pro (или лицензионный ключ Preferred Platform, предоставленный владельцем соответствующей платформы), чтобы получить доступ к этим специальным модулям сборки через форумы платформы разработчиков. Зарегистрируйтесь здесь, чтобы стать разработчиком PlayStation.

Поделитесь с нами своими играми для PS VR2 и PS5, используя хэштег #MadewithUnity в социальных сетях. Есть вопросы? Зарегистрированные разработчики PlayStation могут общаться с нами на форуме Unity на сайте разработчиков PlayStation.