Obecnie opracowuję środowisko VR dla istniejącej (fizycznie) dużej platformy symulatora ruchu. Użytkownik może usiąść na tej platformie ruchu i zostaje przyspieszony i przechylony, aby wywołać wrażenie ruchu w środowisku symulatora samochodu badawczego. Śledzenie pozycji Oculus Rift jest już zamontowane na ruchomej platformie przed użytkownikiem, tak jak na komputerze.
Obecnie używanym przeze mnie silnikiem 3D jest Unity 5.3. Kąty obrotu i liniowe przyspieszenia platformy są już wprowadzane do Unity. Wyniki nie są jednak tym, do czego dążyłem. Podczas gdy kompensacja rotacyjna działa dobrze, dopóki przechylamy platformę, gdy prędkość kątowa spadnie do zera, moduł śledzący resetuje się bez wywoływania przeze mnie lub uruchamiania zdarzenia, które to zrobił. Kompensacja przyspieszenia liniowego zawsze drga wokół prawdziwego punktu spoczynkowego.
Próbowałem już użyć natywnej implementacji Unity VR, a także wtyczki Oculus. Jednak połączenie czujnika nie jest dostępne na tym poziomie. Fora Oculus mają wiele tematów na ten temat, ale nie mogłem znaleźć żadnych rozwiązań.
Czy istnieją alternatywy, które można wypróbować, aby korzystać z Oculus na ruchomej platformie?
Chciałbym idealnie odjąć indukowany ruch od danych czujnika Oculus przed dalszym przetwarzaniem. Już rozważałem załatanie np. LibOVR, ale nie znalazłem też żadnych pomocnych funkcji związanych z fuzją czujnika.
Odpowiedzi:
Nie mogę udzielić ostatecznej odpowiedzi, ale sugeruję, abyś eksperymentował z zestawami słuchawkowymi różnych producentów (Microsoft Mixed Reality, VIVE i potencjalnie na telefony komórkowe) i sprawdził, czy problem z resetowaniem również występuje. Mam przeczucie, że problem resetowania jest specyficzny dla Oculusa i ogólnie nie jest cechą systemów VR.
Jako przykład udanego projektu, który jest podobny, zobacz artykuł CarVR: Włączanie rozrywki w wirtualnej rzeczywistości w samochodzie . Mówi o użyciu VR w jadącym samochodzie.
Podobnie jak to, co zrobiłeś, umieścili IMU na platformie (samochód) i odjęli te dane od renderowania w Unity. Wygląda na to, że zakończyły się powodzeniem w testach i nie wspominają o resecie ani innych problemach. W swoich badaniach w szczególności wykorzystali Samsung GearVR z Samsung Galaxy S6 Edge jako urządzenie VR.
Innym podejściem byłoby użycie systemu VR, który określa kamery w oparciu o kamery. Teoretycznie system tylko kamery może w pełni zarządzać ruchem głowy i orientacją, jeśli jest wystarczająco silny. Zestawy Microsoft rzeczywistości mieszanej robią to do pewnego stopnia. Zobacz tę stronę firmy Microsoft dotyczącą śledzenia, aby zapoznać się z pewnym tłem. To powiedziawszy, uważam, że system Microsoftu to połączenie śledzenia kamery ze zintegrowanymi czujnikami dla podejścia hybrydowego.
źródło