Blenderいじり /Animation編(1) [追記]
UnityからBlenderに戻ってきました。
そろそろUnityで公開されているTutorialとかではなく、自分が考えた物を作ってみたくなり、この機会にBlenderで作ったキャラクターをUnityに持ってきたい、と思った訳です。
今日の時点で、Blenderで作成したAnimationをFBXと書き出して、Unityにインポートするところまではできました。
今のところ、WALKと、RUNというAnimationを持ったFBXを用意して、Unity側にもってくることはできた。
箱人間ですけど。
UnityLearnでは、Gameのデザインは、最初は単なるCubeとかから始める事を教えていたような気がしますが、結局、やりたいようにしかできません。そういう性分。
箱人間でのTESTですが、ここまででも結構苦しみました。
・以前、Blenderで自作したモデルは、Boneへの紐づけでAutoWeightがエラー。
→ たいしたモデルでもないので、箱人間でやり直し。
→ 手のひらと足先と顔の向きが分かるような形状まで。指は面倒なのでやめた。
・RootBoneをどこに置くか、Boneの軸をどうしておくべきかで迷走。
→ 今のところ気にする必要なし。Rootは足元に小さく配置。
Youtuneにも無数に解説動画があって、この辺りは、下記の動画が分かりやすかった。
Boneを作成後に、モデルのMeshと紐づけして、動かせるようにするんだけど、こんなに頂点数が少ないのに、AutoWeightの設定が不適切でがっかり。
→ 慣れないWeightPaintでちまちま調整作業を実施。
→ 動かしたBoneをALT+Rで元に戻そうとしたら、反応せず。
NVIDIAのOverlayを呼び出すShortCUTと干渉してた。修正済み。
いろいろあって、WeightPaintの効率がすごく悪かったんだけど、下記動画の説明をちゃんと聞いておけばよかった。マスク機能は必須。
この動画ではUnityにAnimationをもっていくなら、FBXでExportするだけって事になっているんだけど、そこでも一苦労。
・Blenderで歩行motionを作って、WALKという名前で、Actionとして登録してから、FBX-exportすると、UnityのPreViewが動かない。1フレームしか出力されていない?
→ Actionとして登録せずにFBX出力して、Unity上に持っていくと動作する。
→作ったActionの配置が必要なのか?
よく理解しないまま試行錯誤。作ったActionを、NLMエディタで開いて
黄色いバーがでる状態にしてからExportしたら、UnityのPreviewでも動作した。
Blenderのアニメーション関連機能はあまり使ったことがない。
ドープシートだの、タイムラインだの、Action編集など。ちょっと分かりにくい。
今のところ、まったく理解できていない・・・。
現状だと、インポートしたFBXからシーンに配置すると、モデルは表示されるけど、まったく動かない状態。Previewでは動いているので、形状も動きもインポートはできている。Stateマシンを作って、状態にあって動きを指定する必要があるはず。
あまり細かい事から手を付けてしまうと、途中で挫折するRiskが高いけど、複数のMotionをscriptでコントロールする所までは、何とか進めたい。
過去に、どこかのRigfyの動画もみて、手元にメモを残しているけど、単純な動きなら自作の方がシンプルでよさそう。いずれ、少し頑張って自分でRIGを作るとなったら、下記の動画は参考になるかも? #まだ見てない。
もっとお手軽にやる方法はあるようなので、一区切りついたら、下記動画の内容も試してみるかも?