TilemapでComposite Colider2Dがうまく動かない時

Unity

Tilemap Coliderだと当たり判定がきちんと出来たのに、Composite Colider2D+Rigidbody 2Dを付けたら思うように動かなくて、少し嵌りました。

Tilemap Colider 2DのUsed By CompsiteをOnにすることで、別々のColiderとしてではなく、一連のColiderをくっ付けて1塊のColiderとして扱えるようになります。
当然エッジの数も少なくなるので処理が軽くなるので積極的に使いたいです。

ですがUsed By CompsiteをOnにしたら、当たり判定が消えた、、、
何故????

原因はココでした。

GeometryTypeがデフォルトだとOutlinesなのですが、Polygonsにすると判定します。

OutlinesにするとColiderの境界線は引かれるものの、内側か外側かを物理エンジンは判断できないため当たり判定がうまく機能しないのではないか、という推測です。逆にいうと境界線に直接当たったかどうかを見る場合には問題ないのかもしれません。
Polygonsにすると内部も判定が効くようになると思われるため、問題が解決するようです。

コメント