Vector3 acc = Vector3.Zero;
void update(){
acc = Vector3.Lerp(acc, Input.acceleration, Time.deltaTime);
transform.position = new Vector3(transform.position.x, (acc * -aVerticalRotation).x, transform.position.z);
}
У меня есть вышеуказанный код для перемещения моего GameObject по вертикали (вдоль оси Y). Это прекрасно работает, за исключением того, что я хочу, чтобы объект двигался относительно моего движения, т.е.
Если я наклоню телефон на некоторое количество X очень быстро, он переместится на расстояние Z, тогда как если я наклоню телефон на величину X, но медленнее, расстояние будет A, где Z> A.
Я пытался получить текущее значение, вычитая его из предыдущего значения и умножая его на остальное, но, кроме того, что он вызывал эффект дрожания, он работал не совсем так, как я хотел.
Может ли кто-нибудь помочь мне достичь этого? Я совершенно новичок в Unity.
Спасибо