A Solipsis entity involves two distinct components: a Node and a Navigator.

a Node

A Node, for being in Solipsis world. It is the central module of an entity.

A Node implements the Solipsis Protocol which ensures that the entity is directly connected with its virtual neighbors :

if I see everybody there and everybody see me there, I am there.

Moreover, a Node assumes the charge to participate to the network of peers and to collaborate with other nodes to maintain the topology of the virtual world as described in the presentation of the peer-to-peer algorithms

a Navigator

A Navigator, for communications and interactions with other entities. It connects to a Node through the Interface Navigator-Node

It has two main functions:

  1. it aims to act as a GUI between the user and the entity. It offers to users the ability to control a node (motion, teleportation, behavior modifications...)
  2. it also acts as enabler for the communication between entities thanks to pluggable services. A service is an independent part of a Navigator module. It communicates by a personal protocol with a similar service. For instance, we imagine a service for chatting, another one for file sharing, for avatar exchanges or for videoconferencing.

GeneralArchitecture.png