コンテンツにスキップ

演習4-2: Blenderのモーションブレンド

提出フォーム:  演習4-2: Blenderのモーションブレンド

それでは,Blenderでの2つのモーション合成の方法を見て行きましょう.

元となるモーションデータをBlenderに読み込む

第3回までに行った通常のFBXデータ読み込みを行って, 元となるモーションデータを読み込んでください.

追加のモーションデータをBlenderに読み込む

先ほどと同様に,FBXデータの読み込みを行って追加のモーションデータを読み込みます.

Import Motions

Nonlinear Animation エディタを起動する

  1. 左側のアイコンメニューから,Nonlinear Animationエディタに切り替える
  2. 各モーションの名前をダブルクリックする
  3. モーション名を分かりやすい形に変える
  4. 各モーションの横のアイコンを押すと,モーションがアクションとして登録される

Nonlinear Animation Editor

Nonlinear Animation Editor

大元のモーションに別のアクションを読み込む

Nonlinear Animation Editor Actions

アニメーションが切り替わらない場合, モーションのブレンド(置換え)が上手く行っていません.

  • 右側のメニューを開き,Stripを選択
  • 各アクションを選択しながら「Auto Blend In/Out」にチェックを入れる

この処理により,自動的にモーションが切り替わりつつ,重ねた部分はモーションが合成されるようになります.

Auto Blend

重ねる部分を移動してみましょう

重なっている部分は,2つのモーションがブレンドされます.
※ ずらすと,それに応じて合成領域も変化します.

モーションブレンド

位置ずれがあるモーション合成への対応について

さきほどの例では,キャラクタの位置がほぼ止まっているモーションを合成しました.

歩く⇒走るように,移動するモーションを合成するにはどうすれば良いでしょうか?

まず,歩くモーションと走るモーションを読み込んで合成してみましょう.

  1. モーションの読み込み
    • 歩くモーションのFBXデータを読み込む
    • 走るモーションのFBXデータを読み込む
  2. 歩く,走るモーションを周期モーションにして長さを調整する
    • Animationタブを開く
    • Add Modifier > Cyclicを選択
    • Repeat with Offsetを選択して周期モーション化する
  3. 歩く,走るモーションのアクション名を分かりやすい名前に変更する
    • Animationタブを開く
    • Action Editorを開く
    • Objectモードに変更する
    • 各スケルトンを選択して名前を変更する
  4. 歩く,走るモーションをアクション化する
    • Nonlinear Animation エディタを起動する
    • モーション名横のアイコンを押してアクション化する
  5. モーション合成を試す
    • Add Stripで歩くモーションに走るアクションを加える
    • Auto Blendをオンにしてアクションを重ねる

位置がずれる問題の解決

単純に歩く,走るのモーションをブレンドしてしまうと, 走るモーションが始まった時に,キャラクターが開始点まで戻るような動きがみられます.

  • 歩くモーションの終わり: 歩い終わって移動した位置
  • 走るモーションの始まり: 走り始めの開始位置

この2つの位置を混ぜようとして, キャラクターが戻るような動きが出てしまいます.

これを解決するには,走るモーションの初期位置をずらします.

位置ずれ・回転ずれを直す一番簡単な方法

親オブジェクトのArmatureにキーフレームを打つ.

  1. ObjectモードでArmatureを選択する
  2. 移動・回転をキーフレームで制御する
  3. Blend前の初期位置・向きをキーフレームで登録しておく
  4. Blend後(間くらいが良い)のタイミングで位置ずれ,回転ずれを修正する

SimpleRootOffset

親オブジェクトをキーフレーム制御する際の注意事項

[メリット]
※ 回転ずれの修正も同じやり方でシンプルにできる
※ キャラクターの配置を制御する延長線上で編集可能

[デメリット]
※ Blendするタイミングを変えると,位置ずれの修正,回転ずれの修正もタイミングをずらす必要がある

参考: アクション化したモーションをキーフレーム編集できるようにする

つなげるモーションの初期位置をキーフレーム編集でずらすことができる.

アクションのキーフレーム編集の注意事項

[メリット]
※ アクションのタイミングをずらしても位置ずれ修正がついてくる

[デメリット]
※ 移動が続く場合,キーフレーム編集が複雑になっていく
※ 回転ずれの修正は難しい

  1. アクションを右クリック > Start Tweaking Strip Actions (Full Stack)
  2. Graph Editorを開く
  3. パラメータを選択してキーフレーム編集可能

OffsetMotions

位置合わせが必要なのは,腰の位置だけなので, mixamorig:Hipsを選択してLocation Z等を表示し, 上手く位置合わせして重ねてみてください.

ZBefore

ブレンド直前の位置を観測すると,どのくらいの位置に動かせば良いかの値がおおまかに分かります.

また,モーションがブレンドし始めのところで,Auto Blendのオン・オフを切り替えると, 重なり具合が視覚的に分かります.

CheckPosition