Итак, я пытаюсь создать свой собственный скрипт движения для Unity с компонентом Rigidbody, прикрепленным к моему персонажу, и я использую этот код внутри функции обновления:
// Up above, in public scope, before Start and Update functions
public float speed = 1f;
public Rigidbody body;
void Update() {
if (Input.GetKey(KeyCode.LeftArrow())) { // Left arrow key
body.AddForce(transform.forward * speed * Time.deltaTime);
}
}
Моя проблема если он находится внутри функции Update (), он продолжает работать, он продолжает вращаться, даже если у меня не нажата клавиша.
Кто-нибудь знает, как решить эту проблему? Я пытался убрать Time.deltaTime, но Brackeys сказал, что вы используете его так, чтобы он зависел от частоты кадров, поэтому, если у вас более высокая частота кадров, она не поворачивается быстрее, и то же самое с низкой частотой кадров, вы поворачиваете медленнее. Заранее спасибо.