AutoRigProをUE4で使うにあたってハマったこと
こんにちは、龍野あずむです。
今回初回の投稿となりますが、いきなりコアな内容となっております。題して「AutoRigProをUE4で使うにあたってハマったこと」。
タイトルの通り、AutoRigProというBlender用の有償リギングアドオンをUE4向けに使うにあたって、アニメーションのリターゲットがうまくいかず時間を食ってしまった経験から、その解決方法をシェアしようという内容です。
Blender使わないよ、UE4使わないよ、AutoRigPro買ってないよという方はぶっちゃけ見てもわからないと思いますが、AutoRigProの便利なところとかUE4で3Dモデルを扱う際に気にすべきことも含むので、参考になればと思います。
あと!これ重要なんですが、なんとこの記事の最後に有償プラン500円/月の登録者様向けに現在私が制作中の3Dモデルデータ(画像の子)を付与しちゃいます。これ将来的に2000円ほどで売る予定なので、75%お得ですよ(多分)!
※支援プラン見直しにより特典ファイルは無くなりました。申し訳ありません。
では本題、まずはAutoRigProとは何ぞやというところから紹介していきたいと思います。
AutoRigProとは何か
AutoRigProというのはBlender向けの有償アドオン(プラグイン的なやつ)なんですが、これは3Dモデルをアニメーションさせるにあたって「リグ」というアニメーション用の操作できる仕組み及びそのコントローラを作ってくれるものです。
私、実はAutoRigProを使うまで「リグ」の存在を意識したことがありませんでした。アニメーションを作るときは「ボーン」をそのまま動かしてたんですね。もちろんそれでもアニメーションは作れるのですが、専用の「リグ」があると、「複数のボーンを割合で一括操作」などといった操作が簡単に行えるというわけです。
一枚目がARPが生成してくれる「リグ」で二枚目が「リグ」の操作対象となる「ボーン」です(ポーズが異なっていますが気にしない)。
この「リグ」ですが、通常はBlenderの基本的な仕組みをしこしこ組み立てて自分で作るものらしいです。それをこのAutoRigProは独自のテンプレートをもって解決してくれるというわけですね。
AutoRigProはセッティングも簡単で、Smartモードを使えば「首・あご・肩・手首・背骨の根元・足首」の6箇所を平面図上で指定してやるだけで、典型的なアーマチュアを自動でセットアップしてくれます。
これが何と!手動で合わせるのが面倒な指のボーンまで計算して合わせてくれるのでセットアップが本当に楽チンです!手首の位置を指定しただけなのに指まで綺麗に骨が入るのはすごいですね。(手のボーン入れが失敗する時はマーカー位置をずらしたりBlender再起動すると上手くいきます)。
典型的な目まわりや顔のボーン設定もできます。
そんなAutoRigPro、現在の価格は40米ドルですが、似たようなことをするツールとしてはかなり安い方らしいです。
AutoRigProの使い方ひととおり
ここではBlender2.8で人型のモデルをセットアップする方法について紹介します。大体は同じなんですが、安定板の2.79系列と少し差異があるかもしれません。
公式ドキュメントはこちら(英語です)
- AutoRigProを購入してBlenderアドオンとして入れる
- ナビゲーションパネル(デフォルト画面右のパネル)のタブにARPが出現)
- 対象の人体モデルを選択し、Smart欄の「Get Selected Objects」を押す
- Add Neckを押してマーカーを首のところへ
- 同様にAdd XXX を押してマーカーを該当位置へ
- すべて終わったらGo!ボタンを押す(顔の説明は省略します)
- アーマチュアが表示されるのでおかしければ手動で調整
- 「Match to Rig」でリグを生成
- 人体->リグの順に選択し、ARP上部の「スキン」タブで開くパネルの「バインド」を押す
- 完了です。リグをポーズモードで動かすと人体が変形します。
UE4でリターゲットして使うために
AutoRigPro自体のセットアップは上記の手順で完了するのですが、そのままfbxファイルへ出力してもUE4のリターゲットは良い感じになってくれません。通常のセットアップに加えて必要な項目は以下です。
- 「Spineを4つに増やす」必要がある
- 「出力設定を適切に設定する」必要がある
- 「基本ポーズをリターゲット元のモデルに合わせる」必要がある
- 「UE4上でリターゲット設定を適切に設定する」必要がある
ひとつずつ見ていきます。
Spineを4つに増やす
Spine、背骨ですね。これの数がAutoRigProの標準とUE4の標準で異なっています。AutoRigProは3本ですが、UE4は4本です。これの変更方法ですが、ひとまず上記の使い方に従って普通のセットアップは完了しているものとします。
ARPのRigタブの画面にある「Edit Reference Bones」ボタンを押します。リグからアーマチュアの設定に戻る効果のあるボタンですね。これを押して、アーマチュアが見える状態になったら背骨にあたるボーンのいずれかをEditモードで選択します。
背骨のいずれかを選択すると、「Limb Options」ボタンが有効になるので、押します。すると背骨の数が現在3であると表示されます。これを4に変更します。以上で完了です。「Match to Rig」でリグに戻します。
出力設定を適切に設定する
ARPの機能で出力する際のオプションです。Blender標準のfbx出力では上手く出力できないので注意。
- 出力モード「UE4」->「Humanoid」 を選択
- 「Transfer Twist」はOFFに (TwistBoneを溶かさず出力する)
- 「Rename for UE4」はONに (リターゲット時のボーン名をUE4標準に)
- 「Mennequin Matrix」はONに (Spineを4にしている時だけ設定可能)
以上4点を必ず合わせておきましょう。
基本ポーズをリターゲット元のモデルに合わせる
SK_Mannequin(グレーマン)からリターゲットする場合について考えます。
グレーマンの基本ポーズはAスタンスなので、完全にTスタンスのモデルを無理矢理リターゲットすると、腕が壊れてしまいます。
基本ポーズはBlender上でSK_Mannequin(グレーマン)に合わせておくのが良いかと思います。基本はグレーマンで、リターゲットしたい対象が極端に異なるポーズをとっている場合、その度にBlenderで調整しても良いのですが、UE4のエディタ上でも調整出来るようになっています。
多少の歪みを許容するならそれほどシビアにポーズを合わせる必要はなく、何となくAスタンスっぽくなってるな、くらいでも割とうまくリターゲットされます。
UE4上でリターゲット設定を適切に設定する
さて、ここまでの設定がうまくいっていればおおよそのリターゲットは問題なく動きます。ここから注意する項目は2点です。
- 自動マッピングボタンは押さない
- 手のリターゲットオプションをAnimationからSkeletonへ
まずリターゲット先のスケルトン(あなたがインポートしたモデルのスケルトン)を開き、リターゲットの設定をするのですが、「リグの設定」からのマッピングで自動マッピングを利用してはいけません。ヒューマノイドの型を使う場合、ヒューマノイドを「選択した時にデフォルトで入る」対応マップをそのまま使います。
ここで上述の「Rename for UE4」オプションにチェックをつけ忘れていると、対応がおかしなことになるので十分注意して下さい。
最後に、私が個人的に一番ハマったところです。上記の設定を間違いなく行っても、「指」(と手首のあたり)のアニメーションがうまくリターゲットされないのです。
これを解決するには、リターゲット先のスケルトンを開き、スケルトンツリーを表示し、Optionsから「リターゲットオプションを表示」を選択してAnimation/Skeletonの表示をONにします。
そして左右のLowerArmを選択、右クリックし、再帰的にSkeletonを設定します。以上で完了です。
これはボーン構造の異なる部分を補完するオプションらしいのですが、何故これでうまくいくのか私はうまく理解できていません(が、私の環境ではとりあえずそれらしく動きました)。
おわりに
今回の内容は以上です。こういった記事を書くのは実質はじめてで、うまく伝わっているか不安はあります。ただ、こういった記録が誰かの何かの助けになればと思っています。わからない箇所やうまくいかない箇所がある場合、余裕があれば相談にのれるのでTwitter(@azm_tatsuno)あたりで気軽にご連絡ください。この記事を見てくれた方なら、特にお金とったりはしないです。
モデルデータ配布
ここからは500円/月の有償会員の方に向けたモデルデータの添付になります。
添付されるデータは自由に利用できますが(詳しくはライセンスを)、作品としては調整中の状態です。
内容物詳細
一般
for UE4
- スケルタルメッシュ1点
- ブループリント2点(キャラクター,アニメーション)
- アニメーション(グレーマンからリターゲットした歩行,走行,ジャンプ等)
- 2Kテクスチャ5種x3用途(Hair,Body,Face,Bottoms,Tops)
- マップ1点(サンプル動作確認用)
for Customize
- Blender(2.8以降!用)ファイル1点
- Substance Painter ファイル1点 (全テクスチャに対応)
BlenderファイルはAutoRigPro向けにセットアップされているので、アニメーション出力をカスタムする場合はAutoRigProが必要になるかと思いますのでご注意を。
以上です!
【 500円 】プラン以上限定
支援額:500円
UE4向けに設定した3Dモデルデータです。Blender2.8ファイル付き。
このバックナンバーを購入すると、このプランの2019/02に投稿された限定特典を閲覧できます。
バックナンバーとは?