Integrating Meta Movement SDK Rig Setup with Runtime-Loaded RPM Avatars for VR Multiplayer


I am working on developing a VR multiplayer game using Ready Player Me (RPM) avatars and Fusion 2 for networking. However, we’ve encountered a challenge with applying the Meta Movement SDK’s full-body rig builder to the RPM avatars that are loaded at runtime. Our goal is to enable realistic avatar movement in the VR environment.

Additionally, since Fusion 2 requires a prefab to generate avatars on the network, we’re uncertain how to proceed with converting the runtime-loaded RPM avatars into prefabs that can be utilized by Fusion 2.

Here are the specific issues we’re facing:

  1. Meta Movement SDK Rig Integration: How can we apply the Meta Movement SDK full-body rig setup to RPM avatars that are loaded at runtime? We aim to achieve seamless and realistic full-body movements for the avatars in our VR multiplayer game.
  2. Fusion 2 Prefab Generation: Given that Fusion 2 necessitates using a prefab for network generation, what is the best approach to create a prefab from an RPM avatar that is loaded at runtime? This step is crucial for our multiplayer setup.

We are using AvatarCreatorSamples to load player .

We believe resolving these challenges will significantly streamline the use of RPM avatars in our project. Any guidance, tutorials, or insights on achieving these integrations would be greatly appreciated.

Thank you in advance for your help and suggestions.

We introduced in our documentation page for multiplayer setup some solutions that could help with your setup, specifically these two sections:

Use the template avatar as your default character

After installing the Ready Player Me Unity SDK Core, you find a template avatar with all possible mesh combinations in the Resources folder. Use it to set up your player avatar and attach all functionality to it. Both template avatar prefabs will have a NetworkPlayer script attached to them which handles loading the avatars.

Load the User’s Avatar and exchange the mesh

After loading the User-Avatar, you’ll be returned a GameObject from the AvatarManager. Do not use this game object, instead do a mesh transfer and destroy the game object. You can use the AvatarMeshHelper.TransferMesh(...) from the SDK. Check out how it’s done in the packages for both, Photon and Unity Netcode below.

The documentation page: Setup Multiplayer | Ready Player Me

Also, we are currently working on building content for both Ready Player Me integration with Meta SDK and Photon Fusion 2, so stay tuned :slight_smile:
In the meantime, if you have any specific questions while implementing, feel free to open a topic around them.