Robię więcej gier i zadaję głupie pytania.
Mam nadzieję, że ten jest bardzo krótki. Tworzę bardzo podstawową klasę, która po prostu przenosi obiekt Gracza, przykładając siłę do sztywnego ciała, ale zastanawiam się, czy powinienem odwoływać się do klasy rb, czy po prostu lokalnej zmiennej Aktualizuj każdą klatkę? (pamiętając, że już istnieje w klasie macierzystej jedności Monobehaviour.GameObject).
Zastanawiam się, czy wykonanie wielu zmiennych lokalnych spowolniłoby pętlę jako całość (przez local rozumiem wewnątrz samej funkcji, a nie na szczycie klasy - mam nadzieję, że użyję poprawnego terminu).
Oto, co mam na myśli, dwa sposoby, o których myślałem o zrobieniu tego:
public class Player : MonoBehaviour {
private void FixedUpdate()
{
Rigidbody rb = GetComponent<Rigidbody>();
float v = Input.GetAxis("Vertical");
rb.AddForce(v * rb.transform.forward * Const.walkForce);
}
}
lub...
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);
}
}