ジェイのブログ

Unity,UnrealEngine,ゲーム制作,プログラミング,日記も書きます!

自作TPSオンラインゲームでのVRMモデル追加方法(作業メモ)

こんにちは!ジェイです。

今回は私の現在、開発中のTPSオンラインゲームでのVRMモデルのキャラクターの追加方法を書き残しておきます。

VRM4Uの導入

まずはこちらからVRM4Uをダウンロードします。

github.com

11月26日以降のものだと、プラグインの上書き作業などがなくっているので、なるべく新しいバージョンを入手しましょう。

UnrealEngineを開いてプラグインを有効にする

1.ダウンロードしてきたzipファイルを解凍するとPluginフォルダができる

2.Pluginフォルダを.uprojectファイルがある場所と同じ階層に置く

3.UEを開き編集→プラグインからVRM4Uにチェックを入れてエディタを再起動する

VRMモデルをインポートしてリターゲットする

1.フォルダ新規作成でVRM→キャラ名→Animationsという3つの階層のフォルダを作る

2.キャラ名の場所にVRMモデルをドラッグ&ドロップしてインポートする

3.リターゲット元のABPを右クリック→アニメーションアセットの李ターゲッティング→アニメーションアセット/ブループリントを複製して李ターゲッティングを選ぶ

4.すると以下のような画面が出るのでIKリターゲッタを設定してリターゲットする

プレフィックス

設定するとリターゲット後のファイル名の前にここで入力した名前が追加される

サフィックス

設定するとリターゲット後のファイル名の後にここで入力した名前が追加される

フォルダ

ここで設定した場所にリターゲット後のファイルが生成される

リターゲットで生成されたABPを編集する

物理演算を追加する

まずはリターゲットで生成されたABPを開きVRMSpringBornのノードを追加して、Vrm Meta Objectを設定する

Layerd blend per boneのボーン名を変更する

1.Layerd blend per boneノードで右クリック→リファレンスを検索

2.表示されるすべてのLayerd blend per boneノードのBone Nameを新しく追加したVRMモデルの物に変更する

※この作業をやらないと再生されないアニメーションがあるので注意

FABRIKのボーン名を変更する

1.リターゲット前のボーンが設定されているので以下の場所に新しく追加したVRMモデルのボーン名に変更する

2.FABRIKのノードを選択して左のプレビュー画面から手の位置をちょうどいい場所に設定する

3.同じように、右下のIsAimaingやIsPistolなどにチェックを入れてすべての状態で2の操作を行う

アニメーション用のデータテーブルを作成する

1.DT_Weapon_AnimsをCtrl+DでコピーしてDT_Weapon_Anims_追加するモデル名のように名付ける

2.武器ごとにアニメーションをリターゲットしつつ新たに設定しなおす

Blueprintを作成する

プレイヤー用

1.BP_BasePlayerCharの子ブループリントをコピーして開く

2.詳細からSkeltal Meshに追加したVRMのモデルを設定して、AnimClassにリターゲットして生成したアニメーションブループリントを設定する

3.マテリアルのエレメント0とエレメント1をSkeltalMeshを参考に本来のものに設定しなおす

4.Capsule ComponentのVisivilityのブロックにチェックする

5.Construction Scriptで先ほど作ったアニメーション用DTをDT_Weapon Animsにセットする

ロビー用

1.BP_Lobby_Characterの子ブループリントをCtrl+Dでコピーする

2.詳細からSkeltal Meshに追加したVRMのモデルを設定して、Anim to Playにリターゲットして生成したアニメーションを設定する

3.マテリアルのエレメント0とエレメント1をSkeltalMeshを参考に本来のものに設定しなおす

キャラクター選択時用のデータテーブルを設定する

DB_Charsを開いて行をコピーして新しいVRMモデルのデータを設定する

ケルトンにソケットを追加してプレビューアセットを追加する

・左腰のボーンに右クリック→ソケットを追加で、SecondaryWeaponHolsterSocketと名付けて、プレビューアセットを追加する→SK_Rfileを追加する。

・Spineのボーンに右クリック→ソケットを追加で、MeleeWeaponHolsterSocketと名付けて、プレビューアセットを追加する→SK_Swordを追加する。

・Spineのボーンに右クリック→ソケットを追加で、PrimaryWeaponHolsterSocketと名付けて、プレビューアセットを追加する→SK_Rfileを追加する。

・右手のボーンに右クリック→ソケットを追加で、RightHandSocketと名付けて、プレビューアセットを追加する→SK_Rfileを追加する。

すべて追加が終わったら、Use Specific Animationを選んで、Idle_Rfile_Hipアニメーションを選択すると以下のポーズになるので、RightHandSocketの位置を調整する

以上の作業でVRMモデルをキャラクターとして追加できます。