我正在测试Unity3D 4.3中的加速度计代码。我的目标很简单,就是在倾斜iPad时改变物体的角度,以伪造真实生活中的视角。除了加速度计有点过于敏感以至于我可以看到即使将游戏对象放在桌子上也会出现闪烁之外,一切都运行良好。我该如何使其更不敏感,以便即使你用手握住,角度也会根据倾斜而改变,同时物体仍然保持稳定?
这是我的代码:
这是我的代码:
void Update () {
Vector3 dir = Vector3.zero;
dir.x = Mathf.Round(Input.acceleration.x * 1000.0f) / 1000.0f;
dir.y = Mathf.Round(Input.acceleration.y * 1000.0f) / 1000.0f;
dir.z = Mathf.Round(Input.acceleration.z * 1000.0f) / 1000.0f;
// clamp acceleration vector to the unit sphere
if (dir.sqrMagnitude > 1)
dir.Normalize();
// Make it move 10 meters per second instead of 10 meters per frame...
dir *= Time.deltaTime;
dir *= speed;
acx = dir.x;
acy = dir.y;
acz = dir.z;
transform.rotation = Quaternion.Euler(dir.y-20, -dir.x, 0);
}