我已经构建 Sprite Kit 游戏已经有一段时间了。就在最近我一直在添加陀螺/倾斜功能。使用CMMotionManager
,我能够轻松地访问这些数字。但是,我的问题是由于acceleration.x
值的存储方式而出现的。
你看,我的游戏是这样运行的,当游戏开始时,手机会快速校准到当前的握持方式,然后我会响应Acceleration.x值的变化(横向握持手机,这相当于将屏幕朝向和远离您倾斜。)但是,将手机平放为 1.0,将其直接朝向您倾斜为 0.0,然后如果您超出这些值,它将循环返回这些值。因此,如果有人坐直,他们的手机校准为 0.1,而他们将手机向下倾斜 0.2,结果将不会是预期的。
有什么简单的方法可以抵消这种情况吗?