今回はクォータニオンでつけたアニメーションを変えずに、オイラー角に変換していきます。
Blender4.0.2を使用。
同じ方法で
オイラー角 → クォータニオン に変換したり
オイラー角XYZ → オイラー角ZXY みたいな優先軸の変換も可能。
これをすると回転モードが違うボーンでもアニメーションを移植できます。
同じ回転モードにしてからアニメーション移植すればいいわけです。
他には、オイラー角に変換してからfbxに書き出すときにも使えます。
(クォータニオンでfbxにすると他のソフトに移植したとき回転がおかしくなる事がある)
逆にいうとアニメーションがうまく移植できない時は、回転モードが違ってる可能性があるので確認した方がいいです。
回転モードの変換方法
まず今のキーをベイクする
ポーズモードで
変換したいボーンやrigコントローラーを選んで > 上のメニューのポーズ > アニメーション > アクションをベイク
ベイクとは…全フレームにキーを打った状態。
ベイクしなくても変換できるけど、変換後のカーブ補完が「ちがう、そうじゃない」になりがちなのでベイクした方が安全。
こんなウィンドウが出るのでベイクの設定をします。
- ベイクするフレーム数を指定。フレームステップを「1」にする
- 「選択ボーンのみ」に☑入れる(入れないと全部のボーンがベイクされます)
- 「ビジュアルキーイング」に☑入れる(アニメーション再生したときと同じ動きになるようキーを打ってくれる)
を設定してOKを押す。
全フレームにキーが打たれた状態になります。
Convert Rotation Modesで回転モードを変換
変換したいボーンを選択したまま上メニューのポーズ > Convert Rotation Modes をクリック。
Rigifyのアドオンが有効化されてないんだと思うので、
プリファレンスから有効にしてください。
①編集 > ②プリファレンスをクリック > ③プリファレンスエディタの「アドオン」をクリック > ④リギングで絞る > ⑤「リギング:Rigify」に☑を入れる
Convert Rotation Modesをクリックしたらこんなウィンドウが出るので
変換の設定をします。
- Affected Bones…「選択」で選択中のボーンを変換。
「全て」で全身のボーンを変換。 - Affected Action…1つのアクションだけ変換するなら「シングル」。
全アクションを変換するなら「全て」。 - アクション…②で「シングル」を選んだ場合に変換するアクション
- 変換先…どの回転モードに変換するか。
ここではオイラーXYZに変換したいので「XYZ」を選択。
設定したらOKをクリック。
アニメーションを保ったまま回転モードが変更されました。
・クォータニオン → オイラー角
・オイラー角 → クォータニオン
の変換はこの方法でいけます。
・オイラーXYZ → オイラーYZX
みたいにオイラー同士で変換する場合は…
なぜかいったんクォータニオンに変換してからオイラー角に再変換するとできました。
なんでですかね…?Blenderのバグ?
まあちゃんと変換できたから良しとしましょう。
以上、回転モードの変換のしかたでした。