Daha fazla oyun yapıyorum ve daha aptalca sorular soruyorum.
Umarım bu çok kısa. Katı bir cisme kuvvet uygulayarak bir Player nesnesini hareket ettiren çok temel bir sınıf yapıyorum, ama rb için bir sınıf referansı yapmalı mıyım, yoksa her kareyi güncelle içindeki bir yerel değişken mi? (Monobehaviour.GameObject birlik üst sınıfında zaten var olduğunu göz önünde bulundurarak).
Ben birçok yerel değişkenler yapmak bir bütün olarak döngü yavaş olup olmadığını merak ediyorum (yerel ben fonksiyonun içinde demek ve sınıfın üstünde değil - umut im doğru terimi kullanarak).
Demek istediğim, bunu yapmayı düşündüğüm iki yol:
public class Player : MonoBehaviour {
private void FixedUpdate()
{
Rigidbody rb = GetComponent<Rigidbody>();
float v = Input.GetAxis("Vertical");
rb.AddForce(v * rb.transform.forward * Const.walkForce);
}
}
veya...
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);
}
}