Concevoir une application en 3D compatible avec tous les matériels de réalité virtuelle ou augmentée

Concevoir une application en 3D compatible avec tous les matériels de réalité virtuelle ou augmentée

Application installée sur un ordinateur, un ordiphone ou sur un casque autonome

 

Pour qu’une application en 3D soit compatible avec tous les matériels de réalité virtuelle ou augmentée, il faut y intégrer un environnement d’exécution OpenXR et elle doit utiliser les fonctions d’appel à cet environnement. OpenXR remplace OpenVR, qui ne fonctionnait pas avec les casques de réalité augmentée.

 

Logotype OpenXR

 

L’application SteamVR intègre un environnement d’exécution OpenXR.

Monado est un environnement d’exécution OpenXR. Il est utilisé par exemple dans WiVRn, qui permet d’afficher en réalité virtuelle dans un casque autonome, une application OpenXR installée et exécutée sur un ordinateur. Ainsi, une application OpenXR non prévue pour être installée dans le système du casque autonome peut tout de même y être affichée.

Éditeurs d’applications en 3D permettant d’intégrer OpenXR dans une application :

 

 

Application web

 

Pour qu’une application web en 3D s’affiche en réalité virtuelle dans un casque et communique avec les manettes et autres périphériques, via un navigateur web, il est préférable de la concevoir pour qu’elle utilise l’interface WebXR intégrée dans le navigateur web. WebXR remplace WebVR, devenue obsolète. Vous pouvez tester la compatibilité de votre navigateur web sur WebXR Report.

 

Logotype WebXR

 

Sur un ordinateur avec un casque filaire, Chrome et Edge, basés sur le navigateur web Chromium, intègrent bien l’interface WebXR. Dans un casque autonome, si le navigateur web disponible n’intègre pas l’interface WebXR, installez par exemple le navigateur web Wolvic.

Exemples d’applications web utilisant WebXR :

Une application web peut utiliser le microprocesseur de votre carte graphique (le GPU) si elle fait appel à l’interface WebGPU intégrée dans le navigateur web. Cela permet d’améliorer la qualité et la vitesse de l’affichage. WebGPU permet d’utiliser les fonctions de la carte graphique, via les interfaces Direct3D dans Windows, Metal dans macOS et Vulkan dans Linux. WebGPU remplace WebGL, devenue obsolète. Vous pouvez tester la compatibilité de votre navigateur web sur WebGPU Browser Report, sur WebGPU Samples ou sur Web Graphics API Tester.logotype WebGPU

Outils de développement permettant d’utiliser WebXR et WebGPU dans une application web :

 

Scènes multi-utilisateurs et métavers utilisant WebXR :

  • Cadriciel de développement ATON. Utilise three.js.
  • Cadriciel de développement CIRCLES XR. Utilise three.js.
  • Cadriciel de développement Networked-Aframe.
  • UMI3D permet de créer des scènes 3D interactives mais nécessite un navigateur web spécifique.
  • Le cadriciel de développement Colyseus, écrit en JavaScript/TypeScript et Node.js, permet de rendre multi-utilisateurs des scènes 3D développées avec PlayCanvas, Babylon.js…
  • Métavers Infinite Reality Engine, écrit en TypeScript. Transmission voix et vidéo en WebRTC.
  • Métavers Vircadia, écrit en TypeScript.

 

 

Moteurs physiques

 

 

 

Jumeaux numériques en réalité virtuelle

 

Le protocole de transmission MQTT permet de faire communiquer des objets virtuels avec des objets physiques. Il suffit d’intégrer un client MQTT dans l’application de réalité virtuelle, qu’elle soit installée sur un ordinateur ou sur un casque autonome, ou qu’elle soit en mode web. MQTT permet aussi bien d’envoyer des mesures (position et vitesse d’un objet, valeur d’un capteur…) que de recevoir des commandes.

 

 

Application 3D en réalité augmentée, en mode web

 

WebAR permet d’afficher des applications en réalité augmentée dans un navigateur web, sans avoir besoin d’installer une application.

  • Librairie AR.js.
  • Librairie MindAR pour le suivi d’une image ou d’un visage.

 

 

Formats de stockage et d’échange

 

Pour enregistrer, exporter et importer des objets et des scènes 3D, il est recommandé d’utiliser le format de fichier Universal Scene Description (OpenUSD) ou le format de fichier glTF.

 

 

Un peu d’histoire

 

 

Laisser un commentaire