Skip to content

VRMをゲーム中に簡単にロードするためのプラグイン。VRM4Uプラグインが別途必要。UE5.4.2で作成。

Notifications You must be signed in to change notification settings

metyatech/VRMRuntimeImportPlugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VRMRuntimeImportPlugin

VRMファイルをゲーム実行時に読み込んで、簡単に操作可能なキャラクターとして使用するためのプラグイン。
使用するには、VRM4Uプラグインが別途必要です。
また、アニメーションをサードパーソンテンプレートのマネキンのものを流用することができますが、その際はサードパーソンテンプレートの一部ファイルが必要です。

VRMRuntimeImportPluginには以下のアセットが含まれています。

  • VRMファイルの読み込み用

    • LoadVRMFileAsyncMacroLibrary
    • SkeletaMeshInjectorByVRM
  • リターゲット用

    • IK_VRoidSimple
  • サードパーソンテンプレートからのリターゲット用

    • RTG_Mannequin_VRoidSimple
    • ABP_RTG_Mannequin_VRoidSimple

LoadVRMFileAsyncMacroLibrary

ファイルパスと、インポートオプションを指定すると、指定したパスにあるVRMファイルをロードします。

SkeletalMeshInjectorByVRM

キャラクターのスケルタルメッシュを、インポートしたスケルタルメッシュに変更するためのクラスです。
"Construct Object From Class" ノードでインスタンスを作成してから使用します。
以下の手順で操作キャラクターをインポートしたメッシュに変更できます。

  1. Initialize 関数で変更適用先のスケルタルメッシュを指定して初期化
  2. PossessSkeletalMeshComponent 関数で変更適用先のスケルタルメッシュを、インポートしたスケルタルメッシュに変更
    Anim Instance Class には、サードパーソンテンプレートのアニメーションを流用する場合は、ABP_RTG_Mannequin_VRoidSimple でOK。
    そうじゃない場合は、Retarget Pose From Mesh でリターゲティングするようなアニメーションブループリントを作成して指定すること。
    Retarget Pose From Mesh で指定する IKRetargeter は、Target IKRig Assset を IK_VRoidSimple にすること。

なお、実際は変更適用先のスケルタルメッシュのメッシュを変更しているのではなく、非表示にして、子コンポーネントにVRM用のスケルタルメッシュを追加しています。
アニメーションをリターゲティングするには、元の動いているスケルタルメッシュを残しておかないと動作しないので、このように実装しています。

About

VRMをゲーム中に簡単にロードするためのプラグイン。VRM4Uプラグインが別途必要。UE5.4.2で作成。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published