Создаём простое VR-приложение под Android с помощью Unity. Где и зачем учиться разработке приложений для виртуальной реальности

VR-разработчик. Разработки VR-приложения: от идеи до монетизации

Duration 15:08:38

VR-разработчик. Разработки VR-приложения: от идеи до монетизации - Полный список уроков

Развернуть / Свернуть
  • Урок 2. Виртуальная, дополненная и смешанная реальность 00:03:01
  • Урок 3. Ваш первый VR-опыт 00:00:35
  • Урок 4. История виртуальной реальности (VR) 00:01:56
  • Урок 5. Куда движется VR 00:05:22
  • Урок 6. VR в России и за рубежом 00:03:41
  • Урок 7. Отличие приложений для ПК от приложений для VR 00:03:14
  • Урок 8. Поговорим об иммерсивности 00:03:16
  • Урок 9. Устройство очков VR 00:07:27
  • Урок 10. -Взаимодействие и трекинг. Часть 1 00:06:35
  • Урок 11. Взаимодействие и трекинг. Часть 2 00:06:13
  • Урок 12. Взаимодействие и трекинг. Часть 2 00:04:18
  • Урок 13. Мобильный VR. Простейшие гарнитуры 00:05:16
  • Урок 14. Мобильный VR. Фирменные гарнитуры 00:05:45
  • Урок 15. -Устройства управления VR 00:06:51
  • Урок 16. Игровая индустрия 00:04:02
  • Урок 17. Сфера образования 00:03:58
  • Урок 18. Маркетинг 00:04:13
  • Урок 19. Медицина 00:04:24
  • Урок 20. Архитектура и дизайн 00:05:48
  • Урок 21. Промышленность 00:03:38
  • Урок 22. Виртуальные путешествия 00:03:20
  • Урок 23. Другие области применения VR 00:05:59
  • Урок 24. Роли в проекте 00:07:13
  • Урок 25. Концепция приложения 00:05:15
  • Урок 26. Сценарий геймплея 00:04:27
  • Урок 27. Прототипирование 00:03:27
  • Урок 28. Дизайн, интерфейсы 00:06:08
  • Урок 29. 3D-дизайн 00:06:13
  • Урок 30. Анимация и свет 00:03:36
  • Урок 31. Программирование 00:01:42
  • Урок 32. Звук 00:04:26
  • Урок 33. Тестирование 00:03:40
  • Урок 34. Релиз 00:03:22
  • Урок 35. Поддержка 00:04:29
  • Урок 36. Что такое Unity 00:05:13
  • Урок 37. Сервисы Unity 00:04:40
  • Урок 38. Создание проекта 00:01:53
  • Урок 39. Изучение интерфейса программы 00:06:06
  • Урок 40. Типы объектов и их компоненты 00:08:23
  • Урок 41. Материалы и текстуры 00:03:34
  • Урок 42. Базовая физика 00:03:56
  • Урок 43. Постановка света 00:05:59
  • Урок 44. Префабы и ассеты 00:04:31
  • Урок 45. Управление проектом 00:03:15
  • Урок 46. Публикация проекта 00:04:51
  • Урок 47. О чем этот курс 00:00:44
  • Урок 48. Концепция курса 00:04:32
  • Урок 49. Создание 360-фотосферы 00:08:10
  • Урок 50. Построение первого мобильного VR-приложения 00:06:17
  • Урок 51. Импортирование GVR в проект 00:04:22
  • Урок 52. Cоздание Quad 00:05:38
  • Урок 53. Создание стереокамеры и прицела 00:05:29
  • Урок 54. Рэйкастинг 00:03:23
  • Урок 55. Введение в скриптинг 00:10:29
  • Урок 56. Создание своего первого скрипта 00:05:00
  • Урок 57. Заставляем скрипт работать 00:05:19
  • Урок 58. Публичные переменные 00:05:43
  • Урок 59. ипы и особенности пользовательских интерфейсов 00:04:30
  • Урок 60. Особенности VR-интерфейса 00:03:31
  • Урок 61. Приступаем к созданию интерфейса 00:07:52
  • Урок 62. Создаем объекты интерфейса 00:11:38
  • Урок 63. Настраиваем объекты 00:04:28
  • Урок 64. Добавляем цвета 00:06:21
  • Урок 65. Настраиваем размер интерфейса и добавляем иконки 00:07:59
  • Урок 66. Настраиваем работу интерфейса 00:12:46
  • Урок 67. Добавление интерфейса в VR 00:10:40
  • Урок 68. Как сделать активацию кнопки по заполнению прогресс-бара 00:08:02
  • Урок 69. Создание анимации для объекта 00:04:23
  • Урок 70. Анимирование объекта по ключевым кадрам 00:09:29
  • Урок 71. Squash and Stretch 00:11:47
  • Урок 72. Знакомство с аниматором 00:02:57
  • Урок 73. Управление анимацией 00:05:00
  • Урок 74. Расширение знаний о скриптинге 00:05:27
  • Урок 75. Настройка сцены для использования скрипта в VR 00:07:21
  • Урок 76. Создание стандартной системы частиц 00:05:14
  • Урок 77. Настраиваем Renderer, Emission и Shape 00:04:07
  • Урок 78. Основные настройки системы частиц 00:05:33
  • Урок 79. Настройки сцены и физического взаимодействия 00:10:19
  • Урок 80. Настройка освещения от частиц 00:06:38
  • Урок 81. Специфика перемещения 00:03:50
  • Урок 82. Подготовка сцены 00:09:56
  • Урок 83. Создание точек для перемещения (UI) 00:07:11
  • Урок 84. Создание точек для перемещения (particles) 00:11:49
  • Урок 85. Объяснение работы скрипта 00:12:24
  • Урок 86. Подготовка к перемещению игрока. Часть 1 00:11:23
  • Урок 87. Подготовка к перемещению игрока. Часть 2 00:08:46
  • Урок 88. Создание объекта для перезапуска игры 00:08:30
  • Урок 89. Скрипт перезапуска игры 00:06:39
  • Урок 90. Движущаяся стена 00:09:38
  • Урок 91. Аниматор для дверей 00:12:58
  • Урок 92. Анимирование сундука 00:08:18
  • Урок 93. Всплывающее сообщение в финале игры 00:10:02
  • Урок 94. Перезапуск игры 00:09:35
  • Урок 95. Настройка параметров графики 00:05:04
  • Урок 96. О чем курс 00:01:04
  • Урок 97. Настраиваем проект 00:07:55
  • Урок 98. Специфика визуализации аватаров 00:04:24
  • Урок 99. Текущие способы создания аватаров 00:03:50
  • Урок 100. Специфика работы с моушн-контроллерами 00:04:05
  • Урок 101. Создаем персонажа (на самом деле, руку) 00:06:10
  • Урок 102. Начинаем работать с материалами 00:04:27
  • Урок 103. Продвинутая работа со светом 00:04:34
  • Урок 104. Продолжаем работать со светом (лайтпробы) 00:06:43
  • Урок 105. Создаем заготовку для мишеней 00:07:58
  • Урок 106. Пишем свой рейкастер 00:13:57
  • Урок 107. Скрипт Physics Target 00:07:27
  • Урок 108. Настраиваем Physics Target 00:04:11
  • Урок 109. Создадим скрипт оружия 00:05:30
  • Урок 110. Создадим метод Shoot 00:10:20
  • Урок 111. Первый выстрел 00:11:41
  • Урок 112. Задержка между выстрелами 00:04:01
  • Урок 113. Три, три, чтоб чисто было! 00:09:14
  • Урок 114. Немного UI 00:07:10
  • Урок 115. Рефакторинг ImageProgressBar 00:07:07
  • Урок 116. Наш рэйкастер и ImageProgressBar (скрипты) 00:08:30
  • Урок 117. Наш рэйкастер и ImageProgressBar (редактор) 00:04:05
  • Урок 118. TargetManager 00:11:49
  • Урок 119. Начнем знакомство с NavMesh 00:04:40
  • Урок 120. Walking Target (начало) 00:08:08
  • Урок 121. Расширим TargetManager 00:07:21
  • Урок 122. Дорабатываем WalkingTarget 00:05:28
  • Урок 123. Продолжаем дорабатывать WalkingTarget 00:06:02
  • Урок 124. Визуализация жизней для WalkingTarget 00:04:42
  • Урок 125. Billboard 00:04:02
  • Урок 126. Поверженный враг 00:03:55
  • Урок 127. Дорабатываем Weapon 00:02:43
  • Урок 128. Дорабатываем Player 00:04:39
  • Урок 129. Перезапуск игры 00:03:20
  • Урок 130. О чем этот курс 00:01:44
  • Урок 131. Работа с Git. Часть 1 00:03:09
  • Урок 132. Работа с Git. Часть 2 00:06:45
  • Урок 133. Публикация в магазинах приложений 00:04:15
  • Урок 134. Написание статей 00:03:12
  • Урок 135. Нетворкинг 00:03:00
  • Урок 136. Кого ждут в VR и как понять, чего вы хотите 00:03:29
  • Урок 137. Подготовка резюме и портфолио 00:02:15
  • Урок 138. Сопроводительное письмо 00:02:27
  • Урок 139. Соцсети 00:03:38
  • Урок 140. Телефонный звонок 00:03:21
  • Урок 141. О чем вы сейчас узнаете 00:03:00
  • Урок 142. Интервью 00:02:29
  • Урок 143. Прохождение интервью глазами работодателя 00:03:53
  • Урок 144. Job offer 00:02:23
  • Урок 145. Адаптация на новом месте 00:06:45
  • Урок 146. Описание сути проекта 00:03:29
  • Урок 147. Проверка спроса 00:03:37
  • Урок 148. Модели монетизации 00:02:35
  • Урок 149. Про экономику 00:03:01
  • Урок 150. Примеры подсчета экономики 00:05:02
  • Урок 151. Этапы развития стартапа 00:05:23
  • Урок 152. Команда с точки зрения инвестора 00:06:44
  • Урок 153. Какой должна быть команда стартапа 00:08:33
  • Урок 154. Какие компетенции важны на старте 00:04:09
  • Урок 155. Кто такой advisor и зачем он нужен 00:04:42
  • Урок 156. Какими должны быть сотрудники 00:04:42
  • Урок 157. Как нанимать людей в команду 00:04:26
  • Урок 158. Как мотивировать сотрудников 00:03:29
  • Урок 159. Зачем нужен расчет рынка 00:05:37
  • Урок 160. Определение объема рынка 00:01:23
  • Урок 161. Масштабирование 00:02:37
  • Урок 162. Оценка конкурентов 00:06:12
  • Урок 163. Бизнес-модель 00:03:38

Не знаю, как вы, а лично я вот уже полтора года жду, когда наконец VR начнёт разрывать рынок. Сначала были картонные Google Cardboard, которые служили идеальным подарком хоть другу, хоть жене. Потом Microsoft выпустило к финалу Супербоула красочное видео , показав далекие от реальности возможности Hololens. И конечно, за 2016 год мы посмотрели и почитали немало обзоров о невероятно крутых свежеиспеченных VR устройствах, а также поиграли в первые качественные ориентированные на данные девайсы игры.

При всем этом популярность VR-приложений всё ещё далека от заданных приложений, но интерес это ничуть не снижает. Так что если революция надвигается, то сейчас самое время взять знамя в собственные руки. Но как?

Просто, как раз-два-три

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

Следующем шагом будет установка правильного «движка», коим в нашем случае будет являться Unity. На сегодняшний день он наилучшим образом настроен не только для создания VR-приложений с нуля, но и на перевод в данный формат уже существующих 3D творений. Кстати, блуждая по просторам интернета вы можете наткнуться на мнение, что опция VR у Unity изначально была разработана для взаимодействия с пакетом Google Cardboard SDK, поэтому использование под iOS доставит немало трудностей. Первая часть частично правдива, а вот вторая — нет. Во всяком случае реальных проблем замечено не было.

Третий и главный шаг — среда разработки приложения, это стандартные и всем известные IDE, принципиальной разницы в данном вопросе нет.

Ещё в помощь

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

Unreal Engine
Начиная с 4 версии вам также откроется доступ к возможностям работы с VR-графикой. Однако в силу некоторой сложности и дороговизны платформы, назвать Unreal приоритетным вариантом язык не повернётся.

InstaVR
Веб-сервис, позволяющий в несколько нажатий мышкой создать собственное VR-приложение. Прекрасно подойдёт для реализации простых задумок, будь то визуализация пейзажа или виртуальная 3D консоль.

Wonda VR
Специализированный сервис для создания VR-видео. Здесь действительно легко заниматься прототипированием, склейкой видео, наложением эффектов, но и цена начинается от 499 €. Впрочем, есть 14-дневная триал-версия для оценки возможностей.


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

Splash
Аналогичный сервис, доступный только для iOS. Ещё находится в стадии разработки, но уже имеет неплохой функционал.

Отличия от разработки игр

Принципиальных отличий нет. С точки зрения разработки VR-приложений и 3D игр подход почти полностью совпадает, разница заключается лишь в мелких деталях. Более того, если качество 3D игр сегодня напрямую зависит и от графической составляющей и от сюжетной, то VR позволяет одним из аспектов пренебречь и остаться успешным.

Полезная литература

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

Google VR — начнем с официального руководства от Google, повествующего о том, как сделать из простой коробки чудо-развлечение;

Microsoft VR — аналогичная пошаговая инструкция, но от Microsoft;

How to make a VR app with zero experience — полезная и наглядная статья, которая поможет вам создать своё первое приложение;

Creating a Gear VR app in Unity Free — а вот и обучающее видео, как с помощью своих прямых рук и Unity создать VR-конфетку.

В школьные годы я ездил на экскурсию в Лондон, и там впервые познакомился с виртуальной реальностью (VR) в игре Zone Hunter. Технология моментально меня зацепила, и я понял – в будущем хочу работать в этой сфере! Теперь, вот уже более 12 лет, я занимаюсь виртуальными промышленными тренажёрами и написанием ПО для VR-систем.

Я основатель и президент компании с названием «i’m in VR» . Мы предлагаем средства для создания VR-приложений, такие, как MiddleVR – связующее ПО, позволяющее 3D-приложениям (например, основанным на Unity) запускаться в любой VR-системе (комнаты виртуальной реальности, шлемы и другое). У меня есть блог про виртуальную реальность, который я начал вести задолго до того, как она стала популярной, и вы можете найти меня в твиттере .

Сегодня вы можете подумать, что создавать VR-приложения проще некуда – нужно просто согласовать движение камеры с отслеживателем Oculus Rift и готово. Иногда этого действительно хватает, но для подавляющего большинства случаев такой подход не сработает.

Главное в виртуальной реальности – эффект присутствия. Если человек не может погрузиться в игру, значит, вы что-то сделали неправильно. Можно обмануть разум, заставляя его воспринимать происходящее, как иной мир, но это не так просто, как кажется. Эффект присутствия – очень зыбкое чувство.

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

Виртуальная реальность в 2013-м

Виртуальная реальность погружает человека в трёхмерное окружение с помощью специальных шлемов, очков или других систем погружения. Поэтому мы часто используем термин iVR (immersive VR – виртуальная реальность с погружением), чтобы обособиться от виртуальных миров вроде Second Life или World of Warcraft. В начале 90-х эти технологии приковали к себе всеобщее внимание, но не смогли предоставить ожидаемых ощущений.

Однако, они продолжили своё развитие на фронте серьёзных игр, и сегодня превратились в полезные средства, применяющиеся в нескольких областях:

  • Обучение в виртуальных симуляторах на порядок эффективнее реальной практики: можно с высокой точностью управлять имитируемой средой, просматривать повторы и безбоязненно отрабатывать реальные манипуляции во множестве потенциально опасных ситуаций. На таких тренажёрах обучают хирургов, военных, полицейских, пожарных, стоматологов и даже рабочих по наружной отделке зданий! Это позволяет предприятиям экономить на дорогостоящих материалах и избегать различных рисков, давая более прозрачное представление о способностях практикантов.
  • У всех ведущих автопроизводителей есть VR-системы для тестирования дизайна и эргономики продуктов, которые ещё не увидели свет, позволяющие быстрее перебирать разные вариации по сравнению с реальными макетами. Это применяется и в производстве катеров, самолётов, тракторов, производственных линий, фабрик и даже кухонь! Взгляните на VR-приложения и системы от Peugeot или Ford !
  • Цифровые модели выглядят очень правдоподобно: вы можете со всех сторон рассмотреть свой будущий дом или оценить городскую планировку задолго до начала строительства. Для примера посмотрите демонстрационное видео от Enodo .
  • VR – полезное средство для исследования рынка в области розничной торговли: вы можете вживую взглянуть на внешний вид своего магазина до его постройки или переноса, проследить за движением посетителей и за направлением их взгляда. Это полезно при оценке расстановки фурнитуры и позволяет убедиться, что ваш дизайн выделяется среди прочих.
  • Виртуальная реальность – хороший способ лечения фобий: при боязни высоты можно перенестись на смоделированный утёс и прочувствовать свой страх. В этом случае помощь терапевта будет более эффективной, чем в реальных условиях на настоящей скале. То же самое относится и к боязни перелётов, пауков, собак и выступлений на публике. Таким, к примеру, занимается Стефан Бушар (Stéphane Bouchard) в Лаборатории киберпсихологии Университета Квебека в Оттаве.

И конечно же, виртуальную реальность можно использовать в играх! Но с середины 90-х таких игр было очень мало и создавались они, как правило, либо в исследовательских лабораториях, либо энтузиастами. Для сборки VR-системы и программирования самой игры требуются соответствующие навыки и оборудование. Насколько мне известно, за последние 10 лет не вышло ни одной коммерческой VR-игры.

Когда (не) стоит добавлять VR в игры

В первую очередь, нужно ответить на вопрос, действительно ли вашей игре нужна виртуальная реальность. Это как с 3D. Не каждое занятие автоматически становится интереснее в трёхмерном представлении, и что-то неподходящее будет ещё хуже выглядеть в VR.

В таком случае, где VR будет уместной идеей?

Задача виртуальной реальности – заставить вас почувствовать себя в другом мире, будь он реалистичным или не очень. Вообще, для меня эффект присутствия – это определение VR. Нет чувства присутствия – нет VR!

Очевидно, среди жанров, отлично подходящих для VR, будут игры с видом от первого лица. Вообразите Mirror’s Edge или Call of Duty в VR! В некоторые играх (Assassin’s Creed, Splinter Cell, или Gears of War) вид из-за спины потенциально можно переделать в вид из глаз, чтобы мы могли почувствовать себя в теле героя. Полагаю, мы увидим возрождение квестов и бродилок. Вероятно, виртуальная реальность появится и в совершенно других играх. Симуляторы Бога? Guitar Hero?

Но я считаю, что больше всех от VR выиграют игры, давящие на эмоции.

Хорроры могут быть очень впечатляющими. Ещё можно вспомнить про Heavy Rain. Отличная игра, я по-настоящему погружался в неё и сильно переживал. Однако, временами всё портилось неестественным взаимодействием, к тому же, там нет элемента физического присутствия. И вот тут может помочь виртуальная реальность!

VR как новый формат медиа

Тут я сразу должен предупредить: добавлять виртуальную реальность в игры может быть непростым делом, если её поддержка не задумывалась изначально. VR – это как радио или ТВ на раннем этапе развития: сначала по радио передавали только оперы, а по телевизору показывали одни спектакли. Понемногу люди стали создавать наполнение специально для этих новых форматов. Так операторская работа и монтаж стали базовыми понятиями для киносъёмки.

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

Эффект присутствия

Как я и говорил, для меня определение VR – эффект присутствия. Без чувства, что вы оказались в каком-то другом месте игра останется обычной интерактивной трёхмерной средой, а не настоящей VR-средой – даже, если в неё вложены миллионы долларов. Уж поверьте, я опробовал несколько таких, и это просто беда.

При наличии эффекта присутствия игрок будет демонстрировать естественные реакции и эмоции. На высоком обрыве вы испытаете страх высоты (гарантированно). Если вам бросят виртуальный мяч, вы попытаетесь поймать его. Если нарисованный человек спасёт вас от неминуемой смерти, вы ему улыбнётесь. Я серьёзно!

Эффект присутствия – это сложная и деликатная тема. На данный момент самые интересные его исследования проводит Мэл Слэйтер (Mel Slater). В довольно известной статье он разделят ощущение присутствия на два типа: когнитивное (разум) и персептивное (чувства).

Люди нередко говорят, что чувство присутствия у них вызывают игры, фильмы, книги и даже просто кем-то рассказанная история (как глубоки корни VR!). Это когнитивное присутствие – в иные миры вас переносит воображение.

Персептивное присутствие

Вышеперечисленные способы погружения не подразумевают персептивного присутствия, которое в самом деле реалистично обманывает ваши чувства. Зрение, слух, осязание, обоняние, проприоцепция (от лат. proprius - «собственный, особенный» и receptor - «принимающий»; от лат. capio, cepi - «принимать, воспринимать»), глубокая чувствительность - ощущение положения частей собственного тела относительно друг друга, далее гугли википедию)… Не забывайте, что человеческое восприятие не идеально: человеческий мозг многое упрощает. Знание этих ограничений – являющееся основой теории VR – позволяет вам создавать персептивные иллюзии, вроде ходьбы в неправильном направлении или пространств с невозможной геометрией.

Как же этого добиться?

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

Значит, вам нужна возможность совершать движения, и эти движения должны отражаться в виртуальном мире. Ваше тело вовлекается в процесс. Как сказал Антонио Дамасио: «Разум заключён в теле, а не в одном лишь мозге».

Прерывание эффекта присутствия

В свою очередь, это означает, что если действие не приводит к ожидаемому результату, разум чувствует неладное. Это называется прерыванием присутствия.

Если вы задаётесь хотя бы одной целью, создавая VR, этой целью должно быть поддержание эффекта присутствия. Чувствовать себя по среди пустой комнаты – это VR. Не чувствовать себя посреди Gears of War– это не VR.

Минимальная VR-система

Я бы рекомендовал отслеживание движений головы (повороты и смещения), хотя бы одной руки (повороты и смещение) и джойстик с парой кнопок. По личному опыту могу сказать, что такой минимум позволяет переступить определённый порог и мозг принимает другую реальность гораздо проще.

Для меня это значит, что сам по себе OculusRift– это (пока) не минимальная VR-платформа. Ему не хватает полноценного отслеживания головы, а отслеживания рук нет вообще. Я знаю, что всё это можно исправить своими силами, с помощью таких устройств, как Razer Hydra. Но пока у нас нет всеобъемлющей VR-платформы, производители не смогут спокойно полагаться на единый стандарт оборудования.

Задержки

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

Джон Кармак (John Carmack) говорит, что «при задержках менее 20 миллисекунд начинается настоящая магия – трёхмерный мир кажется незыблемым!»

Некоторые исследователи и вовсе советуют добиваться задержки менее 4 мс от момента начала движения до вывода необходимого изображения на экран. Для наглядного представления скажу, что при игре с фреймрейтом 60 fps между кадрами проходит 16 мс. Добавьте к этому задержку устройства ввода, которая может варьироваться от нескольких миллисекунд до более 100 мс в случае с Kinect, и задержку дисплея, которая тоже может быть как невысокой, так и более 50 мс у потребительских моделей VR-гарнитур.

В случае со стереоизображением нужно учитывать, что игра потребует обработки двух картинок одновременно. Будучи разработчиком, вы не можете ничего поделать с задержками ввода и дисплея, но вы должны обеспечить высокую производительность игры!

Последовательный мир не обязательно должен быть реалистичным

Мы разобрались, что персептивное присутствие – это реалистичный обман органов чувств. Когнитивное – обман разума, но не чувств – истекает из ощущения, что вы можете влиять на виртуальный мир и что события в нём происходят на самом деле. Это означает, что вы должны поверить в «правила» симуляции. Для этого нужно убедиться, что ваш мир будет не столько реалистичным, сколько связным и последовательным. К примеру, непоследовательность может проявляться в том, что игрок может взять со стола один стакан, но не может взять другой. Прерванный эффект когнитивного присутствия восстановить очень сложно. Игрок постоянно вспоминает, что вокруг не настоящий мир, и чтобы он снова показался реальным, потребуется время.

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

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

Вот почему я считаю, что наиболее сильное погружение из всех увиденных мной приложений достигнуто в Verdun 1916-Time Machine. Оно обманывает множество чувств за раз: зрение, обоняние, осязание… Но что самое интересное: для наилучших впечатлений там специально ограничили взаимодействие с миром. Вы можете только крутить головой, поскольку вы – раненый солдат.

Учитывая это жёсткое ограничение, будет очень просто удержать игрока от прерывания присутствия. Вы не можете шевелить руками, так что и сквозь объекты они не провалятся; вас не заставляют двигаться с помощью неестественных нажатий на кнопки. Было не раз замечено, что люди улыбались, когда видели подбегающего на помощь виртуального товарища!

Измерение присутствия

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

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

На этом закончим с философскими размышлениями и перейдём к практическим советам:

Масштабируйте 1 к 1

Масштаб игрового мира должен быть реальным. Камера должна располагаться на высоте, соответствующей нормальному человеческому росту (если, конечно, вы не хотите играть ребёнком, как в Among the Sleep). Движения головы не должны усиливаться (если вы не используете техники перенаправления).

Самый простой способ добиться реального масштаба: единица длины в виртуальном мире должна соответствовать реальной — 1 виртуальный метр равен 1 метру реальному. Поле зрения должно идеально совпадать с углами обзора вашего дисплея. В идеальном виртуальном мире (или большом промышленном VR-тренажёре) расстояние между глазами должно быть подсчитано с высокой точностью. Мозг будет обрабатывать все эти сигналы; вы можете не добиться эффекта присутствия или он будет нестабильным – к тому же пользователи могут почувствовать тошноту – если строго не следовать этому правилу.

Ознакомьтесь с аппаратным обеспечением

Ознакомьтесь с возможностями отслеживания: позволяет ли устройство отслеживать смещения или только повороты? Способен ли датчик сообщать данные позиционирования и в каких пределах? Какова его точность? Когда данные отслеживания перестают быть полезными? Ознакомьтесь с полем зрения: следуя совету о масштабе, вы не должны искажать виртуальное поле зрения. При узком поле зрения пользователь будет вынужден чаще мотать головой и рискнёт пропустить важные события на периферии. Ознакомьтесь с разрешением: если пользователь должен прочитать текст, придётся размещать его ближе перед глазами. Как и с разработкой под Android, ваша игра в итоге будет запускаться на большом количестве разных устройств. Вскоре нас может ожидать война множества платформ с разными характеристиками. Такие инструменты, как MiddleVR, помогут вам работать с разными VR-системами.

Не меняйте точку обзора

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

Боритесь с плохими привычками

У многих заядлых игроков есть плохие привычки: надев шлем, они будут сидеть ровно, будто перед телевизором. Те же, кто играет редко, сразу начнут оглядываться по сторонам. Игроков нужно отучать от сегодняшних игровых ограничений. В обучающих миссиях нужно мотивировать игрока оглядываться вокруг и двигать руками. Игра должна извлекать из этого пользу. Например, в одном моём недавнем прототипе враги появлялись справа, слева и сверху, и нельзя было двигаться/осматриваться кнопками или мышкой. Чтобы победить, пользователь вынужден поворачивать голову и целиться рукой. В другом моём недавнем прототипе единственным интерактивным объектом была свеча посреди очень тёмного окружения. Отличный способ заставить игрока исследовать местность: он берёт свечу и идёт в темноту, двигая и поджигая некоторые объекты при решении головоломок.

Поддерживайте активность игроков

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

Ещё одна интересная особенность Heavy Rain – события происходят в реальном времени, а значит вам нужно думать и действовать быстро: застрелить парня до того, как он убьёт моего товарища? Вас заставляют быстро принимать решения, и, как и в реальной жизни, вы никогда не узнаете, насколько правильными они были.

Придумывайте реалистичные головоломки

Опять пример из Heavy Rain: вам нужно быстро позвонить в одну из комнат гостиницы. Сможете вспомнить её номер за 15 секунд? Как и в жизни, приходится напрягать память, переживая сильный стресс.

И наконец, как можно усерднее работайте над эффектом присутствия

Создать эффект присутствия непросто. Начинайте с малого, тестируйте почаще. Работайте над присутствием постепенно, вносите небольшие изменения и тестируйте снова. Переживания игрока происходят у него в голове! Вы не создаёте переживания, а провоцируете их. Эффект присутствия должен быть естественным. Изучайте реакции пользователей и вносите изменения. Не месите в кучу все свои хорошие идеи только ради эффектного трейлера. Немало многообещающих роликов на деле оказывались отвратными играми.

Заключение

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

«Мы относимся к виртуальной реальности, как к чему-то совершенно новому, со своими возможностями и особенностями, позволяющими создавать формы медиа, с которыми люди взаимодействуют всем своим телом, принимая всё происходящее за реальность». – Мэл Слэйтер.

По материалам Gamasutra , автор Себастьен Кунц (Sébastien Kuntz).

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

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

Что понадобится

Телефон с гироскопом под управлением Android KitKat или более новой версии.

Unity3D — кроссплатформенный игровой движок версии 5.6 и выше.

Видео с обзором в 360 градусов.

Как создать приложение?

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

Шаг 1: Построить сферу ?

Создадим новый Project в Unity или новую Scene, если хотим интегрировать видеоплеер в уже существующий проект. Считайте, что Scene - это один уровень в игре, а Project - вся игра.

Поместите сферу (3D object → Sphere) радиуса 50 (Scale = 50, 50, 50) в центр Scene (Position = 0, 0, 0). Установите позицию камеры на 0, 0, 0. Камера - это глаза игрока: если поместить её не в центр, то видео будет искажённым.

Поместив камеру внутрь сферы, мы больше не видим её на сцене. Так происходит из-за того, что большинство игровых движков не отображает внутреннюю сторону 3D-объектов, так как нам почти никогда не нужно её видеть, а значит можно не тратить ресурсы на отрисовку.

Шаг 2: Перевернуть нормали сферы ?

В нашем случае нужно смотреть на сферу изнутри, поэтому мы вывернем её наоборот.

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

Применим программу Shader к Material сферы. Материалы в Unity контролируют внешний вид объектов. Шейдеры - это небольшие скрипты, которые рассчитывают цвет каждого рендерированного пикселя, основываясь на информации о материале и освещении.

Создадим новый Material для сферы, к нему применим Shader, код для которого можно скопировать отсюда . Этот шейдер вывернет каждый пиксель сферы, и изнутри сфера будет выглядеть как большой белый шар.

Шаг 3: Спроектировать панорамное видео внутрь сферы?

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

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

Шаг 4: Настроить поддержку Google Cardboard ?

Используя GoogleVR SDK, мы создадим стереоскопическое изображение. Совокупность эффекта рыбьего глаза, применённого к обеим частям разделённого наполовину экрана, и искажения пластиковых линз Google Cardboard создаёт иллюзию глубины картинки и погружения в виртуальную реальность.

Для того чтобы добавить GoogleVR SDK к проекту, скачайте и импортируйте плагин . Далее скорректируйте настройки Android:

  1. В верхнем меню выберите File → Build Settings . Добавьте сцену, если она еще не была добавлена, а из предлагаемых платформ выберите Android.
  2. Нажмите на Switch Platform . Переключение платформы займёт некоторое время.
  3. Нажмите на Player Settings . На панели инструктора появятся компоненты.

В окне Player Settings в секции Other settings :

  • Отметьте галочкой Virtual Reality Supported . В выпавшем окне Virtual Reality SDKs нажмите на +, добавьте в список Cardboard .
  • Выберите для вашего приложения уникальное имя и введите его в поле Bundle Identifier . Уникальные имена приложений под Android обычно имеют форму обратного доменного имени, например, com.example.CoolApp . Подробнее про это можно почитать в официальной документации и в Википедии .
  • В меню Minimal API Level выберите Android 4.4 Kit Kat (API Level 19) .

В панели Project Browser в папке GoogleVR/Prefabs выберите элемент GvrViewerMain и перетащите его на сцену. Задайте ему такую же позицию, как у центра сферы: 0, 0, 0 .

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

Шаг 5: Запустить приложение на Android ?

Это можно сделать двумя разными способами:

  • Выберите File → Build Settings . С помощью USB-кабеля подключите телефон к компьютеру, включите отладку по USB и нажмите Build & Run . Приложение загрузится сразу на телефон.
  • Или нажмите Build only . Приложение не загрузится на телефон, но зато сгенерируется в APK-файл, который можно отправить другим людям или выложить в магазин мобильных приложений.

В течение процесса сборки вас могут попросить выбрать корневую папку Android SDK. В этом случае скачайте Android SDK и укажите расположение его папки.

Осталось только запустить приложение и вставить телефон в Cardboard. Теперь вы можете испытать погружение в виртуальную реальность с обзором в 360 градусов у себя дома.

Что дальше

Поздравляем, вы создали видео-приложение с обзором в 360 градусов! Теперь вы на шаг ближе к разработке видео-приложения виртуальной реальности. Да, между ними есть разница. В первом случае наблюдатель может только смотреть в любом направлении. Во втором случае добавляется интерактивность, то есть контроль над объектами.

Приложение, которое вы только что создали, может послужить отправной точкой в построении более разнообразной виртуальной реальности. Например, в Unity можно наложить на верхний слой видео 3D-объекты и эффекты частиц.

Вы также можете попробовать поместить внутрь панорамного видеоплеера трёхмерное изображение некоторой окружающей обстановки и использовать видеоплеер как skybox. Для навигации пользователя по созданному окружению можно использовать этот

Виртуальная реальность (VR) – это не просто новая интересная технология, это абсолютно новый способ общения, который стремительно внедряется в нашу жизнь. Данный способ настолько молод и не изучен, что пока еще нет определенных правил и основ, на которые можно было бы с уверенностью опираться.
Впервые мир услышал о vr разработке еще в 80-х годах, но первые, по-настоящему важные и нужные знания о создании vr появились всего пару лет назад. Заказывайте у нас вр разработку стратегии для virtual reality видеоигр. Наша студия входит в топ компаний, которые создают игры для VR, а также это профессиональные разработчики виртуальной реальности, которые разрабатывают для виртуальной реальности не только контент, но и стратегии.
Компания «App Android» - лучший VR разработчик в Москве, поэтому следит за трендами и исследует различные направления в разработке виртуальной реальности, чтобы наши разработчики виртуальной реальности накапливали новые необходимые знания и методики. Это позволяет вывести качество разработки vr приложений на высший уровень.
У нас вы можете заказать создание VR приложений, разработку игр виртуальной реальности, а также:

  • Разработку vr контента. Мы создаем трехмерные презентации и визуализируем текстовую информацию, прекрасно подходит для представления продукции клиентам.
  • Разработку vr игр. Наши специалисты могут разработать любую игру, в абсолютно любом жанре, которая будет адаптирована под разные виды очков виртуальной реальности.
  • Видео 360 градусов. Данная услуга прекрасно подходит для презентации продуктов. Она позволяет максимально проинформировать потребителя. Также данный вид разработки под vr выполняет развлекательную функцию, используется для создания различных видео с функцией полного погружения.
  • Разработку vr приложений, которые прекрасно подходят для повседневного частного использования, а также могут служить для развития вашего бизнеса.
  • Проектирование дизайна интерьера. Данное направление vr разработки будет полезно архитекторам и различным компаниям, связанным с недвижимостью.

Разработка приложений виртуальной реальности

Для того чтобы создать хорошее приложение, необходимо:

  1. Интересная идея, которая хорошо подойдет под виртуальную реальность
  2. Навыки разработки трехмерных моделей
  3. Идеи реализации проекта

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

Разработка vr игр

У вас есть желание создать необычную игру в виртуальной реальности для бизнеса или развлечений? Вы обладаете невероятно яркими и крутыми идеями для создания завораживающего виртуального мира? Но для того, чтобы реализовать ваши мысли вам недостаточно профессиональных специалистов в сфере vr разработки? Вы по адресу! Компания «App Android» готова помочь вам создать лучшую игру виртуальной реальности.

Заказав услуги нашей компании, вы получите:

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