Blenderにはノンリニアアニメーションという複数のアクションを重ねたり
つなぎあわせたりする機能があります。
今回はモーションを作成して FBXで外部に出力する時に使える機能を中心にとりあげたいと思います
用語説明
まず ノンリニアアニメーションのエディタの各部の名称を説明しておきます
ドープシートと並べてキャプチャしてあります
画面で 階層になっているのをトラックで
トラックの中に並んでる短冊状のものが ストリップでストリップの中にアクションが入っています
ストリップは アクションの名前とは別の名前をつけて管理することができます
トラックの上の濃いオレンジ背景の部分は保留アクションで
ドープシートでストリップにしていないアクションを編集している時に表示されます
保留アクションの部分にある「アクションをストリップ化」ボタンを押すと 編集中のアクションをストリップにすることができます
保留アクションをストリップ化すると ドープシートからキーフレームの表示が消えます
トラック上の操作
ストリップのある部分でTabキーを押すとストリップアクションの調整で
ストリップに利用されているアクションのキーフレームがドープシートに表示されて編集できるようになります
トラック名の左の星マークをオンにすると そのNLAの中でそのトラックのみが有効になって
トラック名の右のチェックボックスをオフにするとトラックが無効(ミュート)にされます
ストリップ選択した状態で ビューメニューの「プレビュー範囲を自動設定」を実行すると
ストリップのある範囲がプレビュー範囲になります
ストリップを繰り返し確認するのに便利です
トラック上で複数のストリップを選択して 追加メニューの「メタストリップを追加」を実行すると
複数のトラックをひとまとまりに扱う状態になります
順番を編集する時に使う他、後に説明するFBX出力で複数のアクションを一つのアクションとして出力できます
ストリップの設定
NLAエディタのサイドバーのストリップの項目では ストリップの設定を変更することができます
先の操作で操作中のアクションからストリップを作成した時にはキーフレームのある範囲が全てストリップになりましたが
アクションクリップの「長さを同期」のチェックボックスを外すと アクションから 開始フレーム 終了で指定した範囲を利用するように設定できます
開始終了の数字は 中にあるアクションのでのフレームなので ストリップで時間を移動していると値が違ってくるので注意が必要です
また「再生スケール」で全体の長さを変更することで 動きの速度を変更したり
「リピート」のでストリップを繰り返しするようにも設定できます
アクティブストリップの時間のアニメーションのチェックをオンにすると
アクションの中のどのフレームを使用するか キーフレームで指定することもできるようになって
スケール等で設定するよりも細かい速度調整ができます
FBX出力設定
複数あるアクションのうち特定のものだけFBX出力したい場合NLAエディッタに配置する方法があります
キャプチャの「全てのアクション」チェックを外した状態だと有効なNLAトラックに配置されたアクションが出力され
「NLAエディッタ」のチェックも外すと 全てのストリップが合成されたアクションが出力されます
上のキャプチャで出力したFBXを空の.blendファイルに読み込んだ時のアクション一覧はこうなります
NlaTrack.003のトラックはミュートされているので トラック上にあるストリップは出力されていません
個々のストリップが オブジェクト名|ストリップ名と並んだアクション名で出力されています
Unity等でもこういった名称で読み込まれるようです
メタストリップはひとまとまりのアクションと扱われています。
全アクションのチェックが入っていると NLAストリップも含めた全てのアクションが出力されるので
それと比較すると かなりすっきりしたデータになるかと思います