Unity小技 ボールなど投げるオブジェクトのRigidbody設定の注意点

Unity

説明

Unityでボールや銃の弾のオブジェクトを扱う際に、Rigidbodyを正しく設定しないと、壁などを通り抜けてしまう現象が起こります。

特に初心者の方は、原因がわからず1日潰れてしまうこともあるかと・・

解決法:Collision Detectionの設定

ボールなど、投げるオブジェクトにはのRigidbodyの「Collison Detection」設定を変更しましょう。
Collison Detection「衝突判定」

Discreate破棄処理も軽く、止まっているオブジェクト用。移動の速いオブジェクトは貫通してしまします。
Continuous継続的移動の速いオブジェクトでも貫通しない。動くオブジェクト同士でなければ、これで良いのかな。
Continuous Speculative継続的
投機的
移動の速いオブジェクトでも貫通しない。動くオブジェクト同士でもOK。物理計算の予測による誤検知(ゴースト衝突)が起こるかもしれない
Continuous Dynamic連続 ダイナミック移動の速いオブジェクトでも貫通しない。動くオブジェクト同士でもOK。物理計算の予測による誤検知(ゴースト衝突)はしない。
処理は一番重い

ボールや鉄砲の弾は、「Continuous Speculative」にすると良いでしょう。

詳しい衝突判定もしたい場合は「Continuous Dynamic」の方がいいでしょう。

コメント

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