我正在测试Unity3D 4.3中的加速度计代码。我想要做的就是简单地改变对象的角度,而倾斜iPad,以假像的角度,像真正的生活。除了加速度计有点太敏感,我可以看到GameObject就像闪烁,即使我把它放在桌子上,一切都正常。我怎样才能使它不那么敏感,以至于即使用手握住,角度也会根据倾斜而改变,并且物体保持稳定?unity3d - 加速度计敏感度
这里是我的代码:
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);
}
我发现[这](http://forum.unity3d.com/threads/224147-是-docus-wrong-on-accelerometer-low-pass-filter),想想如果有人有同样的问题可以节省几个小时。 – sooon