Unity Accelerometer文档

时间:2017-11-27 18:38:23

标签: unity5 normalization accelerometer timedelta

我对Unity中的Input.acceleration命令有疑问。

根据官方文件,基本代码如下:

public class ExampleClass : MonoBehaviour {
    public float speed = 10.0F;
    void Update() {
        Vector3 dir = Vector3.zero;
        dir.x = -Input.acceleration.y;
        dir.z = Input.acceleration.x;
        if (dir.sqrMagnitude > 1)
            dir.Normalize();

        dir *= Time.deltaTime;
        transform.Translate(dir * speed);
    }
}

为什么检查Vector3是否超过1? (dir.sqrMagnitude)然后将其设置为1? 那是为了优化吗?

还有什么目的是将它乘以deltatime?

谢谢:)

0 个答案:

没有答案