Прикрепление предметов к рукам
Мы хотим прикрепить некоторый пользовательский интерфейс и другие предметы к задней части сочлененной руки. Просто пытаюсь понять, как это сделать. Я нашел, как включать и выключать визуализатор рук с помощью MixedRealityHandTrackingProfile, но я пытаюсь найти игровой объект Unity, в котором я могу создать родительские элементы или, по крайней мере, получить доступ к ручному преобразованию. Спасибо за любые указатели!
1 ответ
Шаг 1: Выберите объект в иерархии сцены, за которым вы хотите следовать своей руке. Нажмите "Добавить компонент" на панели инспектора.
Шаг 2: Введите "RadialView" в поле поиска, и вы должны увидеть появившийся решатель RadialView. Нажмите здесь. Вы увидите, что несколько дополнительных необходимых скриптов появятся автоматически. Примечание: он добавляет скрипт обработчика решателя. Наряду с этим, скрипт Radial View будет отображаться так же, как орбитальный скрипт.
Шаг 3: Измените радиальный вид, чтобы не следовать за головой, а следовать левой рукой. Выберите раскрывающееся меню рядом с опцией "отслеживаемый объект для ссылки". Затем выберите "сустав левой руки" из меню.
Шаг 4: Как вы можете видеть, выбрав соединение рук, вы можете выбрать, какой части руки вы хотите следовать кубу. Есть много вариантов для использования! Для этого примера мы собираемся использовать запястье. Поэтому рядом с опцией "гусеничный сустав" нажмите выпадающее меню и выберите запястье. Примечание: не все соединения, в этой текущей версии HoloLens2 могут быть отслежены. Это ошибка, которая может быть исправлена в ближайшее время.
Теперь, если вы нажмете кнопку воспроизведения и попробуете ее в своей сцене, вы увидите, что объект действительно следует за запястьем, но объект может немного отставать и выглядит так, как будто он пытается не отставать. Теперь, чтобы исправить это и сделать так, чтобы объект постоянно находился на запястье, мы должны изменить несколько вещей. Установите максимальное и минимальное расстояния равными 0, чтобы куб не располагал между ним и запястьем пользователя. После установки куб будет идеально выровнен с запястьем.
В последнем mrtk_development
В ветке PR 4532 вы также можете использовать компонент "Ограничение руки". Вы можете увидеть пример того, как его использовать наMixedRealityToolkit.Examples/Experimental/HandTracking/Scenes/HandBasedMenuExample.unity
.
Взгляните на https://github.com/microsoft/MixedRealityToolkit-Unity/blob/mrtk_development/Assets/MixedRealityToolkit.SDK/Experimental/Features/Utilities/Solvers/HandConstraint.cs для реализации.
Вы можете добавить это поведение, добавив решатель "Ограничение руки" к объекту, по которому вы хотите следовать за рукой.
Компонент Hand Constraint также будет доступен в следующем выпуске MRTK V2.0.0 RC2.