我有一个立方体。附加了一个脚本。我想,立方体在开始时以随机方向获得冲动。我的问题是addForce。我不知道该添加什么。
public Transform myObject;
void Start () {
Vector3 randomDirection = new Vector3(0f,0f,Random.Range(-359, 359));
myObject.Rotate (randomDirection);
myObject.rigidbody.AddForce(transform.?????? * speed, ForceMode.Impulse);
}
答案 0 :(得分:2)
随意你想要
myObject.rigid body.AddForce(Random.Range(0, 10), Random.Range(0, 10), Random.Range(0, 10), ForceMode.Impulse);
代码说,给我x, y, z
的随机强制值。
轮换与此无关。如果从随机角度推动猫,则向猫添加力量。你不需要旋转猫来推动它。虽然你不应该四处推猫。
如果你坚持随意旋转,那么让你的对象向前发射:
myObject.rigid body.AddForce(myObject.transform.forward * speed, ForceMode.Impulse);
答案 1 :(得分:0)
transform.forward
是Transform
上的一个属性,表示对象面向的方向。在编辑器中,它由对象的变换句柄上的蓝色轴表示。
如果您在脚本中使用它,则对象将按照myObject.Rotate(...)
行确定的随机方向对其施加力。