Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在Unity 2d中制作推进器?_C#_Unity3d - Fatal编程技术网

C# 如何在Unity 2d中制作推进器?

C# 如何在Unity 2d中制作推进器?,c#,unity3d,C#,Unity3d,我正在Unity制作2d游戏,但我找不到如何制作推进器。我有一个旋转的角色,我需要对角色的角度施加90度的力。 提前感谢您的帮助。将系统与.AddForce()结合使用;电话 例如: myRigidBody.AddForce(transform.forward); 尝试使用来实现这一点。它将在相对于游戏对象的恒定方向上施加力,这意味着它将始终应用于角色的右侧或左侧,无论角色以何种方式旋转。尝试rb.AddRelativeForce(Vector2.right)添加使角色向右移动的力,或rb.A

我正在Unity制作2d游戏,但我找不到如何制作推进器。我有一个旋转的角色,我需要对角色的角度施加90度的力。 提前感谢您的帮助。

将系统与.AddForce()结合使用;电话

例如:

myRigidBody.AddForce(transform.forward);
尝试使用来实现这一点。它将在相对于
游戏对象的恒定方向上施加力,这意味着它将始终应用于角色的右侧或左侧,无论角色以何种方式旋转。尝试
rb.AddRelativeForce(Vector2.right)
添加使角色向右移动的力,或
rb.AddRelativeForce(Vector2.right*-1)
使角色向左移动


希望这有帮助

谢谢您的帮助,我搜索的命令是。

您能提供您的尝试吗?另外,请说明什么是“推进器”,因为我不知道如何制作,所以我没有尝试。推进器是一种以一定角度输出力的装置,就像在航天器或喷气背包中一样。我需要对我的角色施加一个力,该力的角度取决于角色的角度。如何施加与角色角度相反的力?@chimado会将提供的
Vector2
转换为相对于刚体的局部坐标系。这将允许您使用
Vector2.up
Vector2.down
Vector2.right
、或
Vector2.left
,而无需过多考虑对象的旋转,然后相应地旋转力矢量。