Leap motionとMMD4Mecanimでいろいろ触る
MMD4MecanimとUnityのプリミティブオブジェクトの物理演算ってどうすりゃいいのかな~
Leap motion使って触ってみたいな~と思ってやったら途中結構ハマったのでまとめます。
参考にしたページ
OculusRiftをUnityで使うTips的なまとめ:http://togetter.com/li/624399
まずLeapmotionをUnityで動かすとこですがおなじみの凹みTips(http://tips.hecomi.com/category/Leap%20Motion)が分かりやすいです。Asset Storeに上がっているのをそのまま使うのはUnity Proじゃなきゃダメだった気がします。
MMD4Mecanimですが、とりあえずMMDモデルをインポートします。
その後、モデルをHierarchyにつっこんでMMD4Mecanim Modelのコンポーネントを少し変更します。
Physics EngineををBullet Physicsに変更。Generate CollidersのProcessをクリック。Join Local Worldのチェックを外す。
これでMMD4Mecanim側の設定は終わり。
この設定したモデルに触るにはMMD4Mecanim Rigidbodyのスクリプトをアタッチしないといけないみたいです。
今回はLeapmotionの手のモデルで触りたいので手のモデルにアタッチします。
leapmotionの手のモデルは描画用?のモデルと物理演算用のモデルで分かれているようなので物理演算用のモデルの方にアタッチします。
Projectビューではindexやらmiddleやらは見えますが指節一つ一つが見れないのでとりあえずHierarchyにドラッグアンドドロップ。
これで全部みえるようになったのでboneすべてを選択してAdd Component -> Scripts ->MMD4Mecanim Rigid Bodyとすればオッケーです。
あとはProjectビューにある元々のRigidHandは削除してHierarchyにあるMMD4Mecanim RigidBodyをアタッチしたRigidHandをProjectのとこに戻してやります。
その後はテキトーにGameobjectを用意してHand ControllerのスクリプトをアタッチしてGraphics ModelにSkeltonHand、Physics ModelにRigid Handをつっこめばおしまい。
たぶんMMDモデル側で剛体とかのセッティングがされてないモデルは触れないと思います。
またこんなAssetがあるようです。
Unityで、今すぐ簡単にできる!おっぱい揺らし!!
http://dvorak.hatenablog.com/entry/2014/08/04/161407