unity3d:碰撞后物体不会向后飞

时间:2012-07-01 21:44:40

标签: physics unity3d collision

我有一辆带有刚体的汽车进入模型,Lerpz(没有动画),也有一个刚体。我希望汽车能够击中Lerpz并让Lerpz向后飞行3秒钟,然后在汽车上使用以下代码消失。两者都有碰撞器(一个用于Lerpz的胶囊,一个顶部和底部的汽车)。 Force值是任意选择的:

function OnCollisionEnter(collidedObject : Collision) { 
    Debug.Log("hit");
    if (collidedObject.gameObject.tag == "Lerpz") {
            Debug.Log("lerpz"); 
            collidedObject.rigidbody.AddForce(-Vector3.forward);
            Destroy(collidedObject.gameObject, 3.0f); 
    }
}

我得到的错误是:

NullReferenceException
UnityEngine.Rigidbody.AddForce (Vector3 force) (at     
C:/BuildAgent/work/300357e52574df36/Runtime/ExportGenerated/Editor/NewDynamics.cs:492)
CarZombieBehavior.OnCollisionEnter (UnityEngine.Collision collidedObject) (at    
Assets/CarZombieBehavior.js:17)

两者"击中"和" lerpz"打印出来的,但车子撞到了不可移动的Lerpz(质量为10,车的质量为1500),当它撞到Lerpz时停在轨道上。

0 个答案:

没有答案