CGBoxの一部の記事にはアフィリエイト広告が含まれております。
【Blender3.5】NLA(ノンリニアアニメーション)を使いこなそう!
こんにちは!
こちらの記事では、フリーの3DCGソフト「Blender」を使う上でのヒントになる情報を発信しています。
今回は、キャラクターモデルなどにアニメーション作成に便利な「NLAエディター」の使用方法について解説します。
NLAエディターを使いこなすことで、複数のアクションを組み合わせた複雑でリアルな動きを表現することができるようになるので、ぜひ参考にしてみてください!
NLA(ノンリニアアニメーション)エディターとは?
NLA(Non-Linear Animation: 「ノンリニアアニメーション」の略)エディターは、ストリップ化(下図のように「帯」で表示される)したアクションを、組み合わせたりループさせたりして編集するエディターです。
以前「アクション機能の使い方」の記事で紹介したように、Blenderではオブジェクトやボーンの一連の動きを「アクション」として登録できますが、ドープシート上では1つのアクションしか再生できません。
ですが、「NLAエディター」を使うことで、複数のアクションを組み合わせた動きをさせたり、アクションを補間するようなアニメーションを追加することができるようになります。
NLAエディターの各部の名称と機能
NLAエディターは、以下のようにBlenderの分割画面の「トップタブ」の左上のアイコンから「ノンリニアアニメーション」を選択すると表示できます。
NLAエディターは、以下の項目①~④で構成されます。
- ヘッダー
- トラック
- ストリップ
- サイドメニュー
各項目について内容を説明します。
ヘッダー
ヘッダーには以下5つの設定項目があります。
- ビュー:NLAエディターの表示設定を行います。
(例:フレーム数/秒の切り替え、マーカーの表示/非表示の切り替えなど) - 選択:NLAのストリップの選択方法を設定します。
(例:ボックス選択、選択範囲の反転など) - マーカー:マーカー(アニメーションの中での重要な意味を持つフレームやイベント)を追加・編集します。
- 編集:ストリップやトラックを編集します。
- 追加:ストリップやトラックを追加します。
「編集」と「追加」については、ストリップやトラックの追加・編集を行う際によく使うので、後ほど詳細を説明します。
トラック
トラックは、NLAに格納されたストリップを整理するシステムです。
トラックはレイヤー(階層)構造になっていて(Clip StudioやGimpなど画像編集ソフトのイメージ)、下段のトラックの出力結果に対して、上段のトラックが追加されていきます。
各トラックについている星・チェックマーク・南京錠のアイコンの意味は以下の通りです。
- 星(☆):選択したトラックのみが再生される(ソロトラック)
- チェックマーク(☑):選択を外すと「ミュート」となりトラックがアニメーションに影響を与えなくなる
- 南京錠(🔒):選択するとトラックが「ロック」されて編集できなくなる。
ストリップ
ストリップは、1つ1つのアクションデータをNLAエディター上で「帯」として表示したものです。
ストリップは各トラック内に配置し、再生速度や繰り返し回数などを自由に編集することができます。
(ストリップの編集方法はのちほど説明します。)
選択したストリップは上の図のようにオレンジ色で表示されます。
ストリップは、アクションデータを保存する「アクションストリップ」を含めて以下の4種類あります。
- アクションストリップ:アクションのキーフレームデータを変換したストリップ
- トランジションストリップ:アクションストリップ間を補間する
- サウンドクリップストリップ:スピーカーオブジェクトがサウンドクリップを再生するタイミングを制御する
- メタストリップ:複数のストリップをグループ化したストリップ
サイドメニュー
サイドメニューは、選択したストリップの開始・終了フレームなどの設定内容を確認・調節することができます。
サイドメニューの表示・非表示は、「N」キーで切り替えることができます。
サイドメニューは下図のように「ストリップ」と「モディファイアー」のタブに分かれていて、基本的に「ストリップ」のタブを使用してアニメーションの調節を行います(やり方はのちほど説明します)。
NLAエディターの基本操作
トラック・ストリップの追加など、NLAエディターの基本操作のやり方を説明します。
アクションのストリップ化
Blenderには「アクション」といって、「ある一連のキーフレームアニメーションをまとめたもの」を登録する機能があります。
「アクション」は、「アクションエディター」でオブジェクトやボーンの位置・角度などにキーフレームを追加することで作成・登録することができます。
アクションを作成・登録する手順は、コチラの記事で解説しているので、あわせて参考にしてください。
「キーフレームアニメーション」の基本については、コチラの記事にまとめていますので、あわせて参考にしてください。
アクションエディターに登録したアクションは、以下のいずれかの方法で「ストリップ化」し、NLAエディターで編集することができます。
方法1:アクションエディターの「ストリップ化」をクリック
方法2:アクションエディターからNLAエディターに切り替え、「アクションをストリップ化」(▼ボタン)をクリック。
Blenderの再起動時に、参照されていないアクションは消えてしまいます。
必ずストリップ化する前にアクションエディター上でフェイクユーザーにチェックを入れておいてください!
ストリップの削除
ストリップを選択して、ヘッダーの「編集」→「ストリップを削除」、またはショートカットキー「X」で、ストリップを削除できます。
トラックの有効化・無効化・削除
トラックのチェックマークのオン・オフを切り替えることでトラックの有効・無効(ミュート)を切り替えることができます。
また、トラックを削除したい場合はトラックを選択して「編集」→「トラックを削除」もしくはショートカットキー「X」を押してください。
トラックの順序の入れ替え
トラックを選択して右クリック→「トラックの順序」で、トラックを1つ上下・最上段・最下段へ移動できます。
ストリップの移動
ストリップを同一トラック内で左右に移動したい場合は、マウスドラッグで移動できます。
また、1階層上もしくは下のトラックで、ストリップの開始/終了フレームの間が空白になっている場合は、マウスドラッグまたは「編集」→「ストリップを上/下に移動」で、上下のトラックに移動できます。
トラックのロック
ストリップを格納したトラックの南京錠マークをONにしてトラックをロックすることで、ストリップを削除したり、移動したりすることができなくなります。
ただし、トラックをロックしても、トラックの削除は可能です。
また、その場合は中に入っているストリップも削除されてしまうため注意してください。
ストリップの編集方法
ストリップを編集するさまざまな方法について紹介します。
編集する際は、「トラックのロック」(南京錠のマーク)を解除しておいてください。
開始・終了フレームの設定
「N」キーで表示されるサイドメニューから「ストリップ」タブを選択し、「アクティブストリップ」の「開始」「終了」で、アクションの開始・終了フレームを設定できます。
また、マウスドラッグでストリップを動かしてフレーム設定することも可能です。
再生速度の調整
こちらのように、サイドメニュー→「ストリップ」→「アクティブストリップ」の「開始」「終了」の間のフレーム数を調節することでスピードが変わります。
また、「S」キーを押してからマウスドラッグすることで、ストリップの長さを調節することも可能です。
(↑のように、カーソルのフレーム位置が長さ調節の基準になります。)
繰り返し(リピート)回数の設定
サイドメニュー→「ストリップ」→「アクションクリップ」の「リピート」の回数を増やすことで、アニメーションを繰り返し(リピート)させループアニメーションを作ることができます。
ブレンド(複数のアクションストリップを組み合わせる)方法の設定
複数のアクションをストリップ化して、NLAエディターでチェックを入れて有効化することで、複数のアクションストリップを同時に動かすことができます。
例えば、コチラのペンギンのように歩行+首振り+羽をパタパタのアクションを組み合わせることができます。
このとき、組み合わせたときの動き方は、上段にあるトラックの「ブレンド方法」の影響を受けます。
ブレンド方法は、サイドメニュー→「ストリップ」→「アクティブストリップ」→「ブレンド方法」で以下から選択できます。
- 置き換え:上段のストリップにより、下段のストリップが上書きされます。
- 追加:下段のストリップの結果に上段のストリップの影響が足し算されます
- 減算:下段のストリップの結果に上段のストリップの影響が引き算されます
- 乗算:下段のストリップの結果に上段のストリップの影響がかけ算されます
- 統合:下段のストリップの結果に対して、各プロパティのタイプに応じた数式により上段のストリップの影響が加味されます。
以下のペンギンのモデルは、腕の部分に「Stay_wing」(腕を下げて保持)と「Flap_wing」(腕を上げてパタパタ動かす)という2つのストリップが指定されていて、Stay_wingは下段のトラックに保存されています。
このとき、「Flap_wing」のブレンドモードを「置き換え」に設定した場合は、「Flap_wing」が再生されている間は「Stay_wing」の影響がなくなり、腕が高く上がった状態でパタパタ動きます。
一方、「Flap_wing」のブレンドモードを「追加」に設定した場合は、「Stay_wing」で腕を下げた状態の影響が入っているため、腕が下がった状態でパタパタ動きます。
したがって、下段トラックのストリップの影響を消したいときは「置き換え」、影響を入れたいときは「追加」を選ぶ、と覚えておけばよいかと思います。
ストリップの複製
ストリップは、「Shift+D」で複製できます。
このとき、トラックも一緒に複製されます。
また、「Alt+D」を押すと「リンク複製」(複製したストリップをインスタンス化)できます。
複数のストリップを一括で編集したい場合はこちらがオススメです。
ストリップの分離
ストリップを選択して右クリックし、「ストリップを分離」(またはYキー)を選択すると、現在のフレームでストリップを分離できます。
モディファイアーの追加
Nキーでサイドメニューを表示し、「モディファイアー」のタブを選択すると、ストリップにさまざまな効果を与えることができる「モディファイアー」を追加できます。
モディファイアーには以下の6種類があり、キーフレームを補間する「Fカーブ」の形状を制御できます。
- 生成:多項式関数を使用してFカーブの全体的な形状を制御
- 組込関数:三角関数などの数式を使用してFカーブの全体的な形状を制御
- エンベロープ:制御点を使用して、Fカーブの全体的な形状を調整
- ノイズ:ノイズ関数を使用してFカーブにノイズを加える
- リミット:Fカーブの値を指定されたXおよびYの範囲に制限
- ステップ補間:フレームの特定の範囲内で値を切り捨てることにより、Fカーブを階段状に調節する
たとえば「ノイズ」モディファイアーを追加すると、こんな風にぎこちない動きを表現することができます。
ちなみに、NLAエディターで追加できるモディファイアーは「Fカーブモディファイアー」といって、グラフエディターのモディファイアーと同じ機能です。
グラフエディターのモディファイアーの使用方法はコチラの記事で紹介しているので、あわせて参考にしてください。
トランジション(移行)ストリップの追加
同一トラック内に複数のストリップがある場合、そのストリップ同士を補間する「トランジション」ストリップを追加することができます。
こちらのように「Shift」キーを押しながらトランジションを追加したいストリップを複数選択し、ヘッダーの「追加」→「トランジションを追加」で動きを補完できます。
メタストリップの追加・除去(ストリップのグループ化)
同一トラック内に複数のストリップがある場合、ストリップをグループ化する「メタストリップ」を追加できます。
ストリップを複数選択してヘッダーの「追加→メタストリップを追加」(またはショートカットキー「Ctrl+G」)でメタストリップを追加できます。
また、メタストリップを選択してヘッダーの「追加→メタストリップを除去」(またはショートカットキー「Ctrl+Alt+G」)でメタストリップを除去できます。
調整(Tweak)モード
「調整(Tweak)モード」を使うことで、NLAに変換されたアクションのキーフレームを調節することができます。
調整モードでキーフレームを調節するためには、アクションエディター(ドープシートを開き、「アクション」を選択)も開く必要があります。
ストリップを選択した状態で「Tab」キーをクリックすると調整モードに切り替わり、アクションエディターに対応するアクションが表示され、キーフレームを調整できます。
調整モードに切り替わっているときは、ストリップが緑色に表示されます。
この状態でアクションエディターでキーフレームを動かすと、NLAエディターおよびアニメーション結果にも反映されます。
ちなみに、調整モードはTabキーを再度クリックするか、NLAの他の部分をクリックすると解除されます。
キーフレームが表示されない時は、アーマチュアを選択していったんポーズモードか編集モードに切り替えて、「A」キーをクリックしてボーンを全選択すると表示されるようになります。
FBXエクスポート時のNLAアニメーションのベイク
最後に、モデルをFBXにエクスポートする際、NLAアニメーションをベイクする方法を紹介します。
事前に、トップバーの「編集」→「プリファレンス」→「アドオン」から標準搭載アドオン「FBXフォーマット」が有効になっていることを確認してください。
エクスポートしたいモデルおよびアーマチュア等のすべてのオブジェクトを選択した状態で、トップバーの「ファイル」→「エクスポート」→「FBX」を選びます。
Blenderファイルビューの画面が開くので、「アニメーションをベイク」およびその下にある「NLAストリップ」にチェックを入れると、アニメーションがベイクされ、他のソフトでも再生できるようになります。
上の手順でエクスポートしたFBXファイルをUnityなどの外部ソフトにインポートすると、こちらのようにアニメーションデータを読み込むことができます。
Blenderで作ったモデルを、リグと一緒にUnityなど他のソフトにエクスポートすることができる「FBX」のエクスポート方法については、コチラの記事を参考にしてみてください。
まとめ
NLAエディターの使用方法についていろいろと紹介してみましたが、いかがだったでしょうか?
NLAを使いこなすことで、複雑なキーフレーム操作をせずに、さまざまな動きを組み合わせた複雑な動きを表現できるようになるので、ぜひNLAエディターの使い方をマスターしてみてください!
最後に、今回のまとめです。
- NLA(ノンリニアアニメーション)エディターとは?: ストリップ化したアクションを編集するエディター
- NLAエディターの各部の名称と機能
- ヘッダー: 表示・選択切り替えや、ストリップ/トラックの追加・編集などのメニュー
- トラック: ストリップを整理するレイヤーシステム
- ストリップ: 1つ1つのアクションデータを「帯」として表示したもの
- サイドメニュー: 選択したストリップの開始・終了フレームなどの設定内容を確認・調節
- NLAエディターの基本操作
- アクションのストリップ化: アクションエディターから「ストリップ化」または、NLAエディターから「アクションをストリップ化」
- ストリップの削除: ヘッダーの「編集」→「ストリップを削除」(または「X」)
- トラックの有効化・無効化・削除
- トラックのチェックマークのオン・オフを切り替えることでトラックの有効・無効切り替え
- トラックを選択して「編集」→「トラックを削除」(または「X」)で削除
- トラックの順序の入れ替え: 右クリック→「トラックの順序」
- ストリップの移動
- 同一トラック内で左右に移動したい場合は、マウスドラッグ
- 1階層上下のトラックが空いている場合はマウスドラッグまたは「編集」→「ストリップを上/下に移動」
- トラックのロック:南京錠マークをON
- ストリップの編集方法
- 開始・終了フレームの設定: サイドメニュー→「ストリップ」→「アクティブストリップ」の「開始」「終了」
- 再生速度の調整: サイドメニュー→「ストリップ」→「アクティブストリップ」の「開始」「終了」の間のフレーム数を調節
- 繰り返し(リピート)回数の設定: サイドメニュー→「ストリップ」→「アクションクリップ」の「リピート」の回数
- ブレンド(複数のアクションストリップを組み合わせる)方法の設定:
下段トラックのストリップの影響を消したいときは「置き換え」、影響を入れたいときは「追加」
- ストリップの複製:
- 「Shift+D」で複製
- 「Alt+D」で「リンク複製」
- ストリップの分離: 右クリックし、「ストリップを分離」
- モディファイアーの追加: サイドメニューを表示し、「モディファイアー」のタブを選択
- トランジション(移行)ストリップの追加: 「Shift」キーを押しながらトランジションを追加したいストリップを複数選択し、ヘッダーの「追加」→「トランジションを追加」
- メタストリップの追加・除去(ストリップのグループ化)ストリップを複数選択してヘッダーの「追加→メタストリップを追加」
- 調整(Tweak)モード:
- NLAに変換されたアクションのキーフレームを調節する機能
- アクションエディターを開いて、NLAストリップを選択した状態でTabキー
- FBXエクスポート時のNLAアニメーションのベイク
- FBXをエクスポートする際に、「アニメーションをベイク」およびその下にある「NLAストリップ」にチェックを入れる