我有一辆带有刚体的汽车进入模型,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时停在轨道上。