BlenderのRigidBodyは当たり判定を変えることができます。当たり判定は目視可能で、RigidBodyCollisionsのShapeで変更することが可能です。Shapeはいくつか種類があるのでまとめておきます。それとShapeKeyとRigidBodyの関連についても触れます。
RigidBodyの当たり判定
RigidBodyの当たり判定は、Blenderのプロパティパネルの、PhysicsタブからまずRigidBodyを追加し、RigidBodyCollisionsのShapeで変更します。
Convex Hull
RigidBodyのデフォルトではConvexHullが選択されている。当たり判定の見た目はつぎのような感じ
Blenderのマニュアルでは次のように説明されている「メッシュのようなサーフェスがすべての頂点を囲む(たとえばシュリンクラップする)(頂点数が少ないほうが最良の結果)。物体の凸近似は、優れた性能と安定性を持っています。」これが意味するところまではよくわからなかった。
Mesh
Convex Hullよりも詳細な判定をもっているが、凸凹のシミュレートが得意ではない。当たり判定の見た目もConvex Hullと変わりがない。
Cone
Coneは円錐の形をしている、三角コーンのような見た目だ、だが見た目の当たり判定とは少々異なるので注意が必要。
コーンの当たり判定は高さはz軸から取得され、半径はx軸かy軸のどちらか大きいほうから取得される。たとえ見た目ではあたってないように見えても、当たり判定は実際は長いほうに均等である
Cylinder
Cylinderは円柱の当たり判定で、以下のような見た目をしている
Cylinderの当たり判定も、コーンと同じで、高さはz軸から取得され、半径はx軸かy軸のどちらか長いほうが取得される。
Capsule
CapsuleはBlenderのマニュアルでは、Z軸が上向きとしか書かれていない。見た目は次のような形である。
検証した結果、y軸が長い場合、それを高さと取得してしまうようだ。こちらは自ら検証すべきである。Capusuleの最大の特徴はcubeオブジェクトであっても転がりがおきることだろう。
Sphere
Sphereの当たり判定は完全な球体のような形をしている。
Sphereの当たり判定は、ボックスの最大軸が半径になるので、見た目にだまされてはいけない。
Box
Boxの当たり判定はこのような形になる。たとえば球体オブジェクトだけども転がりをしたくない。ときなどに使用できるが、実際にはあまり使わないかもしれない。
Boxの当たり判定は、見た目どおり。
ShapeKeyの当たり判定について
ShapeKeyはオブジェクトの変形をアニメーションすることができるものです。実はShapeKeyアニメーションもRigidBodyでシミュレーションすることができます。ただしこれはおまけ程度だと思っておいたほうがよいです。ShapeKeyとRigidBodyを組みあわせて実行してみるとなかなかうまくいきません。RigidBodyのShapKeyシミュレーションは煮詰まりがないので、実際には使い物にならないでしょう。
RigidBodyでShapeKeyをシミュレートする方法
ここから先の話はオブジェクトにShapeKeyを設定していることを前提で話をすすめます。
- ShapeKeyのキーフレームをもっているオブジェクトを選択する
- RigidBodyのShapeでMeshを選択する。
- MeshSourceでDeformを選択し、Defomingにチェックをつける
- 実際にアニメを再生しシミュレートする
ShapKeyのRigidBodyをシミュレートするには、以下の画像のようにDefomingにチェックを入れておく必要があります。
アニメを再生してみると、次のようにシェイプキーで変形したメッシュにも当たり判定がついていることがわかります。
ただし、さきほどものべたように、ShapeKeyの当たり判定はかなりあいまいです。簡単なアニメーションならよいかもしれませが、これでなにか複雑な作品を作ろうと思っても難しいかもしれません。当たり判定の曖昧さを解決する方法はあるにはあるようですが、情報を見てもぱっとしないものだったので、この記事はここでおわりとします。
コメント