New Multiplayer update! Create motion capture with other players, instantly export multi-avatar motion capture to Blender. Includes chat worlds and motion capture worlds. Create motion capture with other players, then export multi-avatar scenes and motion capture directly to Blender for final rendering.
Multiplayer Features:
Browse and host chat worlds, online motion capture worlds, avatar worlds.
VOIP and avatar lipsync blendshapes supported.
Full body tracking supported.
Finger tracking (Quest 2, mocap gloves, index controllers) supported.
New FPV mode for non-vr players, mouse/keyboard control supported.
Custom avatars, worlds, props and shaders supported.
APS Dedicated Server v5.9.8
A lightweight server application for hosting mocap rooms and custom chat worlds. The dedicated server is used for hosting the game and worlds for other users join. The dedicated server can also be used to host local LAN games for eg. a small dev studio.
With the APS Dedicated server properly configured and running players should then be able to connect to the server from Mocap Fusion [VR]. from steam and in the multiplayer menu enter the IP or domain of the server and players Full body tracking is , fully finger tracking, VOIP and simultaneous motion capture of multiple avatars in a shared VR environment.
Motion capture is recorded on the local player's PC then may be uploaded, the collection of animation data can be exported to Blender as a scene containing all avatars and ready for final rendering in Cycles or EEVEE engine. The APS Multiplayer mode allows all players in a online or private room to record mocap, sync the animations and export the mocap data in a single Blender scene.
Host many rooms/worlds from a single physical server.
Rooms can be chat only, or motion capture enabled.
Passwords can be optionally set for room access.
Linux setup:
After downloading the Dedicated Server for Linux cd into the build folder and you should see a server.cfg file. This file contains the parameters to setup the server. In most cases only a scene_url needs to be set, this file also contains parameters for more advanced configurations, eg. running multiple background servers on a single machine each with for a different custom world.
The most basic command to launch the server from Linux in a terminal:
$ ./build.x86_64
That should start the server.
If you see a Permission denied error it means that build.x86_64 has not been set as executable. To make the file executable run the command:
$ sudo chmod +x build.x86_64
From here it would be necessary to edit server.cfg and add a file download URL for the scene asset.
When players join the room they will need to download the scene, using a fast file hosting site is recommended, rather than hosting the scene file locallly. This can save lots of bandwidth on the local server!
Optionally if scene URL is left blank the server will try to locate for first *.scene file in the working directory and tries to host the file locally (local hosting is intended for small scene files only, or if only a few players intend to join).
Advanced Configuration
If you wish to run the server in the background (detached from shell) you can run the command:
$ nohup ./build.x86_64 > log.txt 2>&1 &
That should launch the server in the background and run indefinitely.
Note: the "2>&1 &" is needed to detach the process and redirect output to the log.To terminate the process you can simply run the command:
$ sudo killall build.x86_64
That should completely end all dedicated server processes system wide!
It may be required to run the command multiple times if multiple background processes have been started.Supplying the optional -c or -config parameter specifies the server.cfg path.
This allows you to create several server.cfg files for hosting multiple worlds (ensure each config has unique port numbers!!).For example, If you wish to run multiple servers in the background:
$ nohup ./build.x86_64 -c server_island.cfg > log_island.txt 2>&1 &
$ nohup ./build.x86_64 -c server_mirror_room.cfg > log_mirror_room.txt 2>&1 &
This would launch two background servers, each with a different configuration,.
Also you may create a .sh file containing those similar commands to start or restart many server/rooms at once.server.cfg
Opening server.cfg with a text editor you will see some parameters and default values:
{
"password": "",
"listen_address": "0.0.0.0",
"listen_port": 7777,
"data_port": 8887,
"connection_timeout": 100000,
"scene_url": "",
"avatar_file_size_max": 100000000,
"max_players": 20,
"motion_capture": true,
"record_seconds_max": 10,
"record_framerate" : 30,
"encode_audio": true,
"nsfw_allowed": false,
"server_tick_rate": 50,
}
Most of the defaults values are okay to leave unchanged, however these are the settings that are loaded by the server when it starts, and must be set properly to get the server up and running.
Most important is the scene_url which is used whenever a new players joins the game and instructs the client where to download the scene asset from. You can host the scene file a number of ways, and many file hosing sites work, Medifire and Google drive seem to work well. If no scene_url is specified then the APS server will try to locate the first *.scene file in the folder and host it on the data_port socket connection.
Parameters Description:
password - A optional password to join the room.
listen_address - The IP address to listen for incoming connections.
listen_port - The port for multiplayer traffic.
data_port - The port for mocap data and VOIP.
connection_timeout - Time limit for dropped connections.
scene_url - The download url to the scene asset.
avatar_file_size_max - The maximum avatar asset files size that can be uploaded.
max_players - The maximum number of concurrent player connections.
motion_capture - True for rooms that allow recording motion capture. Set false for chat only worlds.
record_seconds_max - The maximum allowable motion capture recording timer limit.
record_framerate - The recording frames per second value rate, should be 15, 24, 30 or 60
encode_audio - True for encoding mocap audio before uploading to server, less bandwidth.
nsfw_allowed - If True a NSFW icon is shown on the room details to indicate NSFW content allowed.
server_tick_rate - The processing rate of the server, higher values recommended for mocap rooms.