UMotion ProでさっくりとHumanoidの既存アニメ修正
痛恨のミス
www.asset-sale.net
このセールのときに「Very Animationがあるしなあ」+そのときあまりに金がなかったので見送っていたのですが、結局サイバーセールで27$+税でUMotion Proを買うハメになったのは私です。
UMotion Proの導入
アセットストアからUMotion Pro購入、すべてインポート。
メニューの「Window」→「UMotion Editor」からPoseEditorとClipEditorを表示させましょう。
Pose Editorは画面右、ClipEditorは画面下のほうがおすすめだとか。
ウチの環境ではVery Animationが併存しているんで、画面には両方映っていたりします。
ファイル作成
ClipEditorの「File」→「New Project」→「Humanoid」
適当な場所に保存。
直接animをいじるVery Animationとかと違い、UMotion Proでは別個に編集するためのファイルができるわけですね。
今回はsit_03というanimをいじるので、sit_03.assetという名前にしてみました。
(animが入っているフォルダとは別のほうがいいと思います。混乱するので)
Humanoidキャラを割り当てる
anim編集のときに使いたいHumanoidキャラをPose Editorのここにドラッグ・アンド・ドロップします。
そうするとボーンを登録していいか的なメッセージがでるんで、「Create configuration」を押しましょう。
Blend Shapeについて聞かれるほうはお好みで。
今回は足をいじるだけなので「Don't Add」にしました。
既存animをインポート
Clip Editorの「File」→「Import Clips」
そしてインポートしたいanimをドラッグ・アンド・ドロップ。
んで、importを押します。
ちょっと時間がかかって、
無事インポートされました。
設定変更
「Pose Editor」の「Auto Key」を「Generate」にします。
これをやらないと、編集作業してエクスポートするときに「unapplied modification」がどうこう文句を言われてにっちもさっちもいきませんでした……
(Offで手動で変更を反映させていく方法もあると思うのですが、どうもうまくいきませんでした)
設定変更(状況によって切り替えるもの)
「Pose Editor」の「Mirror Editing」を「On」に。
左右対称でないモーションのときは「Off」ですね。
「Pose Editor」の「Pivot」は回転に関する設定。
「Local」にするか「Global」にするかは状況次第です。
真横に回転したい、正面に回転したい……といったときはGlobal。
関節の流れにそって回転したい……といったときはLocalですね。
今回はGlobalから始めてみます。
また、ボーン表示があまりにデカくてキャラがどうなっているか見づらいケースがあります。
そのときはPose EditorのDisplayから「Bone Style」を「Stick」に。
ただ状況によっては「Solid」のままのほうが操作しやすいでしょう。
ここは編集中にうまいこと切り替えを。
レイヤー作成
ではUMotion Proのキモ、レイヤーを作ります。
Clip Editorの右下に何かが重なったようなボタンがあるので押すとレイヤーの設定が登場。
その左上にあるボタンを押してレイヤーを追加します。
名前とかはそのままでいいでしょう。
Layer 1ができました。
モトのanimのキーがゴチャゴチャと並んだ「Base Layer」と違い、何もなくてスッキリしていますね。
このLayer 1に、修正を加えていきます。
編集開始
こちらsit_03という名前のanim。
とあるアセットに入っていたのですが、このキャラに当てると足とかがおかしいです。
多様なキャラに対応するモーションのHumanoidでは避けて通れないことですが……
なので修正を加えていきます。
足の上部のボーンをクリックして選択。
普通にUnityでオブジェクトを回転させているときと同じように、この丸いツールをグリグリして回転させていきます。
Mirror EditingがONになっているので、右足をいじるだけで左足も動きます。
ボーンの表示設定を変更するとこんな感じ。
結果が見やすいのはStickですね。
同様に、足首がヘンだったのを修正しました。
確認してみる
ここで動きを確認してみます。
Clip Editorの右下の再生ボタンを押すと、キャラが動きます。
第一フレームの足の回転を修正しただけなのに、すべてのフレームで足の回転が修正されています。
これがレイヤー機能の強みですね。
- 「Base Layerにモトのモーション」+「Layer 1の第一フレームに、ボーンの回転をズラすポーズ」がある。
- → 第一フレームだけしかないモーションは、すべてのフレームにおいて同じポーズになる。
- → 合成結果は「すべてのフレームで修正されたモーション」になる。
なお、確認のときは「Pose Editor」「Display」の「Bones」が「Off」のほうが見やすいかもしれませんね。
エクスポート
では、修正したanimを書き出してみましょう。
ClipEditorから「File」「Export」「Current Clip」を押すと……
出力先のフォルダが指定されてないゾ、と怒られます。
なので出てきたSetting画面から出力先フォルダを指定してあげましょう。
モトのanimフォルダと同じにすると上書きされてしまうので、「やっぱりモトのが良かった」とか「もう一度モトのから作り直したい」とかいうときに困ります。
別のフォルダにしたほうが賢いでしょうね。
あらためてClipEditorから「File」「Export」「Current Clip」。
出力されるとこんなメッセージが出ました。
後始末と確認
Pose Editorから「Clear」を押して、UMotion Proの制御下からキャラを解放します。
Animatorタブに出来上がった新しい「sit_03」を放り込んで……(編集前の、モトのファイルを放り込まないように注意)
Animation Controllerを持ったキャラを選択、Animationタブから「sit_03」を選択して再生ボタンを押せば確認ができますね。
きちんとおかしなとこが直っているようです。
その後
IKを使った編集はどうだとか第1フレームとそれ以外で修正量を変えたい場合は、とか……
発展的内容もありますが、ひとまずはこうしてボーンの回転を微妙に修正できるだけで「買ったのに死にモーション」だったものが有益なモーションになります。
それだけでも効果は大きいのではないかと。
参考にさせて頂いたサイト
うちよりこちらを見たほうがわかりやすいかもしれません。
kyusque.hatenablog.com
www.asset-sale.net