JavaScript ориентация бета-смещения WebGL

Я застрял на этой проблеме целую вечность. К сожалению, мои поиски в Google / Stack не увенчались успехом. Совершенно в тупик.

Суть проблемы заключается в корректировке значения бета, которое возвращается из deviceorientationсобытие в JavaScript.

То, что я хочу сделать, это настроить значение бета на 0, когда телефон находится в вертикальном положении. Я попытался компенсировать это значение, уменьшив бета-значения на положительные и отрицательные целые числа, равные 90, а также на целое число 0 и добавив уменьшенное event.beta значение; все безрезультатно.

Идея концепции заключается в использовании гироскопа для ориентации камеры / объекта THREE.js внутри панорамы. Когда вы наклоняете телефон вверх, вы смотрите вверх, вниз равняетесь внизу, и удерживая его на уровне, вы смотрите вперед. Я попытался использовать некоторые из плагинов (а именно, mrdoob и threex), но их движение, к сожалению, не работает. В примере mrdoobs происходит странное вращение оси Z, которое вращает сцену, а не перемещает ее, и трих задает положение уровня, когда телефон держится ровно, а не вертикально.

Любые предложения по математике здесь будут с благодарностью.

0 ответов

Другие вопросы по тегам