【Unity】OnTrigger系のメソッドでisTriggerか判別する方法【Collider】

blog blocks wallpaper Unity
Photo by Miguel Á. Padriñán on Pexels.com

こんな感じで出来ました。

private void OnTriggerStay2D(Collider2D collision)
    {
        if (collision.isTrigger)
        {
            Debug.Log("isTriggerです!");
        }
        else
        {
            Debug.Log("isTriggerではありません!");
        }
    }

OnCollision系ならisTriggerにチェックが入っていないColliderに触れたらメソッドが実行されるので判別する必要はありませんでしたが、OnTrigger系はisTriggerにチェックが入っていようが入っていまいがメソッドが実行されるので判別方法が欲しいと思って勢いで打ってみたらありました。

ノコノコの甲羅のようなものをOnTrigger系のメソッドで跳ね返るようにしていたとして、isTriggerで判別することで、isTriggerにチェックが入っていて通り抜けられるオブジェクトには触れても跳ね返らない。
みたいな使い道がある…かもしれないと思います(自信ないし伝わりにくい)。
というかそれ目的で調べました!

コメント

タイトルとURLをコピーしました