L’application
La CyberCave est une expérience multijoueurs en réalité virtuelle où les utilisateurs peuvent marcher, parler, peindre ensemble dans un monde persistant. Toutes les sources du projet sont disponibles sur GIT HUB en version beta à cette adresse.
La dernière version de l’application présentée sur la page événements sera accessible très prochainement sur GitLab.
Travail en réseau et avatars
L’utilisateur est automatiquement connecté à l’espace de la CYBER_CAVE et peut choisir un avatar et interagir avec le monde et les autres utilisateurs. Tous les mouvements (parties du corps, doigts,…) et les autres actions sont synchronisés par l’intermédiaire d’un serveur PHOTON. Les utilisateurs peuvent parler dans le micro du casque et le son est spatialisé.
Outils
Dans cette version de démonstration, deux activités principales sont proposées : peinture et sculpture.
Peindre ensemble
L’utilisateur peut peindre sur n’importe quel mesh en utilisant les composants de peinture. Actuellement il y a trois types d’outils disponibles : les brosses, les stylos et les bombes. Tout est customisable dans l’éditeur de UNITY. Il suffit d’ajouter un composant peinture sur n’importe quelle surface de la CYBER_CAVE.
L’action de peindre est synchronisée au travers du réseau, cela permet aux utilisateurs de faire l’expérience de travaux collaboratifs sur la même toile et de partager leurs productions. Les peintures peuvent être exportées en .svg ou en .gcode.
Sculpter des meshs
Les utilisateurs peuvent sculpter des formes en ajoutant ou soustrayant des volumes avec différents outils (composant Mooduler). La génération de mesh fonctionne avec des algorythmes « marching cubes » tandis que la physique fonctionne avec un algorythme CCL. Des formes primitives peuvent être générées avec le composant « MoodulerCreator ». Les sculptures peuvent être peintes avec le « Mooduler gameobjets ».
Les sculptures sont synchronisées et les formes peuvent être exportées en tant que .obj, .stl ou bien .gcode.
Utiliser ses mains
Les mains peuvent utiliser soit pour saisir des objets ou bien pour interagir avec l’espace environnant. Les utilisateurs peuvent déclencher des actions en utilisant certaines poses du langage des signes (ouverture de menus, etc.).
Système serveur, mises à jour et persistence
Toutes les interactions des utilisateurs avec le monde virtuel sont sauvegardées sur un serveur. Lors de la connexion, les utilisateurs téléchargent les données de la dernière version du monde virtuel et voient ce qui s’est passé lorsqu’ils étaient absents. Chaque casque peut agir en tant que serveur et partager le dernier état du monde en produisant un fichier unique distribué.