2019-10-01 02:47:03 +08:00
# MULTI-USER for blender
2019-09-26 22:13:50 +08:00
> Enable real-time collaborative workflow inside blender
2019-10-22 22:14:26 +08:00
![demo ](https://i.imgur.com/X0B7O1Q.gif )
2019-10-22 22:05:30 +08:00
2019-09-26 23:16:19 +08:00
:warning: Under development, use it at your own risks. Currently tested on Windows platform. :warning:
2019-10-22 20:21:18 +08:00
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 data-blocks across the wire.
2019-09-26 22:13:50 +08:00
## Installation
2019-10-22 22:40:08 +08:00
1. Download latest release [multi_user.zip ](/uploads/8aef79c7cf5b1d9606dc58307fd9ad8b/multi_user.zip ).
2019-10-22 22:14:26 +08:00
2. Run blender as administrator (dependencies installation).
3. Install last_version.zip from your addon preferences.
2019-10-22 20:08:28 +08:00
[Dependencies ](#dependencies ) will be automatically added to your blender python during installation.
2019-09-26 22:13:50 +08:00
## Usage
2019-10-01 04:05:52 +08:00
See [how to ](https://gitlab.com/slumber/multi-user/wikis/User/Quickstart ) section.
2019-09-26 22:13:50 +08:00
2019-10-22 20:21:18 +08:00
## Current development status
Currently, not all data-block are supported for replication over the wire. The following list summarizes the status for each ones.
| Name | Status | Comment |
| ---------- | :----------------: | :------------: |
| action | :x: | WIP |
| armature | :x: | WIP |
| camera | :white_check_mark: | |
| collection | :white_check_mark: | |
| curve | :white_check_mark: | Not tested |
| gpencil | :white_check_mark: | |
| image | :exclamation: | Not stable yet |
| mesh | :white_check_mark: | |
| material | :white_check_mark: | |
| metaball | :x: | |
| object | :white_check_mark: | |
| scene | :white_check_mark: | |
| world | :white_check_mark: | |
2019-09-26 23:16:19 +08:00
### Performance issues
2019-10-22 20:21:18 +08:00
Since this addon is written in pure python for a prototyping purpose, performances could be better from all perspective.
I'm working on it.
2019-09-26 22:00:26 +08:00
2019-01-24 18:49:44 +08:00
## Dependencies
2019-07-01 22:03:40 +08:00
| Dependencies | Version | Needed |
2019-09-26 22:00:26 +08:00
| ------------ | :-----: | -----: |
2019-07-01 22:03:40 +08:00
| ZeroMQ | latest | yes |
2019-09-26 22:00:26 +08:00
| msgpack | latest | yes |
2019-07-01 22:03:40 +08:00
| PyYAML | latest | yes |
2019-10-01 02:49:30 +08:00
| JsonDiff | latest | yes |
2019-08-12 21:29:16 +08:00
2019-09-26 22:00:26 +08:00
2019-08-12 21:29:16 +08:00
## 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`)
2019-09-26 23:16:19 +08:00
5. Create a new Pull Request
2019-10-22 20:21:18 +08:00
## Licensing
2019-10-01 02:47:03 +08:00
2019-10-22 20:21:18 +08:00
See [license ](LICENSE )