【问题标题】:Unity2D - Is there any function of detecting collision NOT enter?Unity2D - 是否有任何检测碰撞未进入的功能?
【发布时间】:2016-09-01 05:15:13
【问题描述】:

我知道有检测碰撞进入的功能。 那是OnCollisionEnter2D(){} 但我想知道是否有任何检测碰撞未进入的功能?或者其他方式添加到OnCollisionEnter2D

原因:我有两个对象和一个变量 HIT。如果它们相互接触,则 HIT 变量设置为 1。如果它们不相互接触,则 HIT 变量设置为 0。

有没有办法做到这一点?这是我的代码:

void OnCollisionEnter2D(Collision2D coll){
    if (coll.gameObject == Collidor) {
        hit = 1;
    } else {
        hit = 0;
    }
}

检测碰撞进入效果很好,但是else不行。

谢谢!

【问题讨论】:

    标签: c# unity5


    【解决方案1】:

    是的,您可以使用OnCollisionExit2D 来检测两个接触的对象何时不再接触。

    void OnCollisionEnter2D(Collision2D coll){
        if (coll.gameObject == Collidor) {
            hit = 1;
        } 
    }
    
    void OnCollisionExit2D(Collision2D coll){
        if (coll.gameObject == Collidor) {
            hit = 0;
        }
    }
    

    【讨论】:

    • 哇非常感谢你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-25
    • 2014-05-15
    相关资源
    最近更新 更多