unity利用加速计移动对象

var angleX = Mathf.Atan2(Input.acceleration.z, -Input.acceleration.y)* Mathf.Rad2Deg+45;

var angleY = Mathf.Atan2(Input.acceleration.x, -Input.acceleration.y) * Mathf.Rad2Deg;

var vertX = Mathf.InverseLerp(-25, 25, angleX)*2-1;

var horzY = Mathf.InverseLerp(-45, 45, angleY)*2-1;

transform.Translate(horzY * 10 * Time.deltaTime,0, -vertX * 10 * Time.deltaTime);

你可能感兴趣的:(unity利用加速计移动对象)