无法向实例化对象添加强制

时间:2017-04-23 17:31:56

标签: c# unity3d

当前通过按钮单击在运行时实例化对象(预制件)。每次单击按钮时对象都会实例化,但即使我增加了力,它也不会移动。

检查类似的问题,其中GameObject和Rigidbody2D之间的投射不匹配,但这不是我的情况下的问题。如果值对于不会产生差异的变化而言太小,则尝试在变换右和前进之间进行切换乘以大数。任何帮助表示赞赏。谢谢。

以下脚本位于Player对象上。预制件是从对象'提示实例化的。这是Player对象上的子对象。子弹将Rigidbody2D设置为Kinematic。

 public Transform tip;
 public Rigidbody2D bullet;

 if (Input.GetButtonDown("Fire1")) {
    Rigidbody2D clone;
    clone = Instantiate(bullet, tip.position, Quaternion.identity) as Rigidbody2D;
    clone.AddForce(clone.transform.right * 5000000);
 }

1 个答案:

答案 0 :(得分:1)

  

Rigidbody2D设置为Kinematic for bullet。

这是错误:物理引擎永远不会移动Kinematic对象,将子弹刚体体类型更改为AddForce,使用{{1}}施加的力将移动子弹。