multi-user/README.md
2019-09-30 17:24:02 +02:00

3.2 KiB

Multi-user blender addon

Enable real-time collaborative workflow inside blender

⚠️ Under development, use it at your own risks. Currently tested on Windows platform. ⚠️

This tool aims to allow multiple users to work on the same scene over the network. Based on a Clients / Server architecture, the data-oriented replication schema replicate blender datablocks across the wire.

Installation

  1. Download lastest release here.
  2. Install last_version.zip from your addon preferences

Usage

Settings are under: View3D -> Sidebar -> Multiuser

Before starting

1. Set user infos

settings

  • name: username.
  • color: color used to represent the user into other user workspaces.

2. setup network

⚠️ If you host a session over internet, special network configuration is needed ⚠️

Host Join
host_panel join_panel
Start empty: Cleanup the file before hosting IP: host ip
Port: host port

2.1 Advanced settings

properties

In-session

Connected users pannel

users

This pannel displays all connected users, including you. The camera button allow you to focus your 3D viewport on a user.

Properties outliner pannel

properties

Current development statut

Actually, not all datablock are supported for replication over the wire. The following list summarizes the status for each ones.

Name Statut Comment
action WIP
armature WIP
camera
collection
curve Not tested
gpencil
image Local only
mesh
material
metaball
object
scene
world

Performance issues

Since this addon is writen in pure python for a prototyping purpose, perfomance could be better from all perspective. Soon I will start to port the multi-user addon concept to a blender branch.

Dependencies

Dependencies Version Needed
ZeroMQ latest yes
msgpack latest yes
PyYAML latest yes

Contributing

  1. Fork it (https://gitlab.com/yourname/yourproject/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request