我希望将我的对象沿其行进的方向旋转。如何计算前一帧和当前帧的矢量差异,从而给出一个目标方向,使其沿行进方向旋转。以下是用于通过加速度计控制对象的代码。
Vector3 getAccelerometer(Vector3 accelerator){
Vector3 accel = this.calibrationMatrix.MultiplyVector(accelerator);
return accel;
}
void Start(){
calibrateAccelerometer();
}
void Update(){
Vector3 dir = getAccelerometer(Input.acceleration);
if (dir.sqrMagnitude > 1)
dir.Normalize();
transform.Translate(dir * speed * Time.deltaTime);
}