Это соответствующий фрагмент, который я взял из демонстрации гироскопа:
Код: Выделить всё
if (window.screen.orientation.angle === 0) {
engine.gravity.x = Common.clamp(event.gamma, -90, 90) / 90
engine.gravity.y = Common.clamp(event.beta, -90, 90) / 90
} else if (window.screen.orientation.angle === 90) {
engine.gravity.x = Common.clamp(event.beta, -90, 90) / 90
engine.gravity.y = Common.clamp(-event.gamma, -90, 90) / 90
} else if (window.screen.orientation.angle === 180) {
engine.gravity.x = Common.clamp(event.gamma, -90, 90) / 90
engine.gravity.y = Common.clamp(-event.beta, -90, 90) / 90
} else if (window.screen.orientation.angle === -90) {
engine.gravity.x = Common.clamp(-event.beta, -90, 90) / 90
engine.gravity.y = Common.clamp(event.gamma, -90, 90) / 90
}
Код: Выделить всё
if (window.screen.orientation.angle === 0) {
engine.gravity.x = Common.clamp(event.beta, -90, 90) / 90
engine.gravity.y = Common.clamp(-event.gamma, -90, 90) / 90
} else if (window.screen.orientation.angle === 90) {
engine.gravity.x = Common.clamp(event.gamma, -90, 90) / 90
engine.gravity.y = Common.clamp(event.beta, -90, 90) / 90
} else if (window.screen.orientation.angle === 180) {
engine.gravity.x = Common.clamp(-event.beta, -90, 90) / 90
engine.gravity.y = Common.clamp(event.gamma, -90, 90) / 90
} else if (window.screen.orientation.angle === 270) {
engine.gravity.x = Common.clamp(-event.gamma, -90, 90) / 90
engine.gravity.y = Common.clamp(-event.beta, -90, 90) / 90
}
p>
В итоге я написал небольшой инструмент, который позволяет мне наблюдать за показаниями бета/гаммы, и я могу подтвердить, что показания на iOS отличаются от показаний на Android. Я также наткнулся на эту библиотеку под названием Full Tilt, которая, по-видимому, решила эту проблему, но я не могу ее использовать, поскольку с тех пор она вышла из-под обслуживания (я собираю с помощью веб-пакета).
Кто-нибудь сталкивался с этим? Удалось ли вам с гироскопом и заставить его работать стабильно на устройствах Android и iOS?
Подробнее здесь: https://stackoverflow.com/questions/784 ... -matter-js