Table of Contents

Prises en charge des casques et lunettes par EasyAR

Le SDK EasyAR offre de puissantes fonctionnalités AR multiplateformes, et sa philosophie de conception s'applique également aux nouveaux appareils de calcul spatial - les casques (Headset). Cet article présente comment EasyAR prend en charge les casques et comment les développeurs peuvent exploiter ces fonctionnalités pour créer des expériences immersives.

Explication des termes

Dans ce document, "casque" ou "Headset" désigne spécifiquement une catégorie d'appareils informatiques portés sur la tête, prenant en charge les interactions immersives ou transparentes. Ils peuvent afficher du contenu virtuel devant les yeux de l'utilisateur pour réaliser des expériences de réalité augmentée (AR) ou mixte (MR). Cela inclut :

  • Casques à transparence optique (Optical See-Through, OST) : Permettent de voir le monde réel directement à travers des verres semi-transparents
  • Casques à transparence vidéo (Video See-Through, VST) : Captent le monde réel via des caméras et l'affichent sous forme de flux vidéo

Habituellement, les casques sont aussi appelés lunettes AR, lunettes MR ou casques VR, selon les fabricants et les types d'appareils. Dans cet article, nous utiliserons le terme "casque" pour désigner cette catégorie d'appareils.

Fonctionnement de base des casques

Pour mieux comprendre le principe de prise en charge des casques par EasyAR, il faut d'abord connaître le flux de travail de base de ces appareils :

  1. Perception de l'environnement : Grâce à des caméras multiples intégrées, des capteurs de profondeur (comme iToF) et des unités de mesure inertielle (IMU), ils perçoivent en temps réel la structure géométrique, les conditions d'éclairage et les surfaces des objets environnants.
  2. Calcul spatial : Sur la base des données des capteurs, le système SLAM suit en temps réel la position 6DoF (position + orientation) de la tête de l'utilisateur.
  3. Rendu et affichage du contenu : Le contenu 3D (comme les modèles, les effets) est rendu en fonction de la position de l'appareil et projeté sur l'écran. En mode VR, l'affichage est purement virtuel ; en mode AR/MR, l'image virtuelle est fusionnée avec l'environnement réel (flux de la caméra VST ou arrière-plan transparent OST).
  4. Système d'interaction : Grâce à des manettes, la reconnaissance gestuelle, la voix ou le suivi oculaire, il reçoit les instructions de l'utilisateur et y répond.

Principe de prise en charge des casques par EasyAR

EasyAR ne remplace pas le suivi spatial natif ou le pipeline de rendu du casque, mais travaille en synergie avec eux dans un rôle d'amélioration du calcul spatial. En tant que moteur d'algorithmes AR professionnel, il fournit diverses capacités de perception et de calcul spatial pour les scénarios AR, collaborant efficacement avec le système natif de l'appareil.

Domaine de responsabilité Rôle
Suivi 6DOF de la tête, rendu d'affichage, interactions de base, etc. SDK natif du casque / runtime
Capacités avancées de perception : reconnaissance et suivi d'images/objets, localisation à grande échelle, etc. SDK EasyAR

Le SDK EasyAR fournit les fonctionnalités AR essentielles pour la perception du monde : reconnaissance d'images/objets, reconstruction éparse, reconstruction dense, localisation à grande échelle. Il est responsable de "comprendre" le monde et d'indiquer à l'application du casque où placer le contenu virtuel.

Le SDK EasyAR s'intègre comme plugin ou bibliothèque dans le cadre de développement d'applications du casque (généralement Unity ou Unreal). Il reçoit les flux de données brutes du système de l'appareil, les traite et calcule, puis produit une matrice de position relative au système de coordonnées spatiales de l'appareil. Enfin, le pipeline de rendu du moteur du casque dessine les objets virtuels au bon endroit.

Situation de prise en charge et méthodes de mise en œuvre

EasyAR offre une prise en charge complète des principales plateformes de développement de casques, principalement via deux méthodes :

  • Via Unity/Unreal Engine : C'est la méthode la plus courante et recommandée. Les fabricants de casques fournissent généralement des plugins Unity/Unreal dédiés ou un SDK XR. EasyAR peut s'intégrer de manière transparente dans le SDK du fabricant.
  • Via la plateforme native (Native) : Pour les scénarios nécessitant des performances extrêmes ou un développement natif spécifique, les interfaces natives C++/Java/Objective-C d'EasyAR peuvent être utilisées. Cela nécessite généralement que le développeur gère lui-même l'interface avec les données de bas niveau de l'appareil.

EasyAR a été testé et validé sur plusieurs plateformes de casques majeures via Unity. Les appareils actuellement pris en charge sont les suivants :

Modèle de casque Version système/SDK requise
Apple Vision Pro visionOS 2 ou version ultérieure
PICO 4 Ultra Enterprise PICO Unity Integration SDK 3.1.0 ou version ultérieure
Rokid AR Studio Rokid Unity OpenXR Plugin 3.0.3 ou version ultérieure
XREAL Air2 Ultra XREAL SDK 3.1 ou version ultérieure
Xrany X1 Xrany元霓 SDK
Note

Rokid AR Studio peut prendre en charge Rokid UXR 3 via Rokid Unity OpenXR Plugin, mais il est recommandé d'utiliser XR Interaction Toolkit, surtout pour une utilisation multi-appareils.

Important

Apple Vision Pro, PICO et XREAL nécessitent une licence d'entreprise correspondante. En cas de doute, contactez le service commercial.

  • Sous réserve des restrictions d'autorisation d'interface Apple Vision Pro, seuls les appareils disposant d'une licence API d'entreprise Apple sont pris en charge.
  • Sous réserve des restrictions d'autorisation d'interface PICO, seules les versions d'entreprise des appareils PICO sont prises en charge.
  • Sous réserve des restrictions d'autorisation d'interface XREAL, seuls les appareils disposant d'une licence d'entreprise sont pris en charge.

Pour les casques d'autres fabricants non mentionnés ci-dessus, EasyAR propose des méthodes d'extension pour une connexion personnalisée, comme la caméra. Référez-vous à Créer un package d'extension EasyAR pour casques pour effectuer la connexion vous-même.

Cela implique généralement les étapes suivantes :

  1. Obtenir les droits de développement de l'appareil : Demander un compte développeur et la documentation SDK du casque cible.
  2. Obtenir les flux de données des capteurs : Récupérer du SDK de l'appareil les images de la caméra (images vidéo), les paramètres de la caméra et autres données nécessaires.
  3. Appeler l'API EasyAR : Utiliser les API de bas niveau d'EasyAR pour transmettre les données des capteurs au FrameSource d'EasyAR pour traitement.
  4. Obtenir et appliquer les résultats des calculs : Récupérer les résultats des calculs (position de la caméra) du moteur EasyAR et les appliquer à votre moteur de rendu 3D.

Nous proposons des guides de développement détaillés et des exemples de code pour vous aider dans ce processus. Si vous rencontrez des problèmes lors de la connexion, n'hésitez pas à solliciter une assistance technique dans notre communauté de développeurs.

Fonctionnalités principales disponibles

Sur les appareils casques, vous pouvez pleinement exploiter la matrice complète des fonctionnalités d'EasyAR pour créer des applications spatiales riches :

  • Suivi d'images planes : Reconnaître et suivre des images prédéfinies, superposant des vidéos dynamiques ou des modèles 3D sur l'image.
  • Suivi d'objets 3D : Reconnaître et suivre des modèles 3D prédéfinis (comme des jouets, des emballages de produits), permettant au contenu virtuel d'interagir avec eux.
  • Carte spatiale éparse : Scanner l'environnement pour générer une carte visuelle 3D, fournissant des fonctions de localisation et de suivi visuel. La carte générée peut être sauvegardée ou partagée en temps réel entre plusieurs appareils.
  • Carte spatiale dense : Scanner et générer des cartes de nuages de points denses et des modèles maillés (Mesh) de l'environnement, permettant des relations d'occlusion physique entre les objets virtuels et réels, améliorant grandement l'immersion.
  • Reconnaissance d'images dans le cloud : Se connecter à la base de données cloud EasyAR pour permettre la reconnaissance et la gestion d'une quantité massive d'images, adapté aux scénarios d'exposition, d'éducation, etc.
  • Localisation Mega à grande échelle : Solution de calcul spatial à l'échelle d'une ville, connectée au service de localisation cloud EasyAR, offrant un suivi et une localisation stables, rapides et précis, étendant considérablement la portée des expériences AR.

Guides spécifiques aux plateformes

Pour vous aider à démarrer rapidement sur une plateforme spécifique, nous avons préparé des guides d'intégration multi-plateformes détaillés. Cliquez sur les onglets ci-dessous pour consulter le tutoriel de démarrage rapide correspondant.