如何在 Unity 中向对象添加一个力,而不是相对于对象旋转而是相对于游戏坐标?

How to add a force to an object in Unity not relative to the objects rotation but relative to the game coordinates?

我正在创建一个 2d 游戏,并且想让一个对象向上移动。我不希望它相对于对象向上移动,而是相对于游戏坐标向上移动。我目前正在使用 Rigidbody.AddForce()。有谁知道这样做的方法吗?

你想让它相对于本地 space 或世界 space 增加力吗?如果你想让它在本地 space 移动,请使用 AddRelativeForce(..),如果你想根据世界移动使用 AddForce(..)

Check Out Doc

想通了。而不是做 Rigidbody.AddForce(transform.up);,使用 Rigidbody.AddForce(new Vector2(x, y));