倾斜电话偏移。 Accelerometer Bug

时间:2016-11-05 02:08:48

标签: android unity3d racing

我正在进行一场有点赛车的比赛。汽车自动向前移动,但要将其侧向转动,我测量手机的旋转。由于我必须测量x轴上的加速度,我使用:

1

当我玩游戏时,当我在x轴上倾斜手机时,汽车会旋转我想要的样子。然而,问题是当我将手机放在桌子上时,汽车以超慢的速度向左行驶,这是没有意义的,因为它是0度角。为了确保这不是因为桌面,我在Unity Simultator中播放它并发生同样的事情。汽车离开的速度很慢。当我调试.log时,它说Direction.x大约是-0.000147 ...,一个超小的数字。有没有办法解决这个问题,所以当手机静止时,汽车的Direction.X将为0,或者我的代码有问题。

1 个答案:

答案 0 :(得分:0)

有时在Unity Translate函数故障中,因为更好地使用带向量的标准操作。只是尝试削减加速度计的最小值:

float min_value = 0.01f

if(Mathf.Abs(Input.acceleration.x) < min_value)
    Direction.x = Input.acceleration.x * Time.deltaTime;
else
    Direction.x = 0;

transform.position = transform.position + Direction.x * 5f;