Впервые на русском: Документация Unity для разработчиков. Обзор виртуальной реальности

Начинаем публикацию эксклюзивной информации для разработчиков Unity. Этот раздел посвящён обзору виртуальной реальности.

Документация Unity для разработчиков:

  1. Обзор виртуальной реальности
Введение в Unity VR

Unity внедрила встроенную поддержку некоторых устройств виртуальной реальности. В этом руководстве основное внимание будет уделено семейству устройств виртуальной реальности от Oculus, в частности, Oculus Rift Development Kit 2 (DK2) и потребительской версии Gear VR (мобильная гарнитура, для которой требуются смартфон Samsung Galaxy S6, S6 Edge, S6 Edge + или телефон Note 5). Мы не фокусируемся на Note 4, который ранее поддерживал в первом выпуске Innovator Edition Gear VR, хотя мы ожидаем, что некоторые сэмплы виртуальной реальности будут работать и на этом устройстве (хотя и с более низкой производительностью) у тех из вас, у кого устройство есть.

Другие шлемы виртуальной реальности также будут работать с Unity, такие как HTC Vive, и эта документация будет обновляться в будущем, чтобы охватить все платформы виртуальной реальности.

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

Добавление виртуальной реальности в проекты Unity

Убедитесь, что у вас установлен Oculus runtime 0.8 вместе с Unity 5.3 или выше.

Поддержка виртуальной реальности включается при нажатии на «Редактировать» > «Настройки проекта» > «Игрок» > «Другие настройки» > «Рендеринг» (Edit > Project Settings> Player > Other Settings > Rendering).

Затем включите флажок «Виртуальная реальность» в «Инспекторе» (Inspector).

Включение настроек виртуальной реальности

Во время рантайма их можно переключить, используя свойство UnityEngine.VR.VRSettings.enabled в коде C#, как показано ниже:

 

using UnityEngine;

using UnityEngine.VR;

 

public class ToggleVR : MonoBehaviour

{

//Example of toggling VRSettings

private void Update ()

{

//If V is pressed, toggle VRSettings.enabled

if (Input.GetKeyDown(KeyCode.V))

{

VRSettings.enabled = !VRSettings.enabled;

Debug.Log(«Changed VRSettings.enabled to:»+VRSettings.enabled);

}

}

}

Предварительный просмотр виртуальной реальности в Unity

Когда поддержка виртуальной реальности включена в редакторе Unity и подключен DK2, в режиме воспроизведения отображается дисплей Game на DK2 – а также в редакторе. Это позволяет значительно ускорить тестирование и итерацию – так как нет необходимости создавать отдельно исполняемый файл проекта для просмотра изменений в виртуальной реальности. Разработчики, которые ранее создали контент виртуальной реальности, заметят, что изображение, разделённое на два кадра, теперь заменяется одним изображением.

Включение VR Cube

Обратите внимание, что нет необходимости создавать одну камеру для глаз; все камеры будут отображаться в виртуальной реальности, за исключением тех, у которых назначена текстура рендеринга. Для получения дополнительной информации о «Структурах рендеринга» см. «Руководство». Оптимизации автоматически применяются для того, чтобы сделать обе камеры менее энергозатратными для производительности за счёт отбраковки и отрисовки теней за один раз для обоих глаз.

Дополнительную документацию по темам виртуальной реальности можно найти в «Руководстве Unity», а также в «Unity Scripting API».

Рекомендации по оборудованию и программному обеспечению для разработки виртуальной реальности в Unity

Поскольку виртуальная реальность – очень новая среда, на момент написания этой статьи есть некоторые ограничения на аппаратное и программное обеспечение, которые изложены ниже.

Устройства

Достижение требуемой частоты кадров для шлема виртуальной реальности важно для хорошего пользовательского опыта виртуальной реальности, и оно должно соответствовать частоте обновления дисплея, используемого в шлеме виртуальной реальности. На DK2 должно быть 75 кадров в секунду, а для Gear VR – 60 кадров в секунду. Если частота кадров ниже этого, это становится особенно заметно для пользователя и часто приводит к тошноте.

Хотя достижение согласованной частоты кадров имеет важное значение, графический процессор на прилагаемом компьютере также должен быть способен выводить требуемое разрешение на частоту обновления дисплея шлема виртуальной реальности. В случае DK2 это 1920×1080 при 75 Гц. Имейте в виду, что если вы собираетесь разрабатывать контент для коммерческой версии выпущенного Oculus Rift (CV1), он имеет разрешение 2160×1200 на 90 Гц и будет более требовательным, чем DK2.

Если вы используете DK2, убедитесь, что ваше оборудование позволяет выводить требуемое разрешение с требуемой частотой обновления. Многие ноутбуки используют чипсет для переключения между дискретными и интегрированными наборами микросхем, и эти чипсеты обычно не могут выводить 1920×1080 при 75 Гц, что приводит к неоптимальному опыту виртуальной реальности и тошноте. Пожалуйста, обратитесь к документации Oculus, а также к руководству по компьютеру Oculus Ready для получения советов по рекомендованному оборудованию.

Программное обеспечение
  • OS X: На данный момент можно разработать на OSX 10.9+ с Oculus 0.0.5, но, поскольку Oculus приостановил разработку для OS X, мы рекомендуем Windows для собственных функций виртуальной реальности в Unity.
  • Windows: Windows 7, 8, 8.1 и Windows 10.
  • Android: Мы рекомендуем использовать ОС Android Lollipop 5.1 или выше.
  • Драйверы видеокарт: убедитесь, что ваши драйверы обновлены. Старые драйверы могут не поддерживаться. Пожалуйста, проверьте утилиту настройки Oculus, чтобы узнать, есть ли проблемы с вашим драйвером.
  • Oculus Runtime: Чтобы использовать поддержку виртуальной реальности в Unity 5.3, используйте Oculus Runtime 0.8 или новее.

 

Примечание: Данный материал представлен для ознакомления, при перепечатывании ссылка на оригинал обязательна. Если вы хотите принять участие в помощи проекту, пишите на editor@vrgeek.ru

Если вы разработчик и вы хотите продолжить свою карьеру в лучших компаниях России, пишите на editor@vrgeek.ru с пометкой «Работа мечты», и мы поможем вам с этим.