Je fais plus de jeux et pose des questions plus stupides.
J'espère que celui-ci est très bref. Je crée une classe très basique qui déplace simplement un objet Player en appliquant une force à un corps rigide, mais je me suis demandé, devrais-je faire une référence de classe au rb ou juste une variable locale dans Mettre à jour chaque image? (en gardant à l'esprit qu'il existe déjà dans la classe parent d'unité Monobehaviour.GameObject).
Je me demande si faire de nombreuses variables locales ralentirait la boucle dans son ensemble (par local, je veux dire à l'intérieur de la fonction elle-même et non au sommet de la classe - j'espère utiliser le terme correct).
Voici ce que je veux dire, les deux façons dont je pensais le faire:
public class Player : MonoBehaviour {
private void FixedUpdate()
{
Rigidbody rb = GetComponent<Rigidbody>();
float v = Input.GetAxis("Vertical");
rb.AddForce(v * rb.transform.forward * Const.walkForce);
}
}
ou...
public class Player : MonoBehaviour {
Rigidbody rb;
private void Awake()
{
rb = GetComponent<Rigidbody>();
}
private void FixedUpdate()
{
float v = Input.GetAxis("Vertical");
rb.AddForce(v * rb.transform.forward * Const.walkForce);
}
}