AutoRigPro

※個人用備忘録&素人による記事の為、間違いがある可能性があります



■参考

公式ドキュメント(英語)



アニメーション関係はこっちの記事 ↓


■導入

購入はここから

ダウンロードしたzipを解凍、インストールするのはこの2つ、rig_toolsはautorigproを使わない時にインストールする物で両方インストールすると競合するらしい。

画像2


Blender > Edit > Preferece > Add-ons > Install > 上記2つを有効に


■モデルの事前確認


!!!UV展開(特に左右非対称テクスチャの場合)は先にやっておく!!!
理由
シェイプキーがあるとミラーモディファイアが適用できないので
①片側だけUV展開 ②ミラー適用 ③左右開く ができなくなる


作業に入る前に全メッシュを確認していきます
 ※mixiamoからダウンロードしたモデルの流用などだとスケールが
 大きくなっているので、立方体を2mで追加したりして確認。


トランスフォームが位置0、回転0、スケール1になってるか確認


なってなければ、Object > Apply > All Transform
ショートカットは Ctrl+A


メッシュにキーが入ってないか確認


重複頂点をマージ
Mキー > ByDistance > 出来るだけ短い距離で


反転してる面が無いか確認


全て確認したら、全メッシュのトランスフォームをロックします


メッシュにミラーモディファイアは残したままでOK

 
理由:ウェイトのミラー方法が
 ・ミラーモディファイア
 ・ウェイトペイントのブラシのtool設定の
  Mirrorを事前にオンにしておく(忘れると終わり)
 ・頂点グループの反転コピー(ちょっと手間)

 の3つの為、ウェイトのミラーもミラーモディファイアが一番楽
 なので、ミラーモディファイア適用はスキニング後の方がいいのだ!

つまりUVの左右に開くのは後でやる。
これでOK


■マーカー配置

画像13
fullbodyでOK


Smart:機能解説

A: Turnはモデルの回転(モデルを正面に向ける用)
B: AddNeckでマーカー追加
C: Dでキャンセルする前の状態に戻れる
D: マーカー配置モードをキャンセル


マーカー配置

① 回転の中心となる位置にマーカー配置する(横からも確認できる)
② 指の数 確認
③ UE4、UE5マネキン 使う方をを選択(個人的にはUE4)
  UE4の理由:骨が少なくて使いやすい
④ ③選択後
  UE4: Spine 4 Neck 1
  UE5: Spine 6 Neck 2

  になっているか確認
⑤ Facialするならココ押す ※詳しくは ↓ の章で書きます


Facial

Add Facial押すとこういう画面になります


大体コレに合わせます
奥行きは自動で合わせてくれます

この画像は公式の動画から ↓


目オブジェクトを指定します
① Objectモードに変更
② 目のオブジェクト選択
③ ここ押す
④ 問題なければOK押す

Facialの続きは後の章に続きます


問題なければGo!押す


■AutoRigProの削除方法

念のためここで、記しておきます


■生成されたボーンの編集


※AutoRigProで生成されたボーンは手動で削除してはいけない
 Disable か Limb Optons でオフにする


腕の輪っか(変形用)を追加

Scondary Controllers で腕変形用のコントローラーを追加できます
腕が伸びるヤツです、簡易なリグの場合は必要ありません。

A を押します
B 腕を変形させたいならコレ ← コレか
C 更に変形できる(正直いらない)
D ゲームエンジンに持って行けない
E 何もなし、簡易なリグで良いならコレ ← コレの2択

詳しくは↓で解説


B Additive 輪っかを追加できます
  腕の変形が欲しい場合これを選択


C Twist さらに細かく変形できる(正直いらない)


腕のオプション設定

ボーン位置を決めた後で指を増減させたりすると、やりなおしになるので
最初にボーン階層は決めておきます。

① 腕のどこか選択
② Limb Options クリック


① ツイストボーン数に制限は無いので3にしてネジレを防ぐ
  ※UE5マネキン仕様でも必要かはわからない
② 3本指などの場合、欲しい指を指定
  指がいらなければチェックを全てオフ
③ OK押す
!!!!!!!終わったら左右逆側も同様の設定をする!!!!!!!


肘膝の角度 確認

Show IK Directions をオンにして肘膝の角度を視覚化する


ボーン位置修正

ボーン位置を修正していきます

  • 基本的に骨の回転の基点になってほしい位置に置く

  • エッジに位置を合わせる

  • 頂点が近い場合スナップする(毛先など)


ボーンの角度調整

腕などの塊でXYZのどの軸が上(Up)か統一し
更にエッジに対して垂直にする


① 腕の一番親の肩を最初に選択(回転の基点にしたい為)
② 腕の残りを選択

① PivotPoint 変更
② ActiveElement 選択
③ スナップ有効 (Rotationをオンにする)ショトカ:Shift + tab
④ 腕を水平にする
⑤ 回転角度を覚えておく F9で再表示


Z上方向にボーンの軸を合わせます


これだけだと不完全な為、細かく調整します。

軸を表示させる
Rollで調整、他の軸と統一、エッジに垂直にする


膝、肘の角度も調整する
緑の線が外側に向く様にボーンを配置する

足( thigh, leg )に関しては X up にする

 


今回はこんな感じで配置しました(適当です)

ボーン回転に耐えうるようにメッシュ割を増やしました

ボーン配置について、詳しく知りたい場合以下などが参考になる



不要なFacial削除

今回は目線のみリグを作る想定で行きます(まぶたも作らない)

⓪ Headのボーン選択
① これ以外全部オフ
② ここは1にする
③ OK


スッキリします
赤枠らへんをズーム


eye_offset_ref を選択
※目が球状では無く、板ポリだと眼球回転ボーンが小さくなっています


眼球の回転の中心となる位置にします

これで facial は準備OK


■追加ボーン

追加ボーンを追加するタイミング

フェイシャルにも言える事ではありますが、基本的には2通りです

素体のみのウェイトが干渉し合わなさそうなモデルの場合
※胸などがある場合は干渉するかも・・・

しっぽの追加ボーンは干渉しなさそう

・追加ボーン(&フェイシャル)を最初から作る
・欲しい全ボーンで自動ウェイト
・どうしても修正したいとこだけスキニング修正

スカートや髪など干渉しそうなメッシュがあるモデルの場合

上着のボーンが上半身に干渉します

・追加ボーン(&フェイシャル)無しでリグ生成
・基本骨格だけで自動ウェイト
・ウェイト修正
・オブジェクトが分かれてる場合(スカート、髪など)
 > そのオブジェクトだけで自動ウェイト
・オブジェクトが繋がってる場合(胸など)
 > 追加ボーン(フェイシャル)は自動ウェイト使わずスキニング
  理由:胸のウェイトを考慮しながらspineのウェイトをつけるのは難しい


追加ボーンを後で作る場合は「スキニング」の章まで飛んで下さい
https://note.com/eeso50/n/nb9c3bd09a20b#aa96c770-4f60-4916-b249-084da90b36b1


胸、耳、しっぽ、等を追加する場合

デフォの機能で
腕 胸 耳 頭 足 背骨 しっぽ Spline IK Bend
が追加できます。下記の通り


赤枠で追加したい部位を選ぶ、後は素体と同じようにできます。


ボーンを配置(この場合tailを追加した)

これでOK


独自のボーンを追加する場合

プリセットに無い、例えばスカートなどのボーンを追加したい場合
リグを一旦生成してから追加します
↓ のカスタムボーン追加 の章で説明します


■リグ生成

調整できたら赤枠クリック
 ※ここでリグにスケールが入っていたりするとエラーが出るので
  Ctrl+A > All Transform しておく

画像7


リグ選択 > ①選択 > ② In Front オン
で、リグを前面表示にする


赤枠 Fix Rig をクリック
 ゲームエンジンに持っていく際によくないので
 骨の不均一スケールは切っておきます

画像8


■レイヤの説明


■カスタムボーン追加

プリセットに無い独自のボーンを追加します
これも自動ウェイトの対象になります(やったね)

公式ドキュメント


① 変形ボーンレイヤ選択
② Editモード

  • Eキーで骨を追加、配置

  • 頭に cc_ とつけてリネーム

  • 任意の変形ボーンを親にする


  • ボーン選択

  • Mキーでレイヤ移動表示

  • ①と任意のレイヤをShift選択して、レイヤに追加


カスタムボーンはそのままでは出力されないので
カスタムボーンとして登録します


■スキニング

① 必要なメッシュ選択 > リグ選択
  (追加ボーンを先に作る場合、全メッシュ選択)
② Skinに切り替え
③ 自動ウェイトの方法を選択
  パーツが分かれてるなら Voxelized
  指先などに良いのは Heatmap ←まずはコレを選択
  Voxel Heat Diffuse Skinning(有料) ←後でコレも使う
④ 体積を維持(デュアルクオータニオン)をオフ
A ここがオンだとリグにスケールが入ってるのを1にしてくれる
⑤ 赤枠をクリックしてスキンを設定

⑤の隣のUnbindで全ウェイト削除できる


・編集モードで手以外を選択


・再度Voxel Heat Diffuse skinningでBindしなおす

因みに、ここを選択する事で
任意のボーン、頂点のみ自動ウェイトできる


参考 ↓


チェックモーションを流し込む

スキニングを確認する時、チェックモーションがあると便利
各コントローラーに回転、移動(を使うコントローラーなら)を5fとか10fおきにXYZ軸それぞれキーを打って合計1000fとかのモーションを作ります。

腰から順番につけていく


チェックモーションを確認

チェックモーションを見る際はFKにする、腕も足もFKにします
リグを非表示にして確認します。


チェックモーション見て問題があれば
骨位置の調整   リグ選択 > Edit Reference Bone
スキンやりなおし メッシュ選択 > Unbind
Heat MapとVoxel どっちも試してみるとか

画像10


Facialのスキニング修正

ここで一旦Facialのウェイトを修正しておきます

目の余計なウェイトを消します
c_eye.r c_eye.l をロックします


ロックした頂点グループ以外削除


目オブジェクト選択 > Weight Paintモード
① 頂点モードにする
② Bキー > 左目選択
③ c_eye.l を選択 ロック解除
④ Assign


目の使わないコントローラーは別レイヤーに移動
コントローラー選択 > Mキー > 移動先レイヤー選択


ウェイトペイント修正

上記で修正できないものはウェイトペイントで修正するしかないようです。

スキニングする際は右の赤枠のレイヤをクリック、リグに戻したい場合は左をクリックして戻す。


本体の方に入ってる、eyeのウェイトも削除


bendとつく頂点グループ

ウェイト作業してると bend とつく謎の頂点グループに出くわす事になるが


正体はただの輪っか(セカンダリコントローラー)である
Nomalizeしても問題ない(多分)
rig_addという別の非表示になってるリグの中に入っている

輪っかに直接ウェイトついてる


epaules_bend.x は、目に関しては消しても問題無さそう・・・
頭部にもあるが、それはそのまま残す

問題あったらゴメン


具体的なスキニング手順は別記事の!AutoRigProはここから!以下を参照


追加ボーンを後で作成するパターンの場合

素体のスキニングが終わったら
・セカンダリの追加ボーンを作成
・同様にスキニング

↓ 追加ボーン作成の章 (同じ記事)
https://note.com/eeso50/n/nb9c3bd09a20b#d6a9e297-7998-43be-9b77-6da1f5a67634

↓ スキニングの章 (同じ記事)
https://note.com/eeso50/n/nb9c3bd09a20b#aa96c770-4f60-4916-b249-084da90b36b1


モデル変更したい

基本的にモデルの頂点を増減させればウェイトが壊れる可能性は高いです
ミラーモディファイア適用云々関係無く
ですが、左右片側ウェイトが壊れるのが殆どなので
ミラーすれば治ります ↓


ウェイト修正終わったら次は表情です ↓


■シェイプキー

目パチはシェイプキー(Morph)で作ります

オブジェクトのUVmapの名前を統一します

同じなら何でもOK


表情で使うメッシュ全て選択、結合


別名で保存
ミラーを適用します


② 2回クリック、Basis Key1 を追加
③ eye_close_L にリネーム


eye_close_L選択
Edit modeに入って
閉じ目作る


赤枠を 1.0 にするとモーフィングします


この状態で ① > ② 選択


現在の状態の新規モーフが作られるので
R にリネーム
① Lを0 Rの方を1 に
②③ モーフを反転


L R 両方 1.0 にして from MIX

両目閉じのモーフが出来る


シェイプキーとリグアクションは別々で書き出される為
シェイプキーを頭のボーンの カスタムプロパティ に リンクさせます。

シェイプキーの名前を全部メモ帳とかにコピーしておきます


リグ選択、ポーズモード
① 頭の c_head.x 選択


リネーム、デフォルト値を0に


表の値も0にして右クリック


右クリしたら、Copy as New Driver

参照元をドライバーとしてコピー


モデルに戻ってシェイプキーの値を右クリック Paste Driver 

頭コントローラーで表情変更可能になった♪


■出力

準備


UE4マネキン設定で作ってる場合ツイストボーンの位置がUE5マネキンと違うので、下記をオンにする


カスタムボーンのカスタムプロパティに CC があるか確認


下記がオフか確認


左右の手足のストレッチは動かしてはいけません
※不均一スケールなのでゲームエンジンではNG

手と足のリグのどこかを選択、赤枠の値になっているか確認


ちなみにストレッチは赤枠で自動で元に戻る


出力設定

・twistは0.5が良いらしい
・Root Motionがオンだとコントローラーのc_trajがルート扱いになる


C_trajはコレ
UEでは本来はリグオブジェクト(オブジェクトモード)自体にアニメーション打ったものが、ルートモーションとなる


UEでここをオンにするとC_trajのアニメーションが無効になり
その場で動く


Animation項目
Only Active だとチェックモーションが絶対に出力されてしまうので
Action Managerが楽(何もアニメーション持っていかない場合)

本来+ボタンでアクションを追加して出力する


Misc項目
Edgeにする
A はUEでボーンに回転が入る場合オンにしてみる


出力!!!


mixiamoのモーションをリマップ

一応AutoRigPro内でMixamoのモーションをリマップする事もできるが
MixamoConverterを使った方が圧倒的に楽 ↓


一応手順説明 ↓


まずはmixiamoからモーションをダウンロード

blender で import > FBX で読み込む

下記の順に選択

画像19

次にmixiamoのリマップのプリセットがautorigproフォルダにあるので読み込む

画像20

下記ファイルを指定

autorigproフォルダを保存した場所\auto_rig_pro_3.63.11\2.79\remap_presets

mixamo_remap_fbx_ik.bmap

画像21

下記選択、暫く待機して完了

画像22



UEにインポート

UE5マネキン仕様で作ったら A
UE4マネキン仕様で作ったら B


A オンだとモーフが壊れる
  本来アニメーションの0フレをデフォポーズとして扱うという設定
B シェイプキー読み込み
C 法線を調整してる場合は Import Noramls


ImportAll 押す!!


終わり


もしTポーズでモデルを作成してグレイマンのモーションと合わなかった場合は、グレイマンをTポーズにしてしまうと修正が速いかもしれない

参考↓



UE4とUE5マネキンに互換性を持たせる

UE4で作ってるからデフォルトのキャラクターには使えない
ので互換性を持たせよう ↓


この記事が気に入ったらサポートをしてみませんか?