Если цель в совмещении реального контроллера (как я понимаю, для большей полноты погружения и обратной связи) и модели в HMD — то это как-то очень сложно и мудрёно выходит.
Окулусы давно такие реализовали в своей гарнитуре: ставим на пальцы метки (да хотя бы обычной краской, светящейся в ИК), камеры привязаны к кабине, а значит позиция джоя относительно камер статична. По положению меток на пальцах можно достроить остальную руку. Трекать всю физику совершенно излишне, так как физика реальной руки жёстко ограниченна доступными углами суставов.
Да, с вашим способом можно внести в систему предмет из реального мира… но только если он запрограммирован заранее. То есть снова проще сделать несколько точек для трекинга на нём.
Ну так и речь идет о том, что предметы запрограммированы заранее. Типа того же пульта управления мехом. И задача сориентирвоать игрока — где тумблер, А где его пальцы относительно тумблера.
По факту физика рукам вообще не нужна, я её сделал просто «потому что могу».

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

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


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

Система и так предупреждает, когда выходишь из относительно небольшого куба, в котором камера отслеживает шлем и контроллеры.

Как думаете, чувака со стеклянным столом она предупредила?
Спойлер:
Скорее всего нет. ПОтому что вполне частая ситуация — если куб не помещается в комнате — заехать им на предметы типа дивана, стола, чтобы всё таки иметь возможность играть. Как итог — можно споткнуться, ударить контроллер и т.п.

Мешать ничего не будет. Если у вас пустая комната — вы ничего и не увидите, если у вас комната не пустая — лучше видеть чем не видеть. Да и стенки куба же не мешают, почему увеличение детализации должно мешать?
Как думаете, чувака со стеклянным столом она предупредила?
Без понятия. Меня моя предупреждает включая картинку с камеры — я отодвигаю всю мебель, чтобы руками и контроллером не зацепить в пылу сражения.

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

Комната у меня не пустая, в ней много чего стоит, так что наличие домашней мебели внутри игры мне точно будет мешать. Стенки куба проявляются только если выйти за его пределы. Если бы гипотетическая камера в шлеме включалась только в момент выхода за пределы куба (или по нажатию на кнопку), то я только за.
Виртуальные объекты также как и стенки куба должны показываться, когда к ним приближаешься. Это тот же самый куб, только показывающий не абстрактный куб, а вполне реальные фактические границы. В чём вопрос то?
> Очевидным решением является прикрутить камеру глубины на VR шлем и накладывать полученную геометрию на VR-мир. Но почему-то этого никто не делает.

Microsoft Hololens вроде делает именно это. Пробовал это девайс сам: он сканирует помещение и сканирует жесты рук именно камерой глубины, в некоторых режимах он её показывает в полигональном представлении, очень круто выглядит дополненная реальность, когда все реальные объекты начинают быть обтекаемыми своей картой глубины. Полный VR режим там тоже есть (когда видно только виртуальное изображение)
Давненько мечатю добраться до Hololens, но к сожалению возможности такой пока не представилось. Дорогой, блин.
Если я правильно понял постановку задачи, то у вас какой-то овер-инжиниринг 80-го уровня. Почему не натянуть зелёный экран для хромакея на стол и стену за ним, не поставить джойстики на него, брать тупо видео с дешёвой веб-камеры и накладывать поверх 3Д-сцены, обрезая по зелёному? Веб-камера — не кинект, можно маленькую взять и без проблем прикрутить на шлем или на лицо куда-нибудь. Собственно, идея не нова — вот есть такой, к примеру, кэноновский девайс антигуманной ценовой категории:

А как вы предметам глубины добавите, если просто вырежете их с зеленого фона?
ДЕшевая вебка не сможет же определить расстояние до точек. А значит в лучшем случае у вас будет контур рук, но без возможности поднимать/опускать их.

Две дешёвых вебки?

Хреново же получается, и нагрузка вычислительная значительная.
Ну и не понятно, зачем зеленый фон тогда.
Мне кажется тут больше подошел бы вариант AR. Т.е. не полное VR погружение, а прорисовка только части деталей. Можно например как предлагалось только окна, можно почти всю кабину кроме контроллеров. Только надо делать не хромокей, а маркеры. Таким образом во-первых идет довольно точная привязка виртуальных объектов к реальной картинке, а во-вторых с их помощью можно настроить систему так чтобы руки не перекрывались виртуальным изображением (хотя это на порядок сложнее и я не уверен есть ли уже готовые решения, в это сторону копать не приходилось...).
AR с маркерами в принципе уже отработанная тема и есть много движков, да даже в OpenCV есть функции их распознавания.

ЗЫ: Вдруг подумалось, а может просто совместить хормокей, для прорисовки рук, с маркерами, для позиционирования виртуальных объектов. И все получится? :)
На самом деле есть достаточно небольшие аналоги кинекта, сейчас как раз таким играюсь. Он даже без корпуса сразу продается, правда греется зараза и достаточно дорогой
А название/ссылку?
shop-orbbec3d-com.3dcartstores.com (Astra Mini) есть маленькие модели, мне когда пришло я сильно удивился насколько небольшое устройство, правда потом радиаторы на него ставить нужно (идут в комплекте)
СПасибо. В принципе цена нормальная, как у самого кинекта, когда он еще продавался.
Да если будете брать, и при этом без корпуса, сразу кабель запасной в комплект берите, либо смотрите на форуме как разъем называется и берите штекеры с али. Я взял кабель в запас, но все равно заколебался чинить, там крайне неудачное решение по кабелю — <очень толстый USB> + <тонкие короткие проводки до маленького штекера уже с преднатяжением> ломается только в путь, как аккуратно не обращайся. В конце психанул припаял мягкий кабель и изоляцию убрал на 5см. Пока живет, но все равно стремно — не зря же они так все экраном накрыли и максимально короткие проводки оставляли без экрана
Кстати там слепая зона 60см от камеры (не S модели). Это нужно учитывать если хотите и комнату видеть и жесты обрабатывать.
Хороший аналог киннекта, разработанный специально для мелкой моторики рук — контроллер Leap Motion. На борту вся необходимая оптика, изображение с внутренних камер тоже можно получить, а еще для него давно уже есть крепления для VR-шлемов.
Да, Leap Motion в планах попробовать.
Судя по характеристикам, он в таком плане только для рук и сгодится, для пространства комнаты его уже не хватит. Или я не прав?
Да, Leap motion именно для рук, предназначен для трекинга ладоней и пальцев. Я трогал его и вертел в Unity. Честно признаться. точность распознавания меня не впечатлила. Может, я просто не смог в него. Обновление драйверов сильно повысило точность, но все равно точность движений не идет ни в какой сравнение с обычными клешнями от Htc Vive. Как бы в принципе разные контроллеры, но поиграв в оба — Leap отторгает.
А в плане расстояния что он видит? Или он вообще пространство не показывает, а только скелет отдает?
Он строит модель рук, насколько может увидеть камерой и датчиком глубины. Камера там тоже есть, так что может отдавать скелет на фоне. Что касается глубины сканирования, то сканирует буквально на метр-полтора, дальше на визуализации серое молоко.
Да, модель именно помещения у меня он не строил, только скелет рук. Возможно, другой прошивкой или просто другим ПО можно и карту пространства построить. Но у меня не строил.
Leap motion малогабаритный, попробуйте его использовать
Только полноправные пользователи могут оставлять комментарии.
Войдите, пожалуйста.