Виртуальная реальность
Тема 3: Как запускаются VR-проекты?Урок 2: Как оживает VR мир
- Видео
- Тренажер
- Теория
В этом модуле вы узнаете:
- как появляются и «оживают» 3D-модели;
- как в VR-мирах воссоздается дождь и другие привычные нам явления (и их звуки);
- из каких этапов состоит процесс разработки VR-приложений;
- и какие хитрости используют профессионалы, чтобы добиваться максимально комфортного и интересного опыта в виртуальной реальности.
Разработка VR-приложения: основные шаги
Когда концепт и бюджет утверждены, команда исполнителя начинает самый долгий и интересный этап проекта — создание виртуального мира, который существовал до этого лишь на бумаге. Далее мы разберем ключевые этапы подробнее, а пока запомните общую последовательность — так все выглядит со стороны подрядчика.
Как появляются персонажи, предметы и другие элементы VR-мира
Львиная доля того, что вы увидите в виртуальном мире (здания, предметы, техника, фигуры, плоскость, на которой все они находятся), — это 3D-модели. Существуют разные подходы к их созданию. Мы рассмотрим самые популярные — вы уже наверняка видели их, если играли в трехмерные компьютерные игры.
Как создаются трехмерные модели: полигональное моделирование
По сути, любой трехмерный объект в VR — это набор плоских поверхностей разной формы и размера: треугольников, квадратов и других многоугольников — их называют полигонами. Полигональные модели дорабатываются на базе готовых решений, которые можно купить, либо конструируются с нуля. Модели для VR могут создаваться и на основе 3D-копий реально существующих объектов и людей (для этого оригиналы специальным образом сканируют).
Если полигонов у модели мало, мы увидим low-poly (низкополигональную) графику. Модели и весь мир будут выглядеть угловато и не очень реалистично. Зато нам не понадобятся большие компьютерные мощности для просчета картинки в приложении. |
Если полигонов достаточно (то есть каждый полигон имеет меньшую площадь), мы увидим high-poly (высокополигональную) графику. Модели будут выглядеть лучше и реалистичнее благодаря количеству деталей, но для их отображения потребуются более мощные шлемы. Поэтому часто на этапе сборки приложения high-poly графику специально оптимизируют, сокращая число полигонов. |
Когда и зачем это нужно:
|
Когда и зачем это нужно:
|
Не все, что вы увидите в VR, обязательно будет специально созданной трехмерной моделью. Обычно моделируются те объекты, предметы и персонажи, с которыми пользователь будет взаимодействовать в виртуальном мире. А, например, облака или огонь могут создавать другими методами.
Как модели обретают цвет и нужный вид
Когда трехмерная модель готова, художники «разворачивают» получившийся объект на плоскость, чтобы придать ей нужные цвета. Это процесс называют текстурированием, и выглядит он так: специалист рисует на плоской развертке то, что должен увидеть пользователь, а программа сама затем накладывает получившееся изображение на полигоны.
Часто процесс придания модели сходства с объектом реального мира на этом не заканчивается. Ведь у предметов вокруг нас обычно много отличительных свойств: они могут быть шершавыми, по-разному отражать свет и т. д. Все эти свойства позже будут заложены в модель и наряду с цветом образуют «материал», финализируя внешний вид объекта.
Как модели начинают двигаться
Готовая модель — это красивый, но пока статичный набор затекстурированных полигонов.
Если модель должна двигаться и реагировать на действия пользователя, обычно к ней добавляется анимация. Это самый популярный способ «оживления» 3D-объектов.
Чтобы подготовить модель к анимации, отдельный специалист — риггер — создает для нее каркас. Сам каркас (он же «риг»)чем-то напоминает наш скелет, однако «кости и суставы» делают не только персонажам, но и остальным объектам, которые нужно анимировать. От сложности «скелета» во многом зависит, насколько плавными получатся движения модели. Создав больше элементов в каркасе, мы добьемся более реалистичной анимации, но и работать над ней будем дольше.
Когда каркасы готовы, модель попадает к специалисту по анимации — аниматору. Его работа чем-то похожа на работу кукловода: он «двигает» каркас за «кости» и «суставы», задавая отправную, конечную и основные промежуточные точки для движений. Затем компьютер просчитывает все промежуточные перемещения и точки для анимации, чтобы обеспечить оптимальную и комфортную для восприятия частоту обновления кадра. Такая анимация называется покадровой, или Keyframe-анимацией.
Если мы хотим получить максимально реалистичную анимацию, можно записать движения настоящих актеров или объектов, прикрепив к ним маркеры, — эта технология называется MoCap (от англ. motion capture — «захват движений»). Данные, полученные с маркеров, будут сразу интерпретированы программой как движения «костей» рига, которые аниматор сможет поправить или дополнить при необходимости.
Чего можно добиться с визуальными эффектами и звуком
После просмотра видео, постарайтесь ответить на эти вопросы:
- Сразу ли художники рисуют полную копию объекта?
- Какая главная задача стоит перед аниматорами?
- Какие задачи помогает решать звук в приложении?
- Какие задачи помогают решать визуальные эффекты?
Как создается VR-приложение
Параллельно с работой над 3D-моделями, звуками и визуальными эффектами создается сцена, в которой будет происходить действие, разрабатываются интерфейс будущего приложения, а программисты пишут его логику — код, который свяжет все между собой, проиграет звук, когда нужно, и т. д. Часть этих процессов сразу происходит на игровом движке. Когда все элементы приложения будут готовы, их также соберут на движке в одно целое.
Игровой движок — это программное обеспечение, которое позволяет разрабатывать элементы игрового мира или работать с уже созданными в разных программах моделями, эффектами и т. д., соединяя их в единое и работающее целое. Обычно VR-студии используют те же движки, что и создатели компьютерных игр: Unity, Unreal Engine или другие. Сегодня такие движки обладают множеством удобных инструментов для работы с проектами виртуальной реальности, ускоряя разработку и снижая затраты. У популярных движков также есть свои магазины с готовыми моделями, эффектами и даже игровыми механиками — их можно купить, чтобы ускорить создание прототипа, либо оптимизировать и пересобрать для экономии на этапе разработки.
Как организовать поддержку проекта после запуска
Когда проект на движке готов, он проходит ряд тестов, а затем портируется, то есть переносится на нужное устройство. Как заказчик вы будете участвовать в промежуточных просмотрах, давать правки и т. д. Когда вы примете финальную версию, разработка будет считаться оконченной. Приложение можно использовать, но лучше заранее договориться о его технической поддержке.
Когда вы начинаете использовать приложение «в бою», может произойти всякое: программа может выдать ошибку при нестандартных действиях, пользователи могут чего-то не понимать, шлем, контроллеры или ПК могут сломаться или начать вести себя иначе из-за незапланированных ситуаций. Как и в любом проекте, вы не можете все контролировать. Но вы точно можете заранее предсказать самые критичные ситуации и придумать решение для них. Тут вам также поможет подрядчик.
Когда проект будет близиться к завершению, встретьтесь с командой подрядчика и обсудите с ними следующие вопросы:
- Что мы делаем, если в процессе использования приложения что-то пошло не так? Как мы исправляем ошибку?
- Что делать, если техника вышла из строя? Кто может организовать ее оперативную замену и починку?
- Может ли исполнитель участвовать в маркетинге проекта и чем готов помочь?
И так далее. Поймите, с чем может помочь внешняя команда, а какие зоны ответственности лучше закрыть самим или силами другого внешнего подрядчика.