2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【3Dゲームエンジン】Unity質問スレッド24

489 :名前は開発中のものです。:2016/05/20(金) 20:57:55.85 ID:imTmdaD1.net
>>488
MeshColliderをconvexにした場合そうなる。
convexというのは凸包という意味だ。
RigidBodyをつける場合にはこれにしなければならない。
なぜそういうことになるかというと凸包でない剛体のモーメント計算など
リアルタイムではやってられないからだ。
またメッシュコライダー同士の衝突も少なくとも片方は凸包にしなければならないのは
やはり計算が爆発的に増えるからだ。
MeshColliderの中身は推測するしかないが恐らく一面一面をコライダーとしている。
つまり100トライアングルのメッシュを使うということは100個コライダーをつけるということだ。
二つの100トライアングルメッシュ同士で衝突計算した場合1万回の衝突判定が行われることになる。

こういったことはリアルタイムゲームではやってられないので
そういうのは最初から無しにしようというのがUnityの仕様。

だからその事例でその形に判定をとりたかったら
Colliderに使うメッシュをあらかじめ凸包要素に分割した上で
複数のMeshColliderを使うくらいしか方法はない。
勿論Convexにしなくていい、という事情があればそれだけでもいい。

総レス数 1006
312 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200