我制作了更多游戏,问了更多愚蠢的问题。
希望这一段很简短。我正在创建一个非常基本的类,该类通过向刚体施加力来移动Player对象,但这让我想知道,我应该对rb进行类引用还是对Update每帧进行局部引用?(请记住,它已经存在于Monobehaviour.GameObject统一父类中)。
我想知道是否做很多局部变量会减慢整个循环的速度(通过局部变量,我的意思是在函数本身内部,而不是在类的顶部,希望我使用正确的术语)。
这就是我想做的两种方式:
public class Player : MonoBehaviour {
private void FixedUpdate()
{
Rigidbody rb = GetComponent<Rigidbody>();
float v = Input.GetAxis("Vertical");
rb.AddForce(v * rb.transform.forward * Const.walkForce);
}
}
要么...
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);
}
}