未调用OnTriggerEnter2D

时间:2016-05-28 22:27:09

标签: c# unity3d triggers collision

我正在尝试在Unity中制作小行星的副本。问题是我的子弹没有触发小行星上的OnTriggerEnter2D方法。小行星附有以下脚本:

using UnityEngine;
using System.Collections;

public class Asteroid : MonoBehaviour {

    void Start () {

        print ("class initiated"); 

    }

    void onTriggerEnter2D (Collider2D collider) {

        Debug.Log (collider); 

    }

}

子弹GameObject具有运动学和触发器功能,并附有Rigidbody 2D和Box Collider 2D。小行星GameObject具有Rigidbody 2D和Circle Collider 2D,并且Is Kinematic和Is Trigger未经检查。

1 个答案:

答案 0 :(得分:2)

问题是拼写。 onTriggerEnter2D中的void OnTriggerEnter2D(Collider2D collider) { Debug.Log(collider); } 应该大写。像这样的简单错误可能毁了你的一天。在我运行你的代码之前,我甚至没有注意到它。

javax.persistence.PersistenceException: No Persistence provider for EntityManager named WebApplication1PU
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:85)

下次如果您 确定Unity回调函数的拼写,请右键单击 Visual Studio ,然后点击实施MonoBehaviours 搜索对于您想要的功能,选择它并单击确定。 Visual Studio将为您添加该功能。