【Unity2D入門 番外編】2つのオブジェクトの物理判定とハンドラ呼び出し条件のマトリクス

raharu(仮名)(プログラマー)
これがダイバージェンス1%の先の世界か。。。

A:rigidbody : Aオブジェクトのrigidbody2D
A:isTrigger:AオブジェクトのCollider.isTriggerチェックボックス
B:rigidbody : Bオブジェクトのrigidbody2D
B:isTrigger:BオブジェクトのCollider.isTriggerチェックボックス
レイヤー:Edit > Project Settings > Physics 2D
物理干渉:オブジェクト同士がぶつかるか
OnTriggerEnter2D:オブジェクトにアタッチしたスクリプトで呼び出すハンドラ
OnCollisionEnter2D:オブジェクトにアタッチしたスクリプトで呼び出すハンドラ

A:rigidbody A:isTrigger B:rigidbody B:isTrigger レイヤー 物理干渉 OnTriggerEnter2D OnCollisionEnter2D
× ×
× × × ×
× × ×
× × × × ×
× × ×
× × × × ×
× × × ×
× × × × × × ×
× × × ×
× × × × × ×

このマトリクスから読み取れるのが、

1.レイヤーのチェックを外すと完全に干渉しなくなる
2.isTriggerがオブジェクトA,オブジェクトBどちらかがONになっていれば物理干渉しなくなる
3.物理干渉があるときだけOnCollisionEnter2Dハンドラが呼び出される
4.よって、OnTriggerEnter2DとOnCollisionEnter2Dを同時に動作させる事はできない??
5.rigidbodyを両方にアタッチしなくても物理的な干渉を受けることができる

なにげに不便です。。