さよならブルーマン先生

絶望した!

私をリストラしたエピックに絶望した!

ue382.jpg

というわけで、今回はUE4.8でブルーマン先生を全力で使うのがテーマです。

一応、絶望先生っぽいポーズを作ろうとかんばりましたがこれが限界です。スマヌ。

UE4.8でブルーマン先生がリストラされ、マネキンに取って代わられたのは皆さんも御存知でしょう。

実はブルーマン先生と新しいマネキンはデフォルトのポーズに違いがあり、マネキンのモーションをブルーマンでそのまま使用することが出来ません。

しかし、今後のマーケットプレイスで販売されるモーションアセットはマネキンに合わせる必要があるため、ブルーマンでは使用できないようになります。

そんなことは許されない!

我らがブルーマン先生は永遠に不滅なのだ!

という奇特なUE4ユーザ(対象者1名)のために、今回はブルーマン先生をUE4.8以降でも使う手法を紹介します。

最も簡単な方法はこれ。

ue383.jpg

青けりゃいいならベースカラーを変える。

ルーマン先生のベースカラーは (R, G, B) = (0, 0.68, 0.95) です。

マネキンのベースカラーをこれに変えればブルーマンだね!

…まあ、納得いきませんよね。

もう1つの方法はモーションも含めてUE4.7以前からアセットを [移行] する方法です。

この方法もかなり簡単なのですが、残念ながら新しいモーションに対応できません。

過去のモーションを使うだけならこれでもいいですけどね。

というわけで、今回はUE4の機能であるアニメーション・リターゲットを利用します。

これを利用するとある程度骨構造が近いモデル同士でモーションの共有が可能です。

と言っても完全ではないですし、それなりの調整が必要なので少々面倒ではあります。

しかしこうするしか方法がないのだ!

我々のブルーマン先生を死なせはしない!

では、続きからブルーマン先生生存フラグの立て方の解説を行います。

アニメーション・リターゲットについてはおかずさんが記事を上げてくれていますし、ドキュメントにもあります。

http://pafuhana1213.hatenablog.com/entry/2014/10/18/214013

これを参考にすれば誰でも出来るとは思いますが、今回はブルーマン先生に特化した形でやってみます。

まずはUE4.7でプロジェクトを作成します。

テンプレートはサードパーソンかサイドスクロールを選択します。

これでブルーマン先生をゲットできるので、このプロジェクトをUE4.8にバージョンスイッチします。

バージョンスイッチはプロジェクトフォルダを開いて .uproject ファイルを右クリック、[Switch Unreal Engine version] を選んで [4.8] を選択してOKを押すだけです。

この段階で一応UE4.8にブルーマン先生が降臨したことになるのですが、アニメーションの対応が出来ていません。

次にマネキンとそのアニメーションアセットを取得するため、マーケットプレイスから 『Animation Starter Pack』をDLします。

もちろんUE4.8版です。

これをプロジェクトに追加します。

アニメーション・リターゲットを使用するには、変換したいアニメーションを右クリックし、[Animアセットをリターゲットする] → [Animアセットとリターゲットを複製する] を選択します。

ue384.jpg

しかし、このままリターゲットしても正常には動きません。デフォルトスタンスが違うからです。

では、リターゲットするための手順を見て行きましょう。

まずはマネキンのスケルトンをダブルクリックし、エディタを立ち上げます。

ここでメニューの [リターゲットマネージャー] を選択します。

ue385.jpg

リターゲットマネージャーが開いたら [リグを選択] → [ヒューマノイドリグを選択] を選びます。

下になにか色々出てきますが、ここでは何もしなくていいです。そのままスケルトンアセットを保存しましょう。

ue386.jpg

次にブルーマン先生のスケルトンアセットをダブルクリックし、エディタを立ち上げます。

[スケルトンツリー] タブの [高度なオプションを表示] をチェックし、[平行移動のリターゲティング] という項目を表示します。

これはボーンの平行移動をどこから取得するかという情報を示しています。

デフォルトでは [Animation] ですが、これではリターゲットがうまくいかないのですべてを [Skeleton] に変更します。

[Root] ボーンを右クリックし、[平行移動リターゲティングスケルトンを再帰的に設定] を選択します。

これですべての平行移動リターゲティングが [Skeleton] に変更されたはずです。

ue387.jpg 

リターゲットする前にTスタンスのブルーマン先生をAスタンスに変更します。

ここは本当は微妙な調整が必要なのでしょうけど、今回は大雑把に行きます。

リターゲットマネージャーを起動し、リグとしてヒューマノイドリグが選択されていることを確認します。

下にある [ポーズを表示] ボタンを押して現在のポーズを表示します。

この状態からAスタンスのマネキンにデフォルトポーズを近づけます。

私の方では次のように設定しました。

hand_lY軸に-10°
lowerarm_lZ軸に30°、Y軸に10°
upperarm_lZ軸に-10°、Y軸に-50°
hand_rY軸に10°
lowerarm_rZ軸に-30°、Y軸に-10°
upperarm_rZ軸に10°、Y軸に50°
thigh_lY軸に10°
thigh_rY軸に-10°

設定が完了したら [ポーズを保存] ボタンを押します。

ボタンを押すとスケルトンが元に戻ってしまいますが、[ポーズを表示] ボタンで設定したポーズの確認が可能です。

保存をしたらエディタは閉じてOKです。

さて、ついにアニメーション・リターゲットです。

Animation Starter Packから適当なアニメアセットを選択し、[Animアセットとリターゲットを複製する] を選択します。

すると下のようなウィンドウが表示されるので、ブルーマン先生のスケルトンアセットを選択して [選択] を押します。

ue388.jpg 

アニメーションアセットはスケルトンアセットのフォルダに複製されるのでダブルクリックしてアニメーションの様子を確認してみます。

正常に動作しているように見えますが、少し足の動きが変ですし空中に浮いているように見えます。

そこで再びブルーマン先生のスケルトンを開き、高度なオプションを表示して [pelvis] ボーンの平行移動リターゲティングを [Animation Scaled] に変更します。

すると足が地面についていい感じに動くはずです。

他のアニメーションも同じようにリターゲットすることが出来ますが、アニメーションBPをリターゲットすると関連するアニメーションを全ていっぺんにリターゲットすることが出来ます。

ただし、Animation Starter Pack内のアニメーションBPをリターゲットしてもすべてのアニメーションはリターゲットできません。

必要な物だけリターゲットしてもいいですが、全部いっぺんにリターゲットしてもいいでしょう。

今回の設定はかなり適当なので、特にAスタンス対応のための角度調整はもう少し細かくやるべきだと思います。

いくつかのモーションを見てみると、足がちょっとおかしいような印象も受けるのでちゃんと調整すべきかもしれません。

この角度がいいよ!ってのがあれば教えていただけると助かります。

おまけ