Есть такой скрипт движения игрока. Игрок двигается нормально, но очень резко поворачивает. Помогите как можно задать время вращения в этом скрипте?
public class Player : MonoBehaviour
{
public float speedMove;
public float gravityForce;
private Vector3 moveVector;
private Jostic joystick;
void Start()
{
joystick = GameObject.FindGameObjectWithTag("Joystick").GetComponent<Jostic>();
}
// Update is called once per frame
void Update()
{
CharterMove();
}
private void CharterMove()
{
moveVector = Vector3.zero;
moveVector.x = -joystick.Vertical() * speedMove;
moveVector.z = -joystick.Horizontal() * speedMove;
if (Vector3.Angle(Vector3.forward, moveVector) > 5f || Vector3.Angle(Vector3.forward, moveVector) == 0.0f)
{
Vector3 direct = Vector3.RotateTowards(transform.forward, -moveVector, speedMove*100000, 0f);
transform.rotation = Quaternion.LookRotation(direct);
}
GetComponent<CharacterController>().Move(moveVector * Time.deltaTime);
}
}