AR app для SAP

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

Клиент

SAP SE — немецкая компания, ведущий мировой производитель программного обеспечения для организаций. У SAP более 400 000 клиентов и более 102 400 сотрудников по всему миру.

Задача

Сделать приложение с AR для визуализации строительства нефтедобывающий скважины

SAP разрабатывает программное обеспечение для многих отраслей. В том числе у него есть решения для планирования и контроля строительных операций. Чтобы презентовать их для клиентов, SAP использует демо-стенд, который состоит из экрана и интерактивной песочницы с кинетическим песком. На экране клиент видит, как планируется и ведется проект капитального строительства в системе SAP S4/HANA. А в интерактивной песочнице идет процесс строительства нефтедобывающей скважины. Это помогает потенциальному клиенту представить процесс целиком и соотнести этапы строительства с ИТ-инструментами.  

Сперва SAP использовал двухмерное изображение. На песочницу сверху мощным проектором проецировалась картинка. Но проблема была в том, что 2D не позволяло детально показать процессы. На плоской картинке не было видно, как строится каждый элемент: как происходит отсыпка участка, установка станков-качалок, прокладка трубопровода до завода по переработке нефти. 

Тогда для большей наглядности SAP решил разработать AR-приложение. С этой задачей они и обратились в Surf.

Вызовы

  • Перенести двухмерный стенд SAP в AR-приложение с игровыми элементами. 
  • Добиться, чтобы все объекты в приложении выглядели реалистично. Для этого пришлось решить много сложностей с рендерингом поверхностей и материалов. 
  • Оптимизировать приложение, чтобы оно работало на айфонах и айпадах.

Что получилось

AR-приложение, где на ваших глазах идёт виртуальная стройка. Клиент может сам выбрать место,  куда поставить добывающую скважину, проложить ЛЭП и нефтепровод. Между этапами можно переключаться — например, перейти сразу к прокладке нефтепровода. За счет 3D анимации изображение оживает, виден не просто результат, а каждый из этапов стройки. 

Приложение работает на iOS-устройствах с лидаром.

Как мы это сделали

Игровые элементы и «живые» 3D модели для SAP

Для заказчика было очень важно при помощи 3Д показать, как работает стройка, что меняется или добавляется на каждом этапе. А ещё у SAP были свои 3Д модели, которые нужно было встроить в приложение. Это ограничивало в выборе технологий. Так, например, экспорт моделей в платформу для AR-разработки от Apple ARkit оказался очень сложным и долгим, поэтому от этого варианта отказались. 

Кроме того, в приложении было нужно добавить много игровых элементов, например, пользователь может жестами менять расположение ЛЭП или выбирать место под строительство завода. Поэтому для его реализации мы выбрали игровой движок Unity. 

Unity — межплатформенная среда разработки компьютерных игр. Позволяет создавать приложения, работающие на более чем 25 различных платформах.

Пробная версия. Старт без багов

Сначала создали пробную версию приложения. В ней обкатали все 3D модели. На этом же этапе выявили возможные проблемы с визуализацией и проверили работу лидара c Unity. В результате, нашли и решили многие проблемы на самом старте.

Оптимальная работа на iOS-устройствах

Клиенту было важно оптимизировать приложение под iPhone и iPad. Для этого пришлось упростить 3D-модели, чтобы приложение обрабатывало их быстрей. 

Сложней всего оказалось оптимизировать приложение под последнюю модель iPhone 12 pro, поэтому работу каждой новой фичи проверяли в первую очередь на ней. 

Реалистичность объектов и работа без ошибок

Часть проблем пришлось решать опытным путём. 

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

Рендерер — механизм, с помощью которого происходит преобразование 3D-моделей в изображение. 

Приложение разрабатывали под iOS-устройства с лидаром. Лидар строит сетку, на которой потом крепятся AR-объекты. При разработке столкнулись с интересной особенностью: закреплённые на сетке объекты начали проваливаться “под землю”. Проблема оказалась в разрешающей способности лидара. Решили её, “приподняв” объекты в виртуальном пространстве на три сантиметра от земли. Высоту подбирали опытным путем. Оказалось, что если объекты расположить ниже, это значение меньше величины погрешности и они проваливаются. Если поднять объекты на 10 см, это выглядит нереалистично. 

Удобное управление. Зум и переключатель между этапами

Строительство нефтедобывающей скважины в приложении происходит по этапам.

  1. Георазведка
  2. Начальный этап строительства
  3. Прокладка ЛЭП
  4. Появление электричества и завершение стройки
  5. Прокладка нефтепровода

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

А чтобы клиент мог рассмотреть какой-нибудь объект детальней, мы добавили в приложение зум.

Результат 

Приложение сделали без ТЗ, просто на основе на функциональных требований и физического стенда. Для меня лично это очень высокая оценка профессионализма команды, которая не только может хорошо разработать приложение, но и быстро вникнуть в суть бизнес-задачи. И на выходе получился именно тот результат, который был нужен. Приложение работает на iOS-устройствах с лидаром, получается очень точное позиционирование по отношению к физическим объектам на стенде.
Евгений Симонович

Старший архитектор бизнес-решений

Давайте создадим мобильное приложение под ваши задачи вместе
Обсудить проект
Обсудить проект