読者です 読者をやめる 読者になる 読者になる

Leap motionとMMD4Mecanimでいろいろ触る

Unity

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のチェックを外す。 

f:id:nyarurato:20140806001938p:plain

 これでMMD4Mecanim側の設定は終わり。

 

この設定したモデルに触るにはMMD4Mecanim Rigidbodyのスクリプトをアタッチしないといけないみたいです。

今回はLeapmotionの手のモデルで触りたいので手のモデルにアタッチします。

leapmotionの手のモデルは描画用?のモデルと物理演算用のモデルで分かれているようなので物理演算用のモデルの方にアタッチします。

f:id:nyarurato:20140806003326p:plain

Projectビューではindexやらmiddleやらは見えますが指節一つ一つが見れないのでとりあえずHierarchyにドラッグアンドドロップ

f:id:nyarurato:20140806003829p:plain

 これで全部みえるようになったので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