Как разработать XR с помощью Oracle Cloud, используя Hololens, MRTK и Unity
19 марта 2022 г.Это первая статья из серии, посвященной разработке приложений XR и опыту использования Oracle Database и Hololens для метавселенной. Узнайте здесь о Spatial, AI/ML, Kubernetes и OpenTelemetry.
Это первая статья из серии статей о разработке приложений XR и опыте использования Oracle. В частности, я покажу приложения, работающие со следующим:
- База данных Oracle и облачные технологии
- Hololens 2 (гарнитура Microsoft Mixed Reality)
- API MRTK (набор инструментов для смешанной реальности) (v2.7.2)
- Платформа Unity (v2021.1.20f) (ведущее программное обеспечение для создания и работы с интерактивным 3D-контентом в реальном времени)
На протяжении всего блога я буду ссылаться на соответствующий семинар:
https://www.youtube.com/watch?v=MBaQ8ohI80E
Расширенная реальность (XR) и HoloLens
XR (расширенная реальность) — это общий термин для VR, AR и MR. Четвертая эволюция, метавселенная (вселенная и т. д.), или сетка, по сути, в той или иной степени относится к неизбежной интеграции XR в повседневную жизнь, аналогично тому, как сегодня выглядят смартфоны.
Хотя показанные концепции могут быть применены в той или иной степени к различным вариантам XR и устройствам, основное внимание уделяется тому, что будет наиболее распространенным и повседневным использованием XR в будущем: возможному существованию очков XR. В этом случае HoloLens используется для разработки и демонстрации, поскольку это самая передовая технология, которая существует в настоящее время для этой цели. HoloLens представляет голограммы и звуки в пространстве владельцу/пользователю, который может взаимодействовать с ними с помощью рук, речи и взгляда. Конечно, в HoloLens есть гораздо больше, чем это базовое определение, и в этом пространстве в целом еще много впереди.
Приложение(я) XR Hololens разработано с использованием MRTK, который предоставляет широкий набор API-интерфейсов, переносимых между устройствами. Это, конечно, в разной степени зависит от характера и возможностей устройства, но соответствует Apple ARKit, Google ARCore и т. д. Это также перспективно, так что оно будет применимо к будущим устройствам (очкам и т. д.). .) от других поставщиков, таких как Apple и другие.
Демонстрации
Я начну серию с демонстрации XR-версии популярного семинара Oracle LiveLabs «[Упрощение микросервисов с помощью конвергентной базы данных Oracle] (http://bit.ly/simplifymicroservices)». Он демонстрирует ряд различных областей современной разработки приложений, а также DevSecOps, включая Kubernetes, микросервисы и связанные шаблоны данных, Spatial, Maps, AI/ML/OML, Observability (в частности, трассировку), базовый Graph и т. д.
В будущих выпусках этой серии будут приводить примеры и объяснять поддержку XR таких функций Oracle Database, как Graph, IoT, Event Mesh, Sagas, ML, Unified Observability, тестирование хаоса и многое другое.
Кроме того, будущие выпуски будут посвящены отраслевым вариантам использования, а также облачным предложениям Oracle AI, таким как компьютерное зрение, распознавание речи и семантика текста, которые работают в тандеме с базой данных. В то же время я покажу больше аспектов и вариантов использования XR/MR с этими сервисами.
Видео 1: Интерфейс GrabDish (интернет-магазин/доставка еды)
Семинар по микросервисам и его версия XR используют приложение службы доставки еды «GrabDish», чтобы продемонстрировать упомянутые концепции.
Видео и этот блог разбиты на две демонстрации: я перечислю используемые технологии Oracle, а затем МРТК/Hololens, которые их используют. Unity — это инструмент разработки, который объединяет эти два компонента (альтернатива — Unreal Engine).
- Варианты блюд (суши, гамбургер, пицца) показаны в виде 3D-изображений. Эти изображения загружаются из облачного хранилища объектов через базу данных Oracle, которая их открывает.
- Пользователи могут выбирать все объекты рукой, голосом/речью или взглядом (просто глядя на них).
- Затем пользователи могут приблизить объект к себе, сделав жест рукой или сказав «подойди ко мне», и, как только изображение приблизится, могут повернуть его, просто глядя в ту или иную сторону, или могут схватить его и переместить таким образом. .
- После того, как еда выбрана, с помощью AI/ML/OML генерируется предполагаемая продажа напитка (в оригинальной мастерской это сочетание еды и вина, а в версии XR это сочетание чая с выбранными суши).
- «Пребывание» относится к длительному взгляду в определенном месте. Это демонстрируется, когда пользователь останавливает свой взгляд на чае и в результате слышит произносимое название чая. Этот звук также извлекается через базу данных.
- Предметы, выбранные для заказа, размещаются на новом ресурсе МРТК, называемом доком. Это очень полезная конструкция (служащая контейнером и механизмом категоризации), которая позволяет размещать на ней ряд элементов и изменять их размер так, чтобы все поместились.
- Затем для размещения заказа выбирается кнопка задержки с объемным пользовательским интерфейсом. Заказ вставляется в базу данных Oracle в формате JSON, а соответствующие запасы сокращаются с помощью реляционного SQL. Это демонстрирует два из множества типов данных, поддерживаемых конвергентной базой данных Oracle.
- Другая модель данных, поддерживаемая в базе данных, — пространственная. Это демонстрируется при выборе кнопки «Доставить заказ». Адреса ресторана и доставки (в данном случае, Риттенхаус-сквер в Филадельфии) отправляются в пространственную облачную службу Oracle, поддерживаемую базой данных Oracle, где API-интерфейс маршрутизации используется для геокодирования пути между двумя адресами и возврата результата в формате GeoJSON. Затем он передается в Map API (Google, BingMaps, Mapbox и т. д.), где он отображается на 3D-карте. Автомобиль следует по этой трассе луча между точками на 3D-карте в HoloLens. Опять же, этой картой можно управлять с помощью руки, речи и взгляда.
- Доступ к этим типам данных можно получить в базе данных Oracle через любое количество языков, а также через конечные точки REST.
Видео 2: "GrabDish" DevOps (Kubernetes, Health Probes, Tracing/OpenTelemetry и т. д.)
- Визуальное 3D-представление работающего кластера Kubernetes и связанных с ним ресурсов, включая пространства имен, развертывания, pod'ы (отправленные/диспетчеризированные сервисами) и т. д. показаны в той же иерархической взаимосвязи, что и в Kubernetes, а ресурсы/объекты могут быть захвачены. , вращать, перемещать и масштабировать и т. д. относительным и пропорциональным образом.
- Теги для этих ресурсов переориентируются так, чтобы они всегда были обращены к пользователю. Поскольку HoloLens постоянно пространственно отображает сетку среды, размещение объектов остается неизменным даже при перезапусках. Это, конечно, может быть расширено для включения удаленных аспектов и аспектов GPS, а сетка может использоваться совместно для цифрового двойника, удаленного размещения (например, расширенная удаленная помощь и т. д.).
- У каждого модуля есть меню с различными параметрами/действиями, включая возможность выбора и просмотра журналов этого модуля. Журналы можно читать, прокручивая их рукой, или просто читая их, поскольку для прокрутки и продвижения по странице используется отслеживание взгляда.
- Оригинальная мастерская открывается в браузере, чтобы установить здоровье, рекламируемое сервисом Заказ, на «вниз». Это делается для запуска проверки работоспособности Kubernetes для перезапуска службы. В приложении XR это отображается в виде красного цвета модуля и звукового оповещения о состоянии здоровья. Звук также имеет пространственное отображение. Источником является объект pod, поэтому, если pod находится в другом конце комнаты, звук исходит из другого конца комнаты.
- Визуальное отслеживание затем демонстрируется при размещении заказа. OpenTracing/OpenTelemetry используется для отслеживания потока информации через эту систему. Это транслируется и сопоставляется с визуальным представлением задействованных объектов Kubernetes и базы данных. Определенный порядок и теги саги выбираются для идентификации и конкретной трассы, и эти метки можно визуально наблюдать, протекая через граф узлов. Это, конечно, имеет больший потенциал в графовой аналитике.
Дополнительные мысли
См. [блоги, которые я публикую] (https://hackernoon.com/u/paulparkinson) для получения дополнительной информации о конвергентной базе данных Oracle, а также о различных темах, связанных с микросервисами, наблюдаемостью, обработкой транзакций и т. д.
Кроме того, пожалуйста, не стесняйтесь обращаться ко мне с любыми вопросами или предложениями для новых блогов и видео, так как я очень открыт для предложений. Спасибо за чтение и просмотр.
Спасибо замечательному Ruirui Hou за китайское аудио, Hiromu Kato за японское аудио, Chaosmonger Studio за автомобильную графику, Altaer-lite за графику суши и Gian Marco Rizzo за графику гамбургера.
Также опубликовано здесь: https://dzone.com/articles/develop-xr-with-oracle-cloud-database-on-hololens-ep-one-spatial-aiml-kubernetes-and- открытая телеметрия
Оригинал