UE5内で3Dモデルを動かしたい時に、コントロールリグがあると便利ですよね。
MetaHumanなどには予めコントロールリグが付いていますが、Blenderなどの他のソフトから取り込んだ3Dモデルにはコントロールリグが付いていません。
そこで今回は、独自のコントロールリグを作成してUE5に持ち込んだ3Dモデルに付ける方法を紹介します。
コントロールを付けるモデルの用意
次の3DモデルをUnrealEngineに取り込んでコントロールリグを付けていきます。
こちらの3DモデルはBlenderで作りました。アーマチュア(ボーン)の構造は次のようになっています。
Blenderでのアーマチュアの付け方がわからない方は、次の動画がすごくわかりやすいです。
コントロールリグの作成
ここからがUnrealEngneでの操作になります。取り込んだ3Dモデルのスケルタルメッシュを右クリックします。
「作成する > Control Rig」のようにして選択します。
コントロールリグを設定するためのアセットが作成されます。
コントロールリグの設定
この状態だと取り込んだ3Dモデルにはまだ何もコントロールリグが付いていません。ここから3Dモデルについているボーンに対して、コントロールリグを設定していきます。
コントロールリグを設定するためのアセットをダブルクリックします。
まずは「Root」という名前のボーンを操作するためのコントロールリグを作成します。
画面左下にあるリグ階層の中にある「Root」と書かれたボーンを右クリックします。次に、出てきたメニューで「新規 > Nullの新規作成」のように選択します。
表示された「NewNull」という項目の名前を「RootControlSpace」に変更しておきます。
「RootControlSpace」を右クリックして、表示されたメニューで「新規 > 新しいコントロール」のように選択します。
作成された「NewControl」のなまえを「RootControl」に変更します。
「RootControl」を選択し、画面右側の詳細タブにある「形状 > 形状のプロパティ > Shape」の項目を「Octagon_Thick」に変更します。
プレビュー画面を見てみると、八角形のコントロールリグが作成されていますが、向きがおかしいです。変更するために詳細タブにある「形状 > 形状トランスフォーム>ローテータ」の項目を変更します。
僕の場合X軸を90°回転させましたが、ご自分のコントロールリグに合わせて角度を変更してください。角度を変更すると、今度はコントロールリグが正しい角度になっていることを確認できます。
念のため、画面左上の「コンパイル」と「保存」を押しておきましょう。
コントロールリグの大きさを変更する場合は、詳細タブにある「形状 > 形状トランスフォーム>Scale」の項目を変更します。
コントロールリグの大きさを小さくすると次のようになりました。
画面左下のリグ階層タブの中から「RootControl」の項目をRig Graphの中にドラッグアンドドロップします。
表示されるメニューの中から「コントロールを取得」を選択します。
同じようにして「Root」と書かれた項目もドラッグアンドドロップします。
今度は表示されるメニューから「ボーンの設定」を選択します。
ノードを次のようにつなげます。
リグ階層タブにある「RootControlSpace」を右クリックして「親から解除」を選択します。
画面左上の「コンパイル」と「保存」を押します。
Rootボーンのコントロールリグを動かしてみる
プレビュー画面でコントロールリグを選択し移動すると、3Dモデルも一緒に動くことが確認できると思います。
ほかのコントロールリグもつける
基本的にはRootボーンにコントロールリグを付けるときと同じやり方でできます。コントロールリグを作りたいボーンを右クリックして、出てきたメニューから「新規 > 新しいコントロール」のように選択します。
ここで「Nullの新規作成」を選択しないのがRootボーンにコントロールリグを作った時との違いです。
作成されたコントロールリグの名前は「ボーンの名前+Control」にするとわかりやすいと思います。下の例だと「Bone_001」というボーンのコントロールリグを作成したため、「Bone_001Control」という名前になっています。
Rootボーンの時と同じように作成されたリグの形や大きさ、角度などを詳細タブから調節します。
つぎに、作成したコントロールリグをRig Graphにドラッグアンドドロップします。
表示されるメニュでは「コントロールを取得」を選択します。
続いてボーンの方もRig Graphにドラッグアンドドロップします。
表示されるメニューでは「コントロールを設定」を選択します。
次のようにノードを接続します。
リグ階層からコントロールリグを右クリックして「親から解除」を選択します。
つづけてそのコントロールリグを「RootControl」の下に階層に移動します。
ほかのコントロールリグを動かしてみる
Rootボーンのコントロールリグ今作成したコントロールリグを動かしてみると、そのボーンが一緒に動くことを確認できます。
さいごに
あとはコントロールリグを付けたいボーンに対して同じ操作を繰り返します。
コントロールリグを作成するとシーケンスから、ボーンの角度や位置を変更できるようになります。そのため、Blenderなどのほかのソフトでアニメーションを付けてから、UnrealEngineにインポートする必要がなくなりとても便利です。
コメント