Avertissement

Ce document est légèrement dépassé. FIXME: dit que vous pouvez utiliser un téléphone Android

Comprendre l'Architecture

L'architecture de Vircadia montre comment les différentes parties du système fonctionnent ensemble pour vous offrir la meilleure expérience VR.

Aperçu de l'Architecture

L'architecture de Vircadia se compose des éléments suivants qui fonctionnent ensemble et s'envoient des données pour votre expérience VR.

../../_images/overview.png

Interface Vircadia

L'Interface Vircadia (ou simplement "Interface") est la principale interface utilisateur de Vircadia. Elle est utilisée pour explorer le métaverse et entrer en contact avec des personnes du monde entier. Lorsque vous entrez dans un domaine, votre interface se connecte au serveur de domaine qui héberge le monde virtuel, ainsi qu'aux services globaux.

Vous pouvez télécharger et utiliser l'Interface sur votre ordinateur ou votre téléphone Android en utilisant l'installateur Client-Only Installer.

../../_images/interface.png

Engin de Physique

Votre expérience VR ne sera pas réaliste sans un peu de physique. Vircadia comprend un "engin physique" <http://bulletphysics.org>`_ qui simule le comportement des objets selon les lois de la physique newtonienne. Lorsqu'un objet tombe au sol et rebondit, ou lorsque deux ou plusieurs objets entrent en collision, leurs mouvements sont calculés par l'engin physique.

Chaque Interface possède son propre engin physique, et le serveur d'entités coordonne les résultats pour produire une simulation cohérente sur l'ensemble du domaine.

Serveur de Domaine

Un domaine est une simulation spatiale dans Vircadia que vous pouvez visiter. Il est calculé par une pile de programmes sur un ou plusieurs ordinateurs. Vous avez besoin du nom de lieu pour visiter un domaine, tout comme vous auriez besoin d'une adresse web pour visiter un site web.

Vous pouvez configurer votre propre domaine et l'héberger sur votre machine locale ou sur un serveur cloud pour le rendre disponible aux autres utilisateurs. La pile de serveurs de votre domaine est un ensemble de composants qui simulent et gèrent différents aspects du domaine tels que l'audio, les entités et les avatars. Tout ce que vous voyez, entendez et faites dans votre domaine est géré par la pile de serveurs.

../../_images/domain-server.png

Pile de Serveurs

The Domain server is at the top of this stack and its job is to give out assignments to the other components. These components are called Assignment Clients, because from the perspective of the domain server, they are clients that take on different roles.

La pile de serveurs ne se contente pas de contrôler, gérer et calculer votre domaine tel que vous le voyez, mais aussi tel qu'il est vu par toute personne visitant votre domaine. Cela signifie que le serveur de domaine distribue des missions de simulation et fournit leurs adresses IP aux Interfaces clients connectées. Le serveur de domaine est un exécutable unique qui engendre des clients d'assignation qui deviennent les différents mélangeurs selon la demande. Chaque client d'assignation peut fonctionner comme l'un des six types mentionnés. Le serveur de domaine détermine quel client d'assignation fonctionne comme quel mélangeur.

Clients d'Assignation

Les clients d'assignation contrôlent et gèrent divers aspects d'un domaine. Ils communiquent également directement avec les Interfaces clients connectées à un domaine. Il existe six types de clients d'assignation :

Client d'Assignation

Description

Mélangeur d'Avatars

Ce mixeur est chargé de votre présence virtuelle dans n'importe quel domaine. Il garde une trace de l'endroit où vous vous trouvez, de l'avatar que vous portez et de la façon dont vous vous déplacez dans le domaine. Par exemple, il suit la façon dont vous bougez votre tête lorsque vous portez un casque VR (HMD).

Mélangeur Audio

Mélange tous les sons, qu'il s'agisse de la voix ou de l'environnement. Et il le fait non seulement pour les avatars, mais aussi pour toutes les entités d'un domaine. Le mélangeur audio peut personnaliser un mixage stéréo pour vous en fonction de votre position par rapport à la source audio.

Serveur d'Entités

Suit toutes les entités et leurs propriétés dans un domaine, depuis leur description et leur position, jusqu'aux comportements qui leur sont attachés dans un script. Si une entité est modifiée, le changement est communiqué au serveur d'entités, qui à son tour relaie l'information à tous les clients qui visitent actuellement le domaine.

Serveur d'Actifs

Fournit des copies des modèles, des fichiers audio, des scripts et des autres supports utilisés par le domaine. Il fonctionne comme un serveur Web, mais en utilisant des protocoles adaptés à l'architecture de Vircadia.

Agent

Exécute des programmes JavaScript écrits par l'utilisateur. Si vous avez écrit un script pour faire applaudir votre avatar ou créer un bowling, l'Agent l'exécutera. Il peut voir des entités, des avatars et envoyer des sons.

Mélangeur de Messages

Assure la communication entre scripts s'exécutant dans différents programmes connectés au domaine, qui peuvent être des Interfaces ou des Agents.

Note

Sandbox gère tous ces composants sur le serveur de domaine, cinq clients d'assignation dédiés et autant de clients d'assignation agent que nécessaire. Toutefois, il est possible de répartir les clients d'assignation sur plusieurs ordinateurs, et même de répartir chaque fonction parmi une hiérarchie de composants d'assignation, qui peuvent se trouver sur des ordinateurs différents. Par exemple, plusieurs mixeurs audio pourraient être utilisés pour mixer l'audio dans différentes régions géographiques du domaine.

Services Globaux

Vircadia maintient des services globaux pour connecter différents serveurs entre eux.

../../_images/services.png

Voir Aussi