Инвестиции в VR/AR-стартапы достигли 5,4 млрд долларов в год. Развивается и отечественный рынок — технологии виртуальной реальности использует 21% крупнейших компаний. Рост рынка означает новые рабочие места, высокие зарплаты, новые и интересные задачи.

Выяснили, что учить разработчику, если он хочет работать на виртуальную реальность.

В каких проектах может работать VR-разработчик

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

Игры. Только в Steam в 2019 году вышло более 600 игр для виртуальной реальности. Это и игры, созданные специально для VR, и перенесенные в новый формат старые хиты. Вы можете устроиться в крупную студию или попробовать разработать игру самостоятельно.

У VR-хита Half Life Alyx 860 тысяч продаж практически на старте — это рекорд для VR

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

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

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

Илья Симонов, директор «КРОК Иммерсивные технологии»

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

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

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

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

«На рынке практически нет наработанного инструментария, который позволяет создавать VR-проекты быстро. Из-за этого командам приходится делать много кастомной работы. Умение создавать инструменты для автоматизации и оптимизации — ценный для VR-разработчика навык».

Илья Симонов, директор «КРОК Иммерсивные технологии»

Что учить, чтобы работать в VR-разработке

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

  • Разработка для виртуальных шлемов — например, игр и приложений для шлемов HTC VIve или Oculus. Базовые языки программирования — С# и С++. В основном разработчики используют специальные игровые движки, которые позволяют создавать интерактивность в 3D-сценах. Самые популярные — Unreal Engine 4 (UE4) и Unity.
  • Разработка для мобильных приложений. Помимо движков, нужно разбираться в создании приложений. Потребуется язык программирования Swift для iOS и Kotlin — для Android.
  • Разработка для web. Пригодятся два JavaScript-фреймворка — Three.js и Babylon.js. В них есть готовые инструменты эффектов и настройки видов камеры. Еще стоит посмотреть на конструктор VR-пространств Vizor.

Для новичков в VR есть готовые фреймворки — опенсорсные React 360 от Facebook и A-Frame. В них можно создать интерактивные сцены без знания программирования, по шаблонам. Приложение будет работать и на мобильных устройствах, и на компьютерах.

Графика

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

Рисовать модели разработчику не нужно, но разобраться в 3D-редакторах придется. Например, чтобы самому подправить картинку или сделать текстуры и анимации легче. Вот основной стек:

  • Autodesk’s Entertainment Creation Suite — пакет редакторов, включая популярные Maya и 3dsMax.
  • Blender — бесплатный инструмент для анимаций, рендеринга и даже захвата движений.
  • Blocks — инструмент от Google для создания простых 3D-моделей.
  • CryEngine — инструмент 3D-моделирования с поддержкой DirectX 12.
«VR-разработчику нужно разбираться в компьютерной графике, понимать подходы к разработке и внедрению 3D-контента — это предъявляет повышенные требования к производительности. Нужно знать, где и что можно оптимизировать, и заранее просчитывать нагрузку».

Дмитрий Кириллов, президент VR/AR-компании Modum Lab

Перенос из реального мира в VR

В промышленной разработке специалисту нужно работать с реальными объектами, воссозданными в интерактивном пространстве. Для этого потребуется отсканировать реальный объект и превратить его в VR-модель.

Пригодятся фотограмметрия и 3D-сканирование — грубо говоря, превращение фотографии с данными о размерах и положении в пространстве в 3D-модель. Вот инструменты:

  • Recap360 — используется для создания 3D-панорам и 2D-чертежей, которые затем можно редактировать.
  • Agisoft Photoscan — создает 3D-модели из фотографий.
«Чтобы работать в VR-проектах, разработчику нужно уметь работать с технологией фотограмметрии, лазерным сканированием, 3D-графикой, объемными моделями. Владеть разработкой с применением 3D-движков, знать математику и физику».

Илья Симонов, директор «КРОК Иммерсивные технологии»

Дополнительные технологии

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

Пригодится знание следующих инструментов и технологий:

  • DirectX — для полноценной работы с графическими решениями.
  • Vuforia — SDK для дополненной реальности, которая понимает работу виртуальных кнопок и реперных маркеров. Интегрируется в Unity.
  • Особенности настройки приложений под ПО популярных шлемов виртуальной реальности — например, Gear VR, HTC Vive и Oculus.
  • Программы для работы со стереозвуком. Для привязки звука к определенной точке VR-пространства придется работать со специальными решениями, например, G’Audio или Spatial Workstation.

UI/UX среды

Разработчику приходится не только писать код. Ему нужно понимать UI/UX среды — как программа должна отзываться на реакцию пользователя.

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

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

Дмитрий Кириллов, президент VR/AR-компании Modum Lab

Перспективы развития рынка VR

Разобраться в VR может оказаться хорошей идеей — технологию называют государственным приоритетом.

  1. После выхода хита Half Life Alyx спрос на виртуальную реальность в игровой индустрии, вероятно, будет только расти. О готовности развивать технологию заявил и Марк Цукерберг, он даже запустил VR-игру Horizon.
  2. Компания-разработчик вещей для VR/AR BeBop на CES 2020 показала специальные перчатки с тактильной отдачей. Такие технологии развивают как развлекательный сегмент VR, а также внедряют на предприятиях для простого и удобного управления сложными интерфейсами.
  3. О тенденции роста говорят и финансовые отчеты. По данным IDC, объем мировых расходов на AR и VR в 2018 году достиг 12 млрд долларов, а в 2019 году вырос до 20,4 млрд долларов. К 2023 году объем рынка может увеличиться на порядок — до 160 млрд долларов.
  4. Согласно исследованию AVRA Ассоциации, 68% промышленных компаний в России готовы инвестировать в AR/VR технологии. Аналитический центр TAdviser и «КРОК Иммерсивные технологии» считают: в оптимистичном прогнозе объем рынка промышленных VR/AR-решений в России может вырасти в 11,7 раз за четыре года.
«Индустриальные компании в России тестируют решения на базе VR/AR или уже их используют. Некоторые даже создают специальные центры компетенций. Они сконцентрированы только на VR/AR-технологиях или входят в состав комплексных подразделений, ориентированных на решение задач цифровой трансформации. Такие центры существуют, например, в «Газпром нефть» и «СИБУР». Соответственно, спрос на промышленных VR-разработчиков будет только расти».

Илья Симонов, директор «КРОК Иммерсивные технологии»

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

VR-разработчики нужны крупным промышленным предприятиям и медицинским корпорациям. Еще одно потенциальное применение — виртуальная реальность в автономных шлемах, ведь повсеместное внедрение 5G уже практически началось. Но последнее только догадки.

Оригинал статьи на VC.ru

Что нужно знать VR-разработчику

  1. Один из популярных игровых движков — их используют для моделирования интерактивных сцен. Подойдут Unreal Engine 4 и Unity.
  2. Базовые языки программирования — C++ и C#.
  3. SDK для 3D-моделирования, например CryEngine.
  4. Средство для анимации, рендеринга или захвата движений — начните с Blender.
  5. Инструмент для воссоздания реальных объектов в виртуальном пространстве — например Recap360
  6. Приложение для работы со стереозвуком — Spatial Workstation.