Я создаю свой собственный «VR Engine» на Android и столкнулся с проблемой сохранения горизонта при наклоне.Используя датчики, я пытаюсь сделать это, вращая голову пользователя в противоположных направлениях, и у меня заканчиваются идеи, вот что я попробовал.
- OrientationEventListener слишком нервный, чтобы его можно было использовать,даже со сглаживающими значениями.
- Гироскоп работает нормально, когда телефон плоский под углом 90 градусов, но если смотреть вокруг вверх или вниз + вбок, создается «пассивное» вращение, которое я не могу понять, как сбалансировать,и просто использовать значения гироскопа недостаточно, поскольку они не совпадают, если вы смотрите вниз + влево + наклон по сравнению с прямым + влево + наклон, поэтому «мир» остается «повернутым» на эту разницу.
- Попытка с использованием комбинации remapCoordinateSystems с getOrientation и комбинации датчиков, она хорошо работает при плоских 90 градусах, но также сходит с ума при взгляде вверх / вниз + влево / вправо + наклон.
Если у вас естьлюбые предложения, которые я хотел бы услышать.Спасибо