Ce projet Unity est un client permettant de générer, modifier et explorer des environnements générés par l'IA à partir de messages vocaux.
Il comporte deux scènes principales, une pour ordinateur et une pour réalité virtuelle, qui vous permettent toutes deux d'explorer de nouveaux mondes. L'idée de ce projet est de vous permettre d'accéder à toutes les fonctionnalités de l'IA depuis une application, réduisant ainsi les interruptions dans le processus de création.
Le projet a été développé à la Fondation Campus Biotech Genève (GitHub), en collaboration avec le Laboratoire des Sciences Cognitives (qui fait partie de l'EPLF).
L'installation est simple, car nous utilisons les fonctionnalités standard d'Unity. Voici le guide détaillé.
La plupart des casques VR compatibles avec OpenXR devraient fonctionner immédiatement. Le projet a été développé avec le HP Reverb G2 (un casque Windows Mixed Reality).
Important
Ceci n'est que le client, vous avez besoin d'un serveur en cours d'exécution pour réellement utiliser les fonctionnalités de l'IA ! Le référentiel pour exécuter le serveur peut être trouvé à l'adresse : VR-Environment-GenAI-Server.
Ce projet Unity présente une scène générée par une IA à partir d'une invite texte. La scène est créée dynamiquement en fonction du texte saisi et permet de générer des environnements uniques et créatifs.
Pour générer une scène :
Vous devrez peut-être définir quelques paramètres de configuration pour une expérience fluide. La plupart des paramètres de configuration se trouvent sous Assets/Configurations/api.json
.
Si vous exécutez le projet localement VR et AI sur le même ordinateur (la configuration "debug"), vous devez définir les éléments suivants.
pythonFallbackApiFile
: chemin du fichier Python api.json
, ce fichier doit se trouver dans le dossier racine du projet Python.Si vous souhaitez vous connecter à un serveur distant, les fonctionnalités importantes à paramétrer :
serverDefaultIp
: l'IP pour atteindre le serveur AI (IPv4 de préférence).serverDefaultPort
: numéro de port par défaut du serveur.Remarque : si le serveur et le fichier API de secours sont correctement spécifiés, le serveur sera ignoré et la connexion sera locale. Vous pouvez remplacer le chemin du fichier API de secours par n'importe quel mauvais chemin pour éviter ce comportement.
Certaines options sont considérées comme héritées et utilisées pour la communication sur le même stockage de fichiers. Vous pouvez spécifier où Python doit enregistrer les fichiers, les emplacements temporaires sont préférables.
audioPath
: le chemin d'accès au fichier audio temporaire à enregistrer lors de l'utilisation de la fonction de synthèse vocale.baseImage
: le chemin vers la texture qui sera modifiée .maskPath
: le chemin d'accès à la texture de masque temporaire utilisée lors de la fonction d'inpainting. Les principales caractéristiques de ce projet sont :
Toutes les scènes suivantes se trouvent dans le dossier Assets/Scenes
.
Les autres scènes sont à des fins de test :
Nous mettons à disposition une documentation en ligne, vous pouvez également y accéder dans le dossier docs/
.
La documentation est générée avec DocFX, vous pouvez la régénérer avec DocFX.
cp README.md Documentation/index.md
# Option 1: Offline, static documentation
docfx Documentation/docfx.json -t statictoc,custom_template
# Option 2: on a web server
docfx Documentation/docfx.json
Les deux commandes généreront une documentation sous docs/
.
Ce projet permet l'importation de skybox personnalisées.
La skybox est automatiquement importée dans la scène lorsque le joueur appuie sur Entrée.
Lancez la scène :
En guise de petit bonus, ce projet comprend une petite expérience de respiration pour la méditation.
Pour démarrer l’expérience de respiration :
Vous pouvez trouver le référentiel public actif de ce projet sur : https://github.com/HugoFara/speech-to-world-unity-client
Pour le serveur IA public officiel : https://github.com/fcbg-hnp-vr/VR-Environment-GenAI-Server.