1

在 Youtube 上做了一些视频教程后,我意识到这两个类看起来相似且重复。

-碰撞2D-

当传入对撞机与此对象的对撞机接触时调用此方法(仅限 2D 物理)

 void OnCollisionEnter2D(Collision2D coll) {
        if (coll.gameObject.tag == "Enemy")
            coll.gameObject.SendMessage("ApplyDamage", 10);

    }

-对撞机2D-

当另一个对撞机与该对象接触时调用此方法

 void OnTriggerEnter2D(Collider2D other) {
    Destroy (other.gameObject);
}

两种方法具有相同的目的并且看起来相同。有什么区别?

4

1 回答 1

1

Collision2D包含有关碰撞的信息,同时Collider2D是碰撞对象的一个​​组件。

http://docs.unity3d.com/ScriptReference/Collision2D.html http://docs.unity3d.com/ScriptReference/Collider2D.html

如您所见,目的相似,但不一样。

于 2015-03-01T23:47:16.203 回答