With Humanoid Control you can extend your project to a multiplayer environment in an east way. The following networking solutions are supported:
For networked setup, you need to select an avatar to be used on remote clients. This avatar can be different from the local avatar. This enables you to optimize the first person avatar for the local player (for example an avatar without a head and high-poly hands) while having an avatar optimized for third person at remote clients.
This avatar is a normal avatar with an Animator and a Humanoid Rig and without a Humanoid Control script.
Make a multiplayer scene
The HumanoidPlayer player prefab implements all networking functionality necessary to turn a single player scene into a multiplayer scene.
This player prefabs can be spawned on the networking by the Humanoid Networking Starter script or the Unity Network Manager (HUD) script as the Player Prefab.
When this player prefab is spawned, they will scan the scene for existing local Humanoids and it will monitor the instantiation of new humanoids. It will spawn remote humanoids on every remote client so that remote players will see these humanoids in their environment. From then on, these humanoids will be fully synchronized, including actions like grabbing and dropping objects and changing the avatar.
|Sync Finger Swing||if this is disabled only finger curl values will be synchronized. This will reduce the needed bandwidth. When enabled finger swing is also synchronized. This will lead to better hand poses.|
|Sync Face (Pro v3+)||when enabled will sync facial movements across the network.|
|Sync Tracking||will sync the Lighthouse positions when using SteamVR.|
|Send Rate||the number of updates per second communicated through the network|
|Debug||controls the amount of debugging information in the Console Window of Unity.|
|Smoothing (v3+)||Applies Interpolation or Extrapolation to achieve smoother movements for remote humanoids.|
|Create Local Remotes||(Unity Networking only) this will create local remote avatars which can be convenient for debugging purposes.|