void FixedUpdate()
{
//for gravity
//
buildingVelocity += gravityScale * Physics2D.gravity * Time.deltaTime;
Vector2 deltaPosition = buildingVelocity * Time.deltaTime;
Vector2 moveAmount = Vector2.up * deltaPosition.y;
Moving (moveAmount);
//
//
}
//for gravity
//
void Moving(Vector2 moveAmount)
{
rb2d.position += moveAmount;
}
我正在为我的游戏创造引力,以及Unity教程。我可以说明他们做出的所有决定,除了一个。我只是不明白为什么我需要deltaPosition Vector2?是因为我需要再次乘以Time.deltaTime吗?如果是这样,为什么?我的简单思想说得好......如果deltaPosition = buildingVelocity ......我只会让Vector2 moveAmount = Vector2.up * buildingVelocity.y;甚至不必创建deltaPosition变量。有人可以为我打破这个吗?为什么我将它乘以deltatime两次呢?谢谢!