Verse 2.0 is network protocol for real-time sharing of 3D data. It is intended mostly for graphical applications of collaborative virtual reality. It could be used for sharing data between applications like Blender.
Comparison Verse 2.0 with Other Protocols
Following video demonstrates efficiency of Verse protocol, when application tries to share rapidly changing data, e.g. position of avatars, objects, vertices, UVs, pixels, etc.
Verse protocol has been designed keeping in mind that this protocol will be used only for real-time sharing of 3D data in applications of virtual reality. There is list of essential features:
- Client-server architecture
- Effective semi-reliable data transport
- Low latency
- UDP connection uses own Flow Control and Congestion Control (WIP)
- It uses TLS to secure TCP connection and optionally DTLS to secure UDP connection
- Strong user authentication
- Access permissions for shared data
- Locking of shared data
- Support for WebSocket protocol
- Support for versing (WIP)
- Generic data model that could be used for 2D/3D graphics
- C/C++ API
- Python API
There are several projects related to Verse protocol
- Verse - own Verse server and client library
- Verse Blender - Python Add-on with integration of Verse to Blender
- Verse Explorer - simple Qt based Verse viewer of shared data.
- Verse Entities - Python module that simplify implementation of Verse clients
- Hnidek, J. Network Protocols for Applications of Shared Virtual Reality. Communications proceedings of 19th International Conference on Computer Graphics, Visualization and Computer Vision, ISBN 978-80-86943-82-4. Plzen, 2011, pp. 31-38.
- Hnidek, J. Introduction of New Verse protocol. International Blender Conference in Amsterdam. Netherlands, 2010
- Hnidek, J. Integration of Verse protocol to Blender. International Blender Conference in Amsterdam. Netherlands, 2005
Grants and Subsidies
This project received following grants and subsidies: