VirtualDev est un ensemble de bibliothèques JavaScript qui permet de développer des applications 3D immersives s'exécutant dans des navigateurs modernes.
VirtualDev-Server est un ensemble de composants logiciels qui regroupe la bibliothèque VirtualDev ainsi que tous les services logiciels nécessaires pour communiquer avec divers appareils (casques VR/AR, objets connectés, caméra, etc).
VirtualDev-Server est constitué de plusieurs outils logiciels nécessaires pour communiquer avec son environnement. On retrouve un serveur Web HTTPS (Caddy) pour servir vos applications Web, ainsi qu'un serveur MQTT (Mosquitto) pour dialoguer avec des objets connectés (le serveur HTTPS sert de proxy au serveur MQTT).
Pour faciliter l'installation de VirtualDev-Server sur sa machine, celui-ci est disponible sous forme d'une image Docker, qui sera lancée dans un conteneur sur sa propre machine.
Pour pouvoir utiliser l'image Docker de VirtualDev-Server, vous devez avoir le logiciel docker installé sur votre machine.
Un excellent site pour apprendre à Installer Docker sur Linux, Windows et macOS.
De plus, un éditeur de code est nécessaire pour modifier le code source de votre projet (par exemple Visual Studio Code).
Astuce : Pour utiliser Visual Studio Code avec WSL sous Windows, cliquer sur ce lien.
Pour récupérer le projet VirtualDev-Server, je conseille l'utilisation de l'outil
gitpour une mise à jour facile et rapide. Pour installer Git sur votre machine, suivre les instructions ici.
-
Récupérer le projet VirtualDev-Server soit en le clonant (solution recommandée), soit en téléchargeant le fichier ZIP.
- Pour cloner le projet, saisir la commande suivante dans un terminal:
git clone --depth=1 https://github.com/LD2Studio/VirtualDev-Server.git
- Pour télécharger le projet, cliquer sur le bouton vert (
<> Code) sur la page du projet et télécharger le fichier ZIP. Dézipper le fichier.
-
Depuis Visual Studio Code, ouvrir le dossier
VirtualDev-Server/.
L'arborescence du projet VirtualDev-Server est la suivante:
.
├── compose.yml
├── config
│ ├── caddy
│ │ └── Caddyfile.template
│ ├── mosquitto.conf
│ └── run.sh
├── Dockerfile
├── examples
│ ├── ...
│ └── ...
├── package.json
├── package-lock.json
├── projects
│ ├── ...
│ └── ...
└── README.md
Important : Le sous-dossier nommé
projectsest l'endroit où vous devrez placer vos projets VirtualDev.
Vous êtes maintenant prêt à construire et à lancer une machine virtuelle VirtualDev-Server.
-
Dans le terminal, saisir la commande suivante:
docker compose up --build
-
Ouvrir un navigateur Web et saisir
localhostdans la barre d'adresse. -
Une page avec plusieurs dossiers apparaît. Le dossier
examplescontient plusieurs exemples de projet pour voir ce que l'on peut faire avecVirtualDev-Server. Le dossierprojectspermet de lancer vos projets locaux qui sont placés dans le dossiervirtualdev-server/projects. -
Pour stopper la machine virtuelle
VirtualDev-Server, faire un CTRL+C dans le terminal. -
Pour supprimer l'instance de
VirtualDev-Server, saisir la commande suivante :docker compose down
Avertissement : Les machines extérieures doivent être connectées au même réseau local utilisé par la machine qui exécute le serveur VirtualDev.
Pour pouvoir accéder au serveur VirtualDev depuis une machine extérieure (comme un navigateur d'un casque VR ou un objet connecté), il faut indiquer le nom de votre machine, appelé HOSTNAME.
- Récupérer le nom de votre machine. Dans un terminal, taper la commande
hostnamequi affichera le nom de votre machine. - Créer un fichier nommé
hostnamedans le sous-dossiervirtualdev-server/config, puis éditer-le et saisir le nom de votre machine simplement.
Quand vous lancez de nouveau votre serveur VirtualDev, celui-ci sera maintenant accessible en tapant l'adresse <hostname>.local dans le navigateur de la machine externe.
La bibliothèque VirtualDev utilisée dans ce projet, ainsi que leurs dépendances (Three.js, MQTT, etc.) sont disponibles dans l'image vdev-server, mais elles ne sont pas visibles depuis votre machine et l'éditeur Visual Studio Code ne peut pas y accéder pour la complétion de code et la documentation de VirtualDev.
Si vous souhaitez avoir une copie de ces bibliothèques, exécutez la commande suivante :
docker cp vdev-server:/home/www/node_modules ./projectsAvertissement : Cette commande ne fonctionne que si le conteneur
vdev-serverest lancé.