#Unity-今更ながらRigidBodyのCollision Detectionについての覚え書き
UnityでRigidBodyの衝突判定を設定するときにいつも忘れるのでUnityのマニュアルの記述を表にまとめてみた。
"???"になっているところ、Continuous同士の衝突については記述がないみたい。
RigidBodyなし | Discrete | Continuous | Continuous Dynamic | |
---|---|---|---|---|
RigidBodyなし | 不連続 | 連続 | 連続 | |
Discrete | 不連続 | 不連続 | 不連続 | 不連続 |
Continuous | 連続 | 不連続 | ??? | 連続 |
Continuous Dynamic | 連続 | 不連続 | 連続 | 連続 |
Unityマニュアル
https://docs.unity3d.com/ja/current/Manual/class-Rigidbody.html
Collision Detection 高速で動くオブジェクトが、衝突を検知せずにすり抜けることを防止します。
- Discrete Discreet (不連続な)衝突判定を、シーン内の他すべてのコライダーに対して使用してください。他のコライダーは、それに対する衝突のテストを行う時に Discreet 衝突判定を使用します。通常の衝突に使用されます(これがデフォルトの値です)。
- Continuous 動的なコライダー(リジッドボディあり)には Discrete (不連続)な衝突、静的なメッシュコライダー(リジッドボディなし)には Continuous (連続)な衝突を適用します。Continuous Dynamic を適用したリジッドボディに対する衝突は、連続的な衝突検知をします。これは Continuous Dynamic を適用したオブジェクトの衝突相手として使用します。(物理演算のパフォーマンスに大きく影響するため、高速なオブジェクトの衝突で問題が出ない場合は Discrete のままにしてください。)
- Continuous Dynamic Continuous や Continuous Dynamic 衝突を適用したオブジェクトに対して、連続的な衝突検知を行ないます。静的なメッシュコライダー(リジッドボディなし)にも連続的な衝突を適用します。その他のコライダーについては 不連続な衝突検知を行ないます。高速で動くオブジェクトに使用します。