Мы продолжаем серию статей о Windows Mixed Reality и разрабатываем приложение смешанной реальности с нуля на Unity в формате лабораторной работы.
Такое приложение вы можете создать самостоятельно, параллельно с публикацией статей.
В этой части мы рассмотрим поддержку контроллера движений и добавим сборный динамик в виртуальную гостиную.
Весь гайд будет состоять из 5 частей.Он будет обновляться каждую неделю.
Ниже вы можете перейти к нужной вам части.
Часть 1: Ээкспортировать приложение UWP для Windows Mixed Reality из Unity. ; Часть 2: Настройка среды (VR) ; Часть 3: Контроллеры ; Часть 4: Пространственный звук ; Часть 5: HoloLens и графика .
Контроллеры
В этой лабораторной работе мы создадим сборный динамик и добавим его в виртуальную гостиную.Далее мы добавим в нашу сцену поддержку контроллера движения, чтобы пользователь мог перемещать и вращать динамик.
Добавление динамика в комнату
- Перейдите в папку «Модели» на панели «Проект» и перетащите модель «Speaker3» на панель «Иерархия», чтобы модель стала корневым объектом, а не дочерним элементом одного из объектов сцены.
- Переименуйте динамик, щелкнув его правой кнопкой мыши и выбрав «Переименовать».
Назовите это Спикер.
- Выберите объект «Динамик» в сцене, затем на панели «Инспектор» измените следующие свойства трансформации:
- для параметра Scale установите значения (0,02; 0,02; 0,02);
- Для параметра Position установите значения (2,68; 0,14; 2).
Добавление поддержки контроллера
Раньше, когда мы применяли к нашей сцене настройки смешанной реальности, мы добавляли поддержку контроллера движения.Давайте вспомним, как эти параметры влияют на работу контроллеров движения в нашей сцене.
- Добавленный нами элемент MixedRealityCameraParent имеет дочерний объект под названием MotionControllers, а внутри него находится сценарий MotionControllerVisualizer. Этот скрипт отслеживает и визуализирует модель контроллера (перемещает ее, вращает и обрабатывает входные события).
- Добавленный нами объект InputManager прослушивает входные события из различных источников.
Его дочерние элементы включают объекты для Mouse, Touch, GesturesInput и Xbox. Объект GestureInput имеет элемент InteractionInputSource, который ожидает поступления событий контроллера движения от InteractionManager. Это события контроллера движения, которые будут использоваться для управления нашим динамиком.
Управление динамиком
Чтобы пользователь мог перемещать и вращать динамик, к нему необходимо добавить физические свойства, чтобы мы могли определить, что взгляд направлен на динамик.
- Выберите объект «Динамик» на панели «Иерархия», чтобы изменить его свойства и поведение на панели «Инспектор».
- На панели «Инспектор» нажмите «Добавить компонент», затем найдите и выберите компонент Box Collider.
- В добавленном компоненте Box Collider установите для свойства Size значение (21, 20, 53), чтобы оно полностью окружало динамик.
2. Поскольку нам не нужно масштабировать динамики, масштаб масштабирования можно установить на 0. Компонент BoundingBoxRig добавляет гизмо к игровому объекту (в данном случае динамику).
С помощью гизмо пользователь может вращать, перемещать и масштабировать объект с помощью контроллеров движения или жестов HoloLens (касаться и манипулировать).
3. Выделив объект «Динамик», нажмите «Добавить компонент» и в поле поиска введите «Управление двумя руками», затем щелкните сценарий, выделенный в результатах поиска.
4. Установите для режима манипуляции этого компонента значение «Вращение», чтобы предотвратить масштабирование динамиков.
Этот скрипт позволяет вам управлять объектами обеими руками, используя контроллеры движения или жесты касания и удерживания в HoloLens. 5. На панели «Проект» найдите префаб BoundingBoxBasic в папке Assets → HoloToolkit → UX → Prefabs → BoundingBoxes и перетащите его в прямоугольник свойств Bounding Box Prefab) Сценарий Bounding Box Rig в объекте «Динамик».
6. Также перетащите префаб BoundingBoxBasic на свойство «Префаб ограничивающей рамки» компонента Two Hand Manipulable.
Префаб BoundingBoxBasic содержит визуальные элементы, которые отрисовываются во время манипуляций, поэтому мы добавляем его в каждый компонент.
7. На панели Project найдите префаб AppBarCustom в папке Assets -> Prefabs и перетащите его на свойство App Bar Prefab Bounding Box Rig в динамике.
Мы внесли много изменений.
Давайте убедимся, что панель «Инспектор» игрового объекта «Динамик» выглядит следующим образом:
Запустите приложение и переместите динамик
Сохраните сцену и запустите ее, чтобы проверить изменения.Попробуйте следующее:
- выберите динамик и переместите его (сигналы вашего контроллера должны отслеживаться);
- Щелкните панель приложения динамика, чтобы получить доступ к кнопкам, которые позволяют вращать динамик;
- измените размер/масштаб динамика (если вы ранее не отключили эту функцию).
-
Что Такое Сетевая Инфраструктура?
19 Oct, 24 -
Сага О Светодиодных Лампах. Часть 4
19 Oct, 24 -
Хронология Рит 2008. День Первый.
19 Oct, 24 -
Любопытные Курьезы «Вирусного Маркетинга»
19 Oct, 24 -
Управление И Уборка В D
19 Oct, 24