2013年4月23日火曜日

Blenderにbvh入れてそのBoneオブジェクトをUnityのmecanimで使う実験

前にBlenderにbvhをインポートして、Unityに入れたとき、わざわざキャラクタモデルを用意してそれにbvhのboneをあててからfbxにエクスポートしてたけど、
bvhインポートした直後のBoneオブジェクトのみでOKだったらしい。


アニメーションつきのBoneオブジェクトをFBXとしてExportするだけでOK!



Blender側

bvhをインポートした直後ぐらいの例のBone(Armature)オブジェクト。





このBoneオブジェクトを選択し、FBX Export。設定はSelected Objectにチェックを入れる以外はデフォルトでOKだった。




これをUnityプロジェクトへインポート。

ここからUnity側。
インポートした直後は、PreviewウィンドウにはAvatarは表示されない。





インポートしてHumanoid型にして、Configure設定ウィザードに入った直後はこんな感じで





Bone設定がおかしい。Automap状態だと違うBoneが選択される。

したがっておかしい箇所をInspectorで設定してやる必要がある。




正しい対応Boneを手でチクチク設定した後。


これでDoneボタンで戻ると、Previewに適当なAvatarが適用されている(適用されてなくても別にいいと思うけど、一応正しく設定されたんだということで)



このアニメーションを指定したAnimatorを作成し、(speedが遅かったので5倍にしてみた)





適当なHumanoid型のキャラクタに適用させて





再生させると、一応動いた!



よく考えたらBone構造が同じならばLegacy型(Animationコンポーネント)でも同じことができると思う。