В настоящее время я разрабатываю среду виртуальной реальности для существующей (физически) большой платформы симулятора движения. Пользователь может сидеть на этой подвижной платформе, и его ускоряют и наклоняют, чтобы вызвать ощущение движения в среде симулятора исследовательского автомобиля. Позиционный трекер Oculus Rift уже установлен на движущейся платформе перед пользователем, так же, как вы это делаете на своем ПК.
В настоящее время я использую 3D-движок Unity 5.3. Углы поворота и линейные ускорения платформы уже поданы в Unity. Однако результаты не те, к которым я стремился. В то время как компенсация вращения работает хорошо, пока мы наклоняем платформу, как только угловая скорость падает до нуля, трекер сбрасывается без моего вызова или запуска события, которое он сделал. Компенсация линейного ускорения всегда дрожит вокруг истинной точки покоя.
Я уже пытался использовать встроенную реализацию Unity VR, а также плагин Oculus. Тем не менее, датчик слияния не доступен на этом уровне. На форумах Oculus есть много тем по этой проблеме, но я не смог найти решения.
Есть ли альтернативы, которые можно попробовать, чтобы использовать Oculus на движущейся платформе?
В идеале я хотел бы вычесть наведенное движение из данных датчика Oculus перед дальнейшей обработкой. Я уже рассматривал исправления, например LibOVR, но не смог найти там никаких полезных функций, связанных с слиянием датчиков.