Я пытаюсь повернуть узел на основе вращения рулона телефона. Код ниже находится внутри функции обновления SpriteKit
guard manager.isAccelerometerAvailable else {
return
}
manager.startAccelerometerUpdates()
manager.startAccelerometerUpdates(to: .main) { (data, error) in
guard let data = data, error != nil else {
return
}
}
if manager.isDeviceMotionActive {
manager.deviceMotionUpdateInterval = 0.01
manager.startDeviceMotionUpdates(to: .main) {
[weak self] (data, error) in
guard let data = data, error != nil else {
return
}
let rotation = atan2(data.userAcceleration.x,
data.userAcceleration.y) - .pi
self?.main.zRotation = CGFloat(rotation)
}
}
Я новичок в основном движении, и я не могу понять, что не так. Я перешел по другим ссылкам в стеке, связанным с этим, но нигде не получил. Спасибо!