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

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

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

  1. Обзор виртуальной реальности
  2. Проекты сэмплов для виртуальной реальности
  3. Начало работы с VR Development. Основы
  4. Начало работы с VR Development. Создание первого проекта виртуальной реальности
  5. Начало работы с VR Development. Полезная информация для разработки виртуальной реальности
  6. Обзор VREyeRaycaster, VRInput и VRInteractiveItem
  7. Обзор SelectionRadial и SelectionSlider
  8. Примеры взаимодействия в VRSampleScenes. Взаимодействия в Menu scene
  9. Примеры взаимодействия в VRSampleScenes. Взаимодействие в Лабиринте
  10. Примеры взаимодействия в VRSampleScenes. Взаимодействие в Тире 180 и Тире 360
  11. Вращение и позиционирование головы в виртуальной реальности
  12. Взаимодействие с тачпадом и клавиатурой во время игры в виртуальной реальности
  13. Примеры VRInput в VR Samples
  14. Пользовательские интерфейсы для виртуальной реальности
  15. Взаимодействие с пользовательским интерфейсом

Используя VREyeRaycaster, VRInput и VRInteractiveItem, как описано в статье «Взаимодействие в виртуальной реальности», мы можем создать базовое взаимодействие с элементами пользовательского интерфейса, создав класс, который подписывается на события VRInteractiveItem.

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

Для получения дополнительной информации об использовании Unity UI в виртуальной реальности см. статью Unity’s UI System in VR в блоге Oculus, где они также предоставляют образцы кода.

Пользовательский интерфейс на примерах из VR Sample

Давайте посмотрим, как некоторые из описанных выше методов демонстрируются в сценариях VR Sample.

Меню

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

Лётчик

Введение в игру и интерфейс конечной игры располагается статически в пространстве игры:

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

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

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

Лабиринт

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

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

Тир 180

Статический пространственный интерфейс снова используется для секций начала и конца игры:

Как уже упоминалось выше, мы используем диегетический интерфейс на пистолете, чтобы отобразить оставшееся время и очки:

Тир 360

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

Опять же, диегетический пользовательский интерфейс повторно используется на пистолете:

 

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

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