C# 如何在Unity 2d中制作推进器?
我正在Unity制作2d游戏,但我找不到如何制作推进器。我有一个旋转的角色,我需要对角色的角度施加90度的力。 提前感谢您的帮助。将系统与.AddForce()结合使用;电话 例如:C# 如何在Unity 2d中制作推进器?,c#,unity3d,C#,Unity3d,我正在Unity制作2d游戏,但我找不到如何制作推进器。我有一个旋转的角色,我需要对角色的角度施加90度的力。 提前感谢您的帮助。将系统与.AddForce()结合使用;电话 例如: myRigidBody.AddForce(transform.forward); 尝试使用来实现这一点。它将在相对于游戏对象的恒定方向上施加力,这意味着它将始终应用于角色的右侧或左侧,无论角色以何种方式旋转。尝试rb.AddRelativeForce(Vector2.right)添加使角色向右移动的力,或rb.A
myRigidBody.AddForce(transform.forward);
尝试使用来实现这一点。它将在相对于游戏对象的恒定方向上施加力,这意味着它将始终应用于角色的右侧或左侧,无论角色以何种方式旋转。尝试rb.AddRelativeForce(Vector2.right)
添加使角色向右移动的力,或rb.AddRelativeForce(Vector2.right*-1)
使角色向左移动
希望这有帮助 谢谢您的帮助,我搜索的命令是。您能提供您的尝试吗?另外,请说明什么是“推进器”,因为我不知道如何制作,所以我没有尝试。推进器是一种以一定角度输出力的装置,就像在航天器或喷气背包中一样。我需要对我的角色施加一个力,该力的角度取决于角色的角度。如何施加与角色角度相反的力?@chimado会将提供的Vector2
转换为相对于刚体的局部坐标系。这将允许您使用Vector2.up
、Vector2.down
、Vector2.right
、或Vector2.left
,而无需过多考虑对象的旋转,然后相应地旋转力矢量。