Créer du contenu 3D aligné avec précision sur la scène réelle
Ce document décrit comment placer des objets virtuels avec précision dans un espace réel et les aligner exactement avec l'espace réel dans une expérience de réalité augmentée.
Avant de commencer
- Consultez le document Mon dépôt de localisation est-il utilisable ? pour confirmer que le dépôt de localisation a été correctement créé et que le Mega Block a été ajouté.
- Ajoutez une cible de suivi Mega dans la scène.
- Préparez les actifs 3D que vous souhaitez utiliser dans votre projet Unity.
Note
Le contenu et les outils suivants s'appliquent uniquement au processus de développement d'applications Unity avec EasyAR Mega.
Si vous développez une mini-programme, veuillez consulter Créer et télécharger des annotations avec l'éditeur Unity (développement de mini-programmes).
Si vous ne développez pas d'application Unity mais souhaitez visualiser les résultats de la cartographie Mega, veuillez consulter Prévisualiser le maillage 3D texturé dans le guide d'utilisation de Mega.
Si vous ne développez pas d'application Unity mais avez besoin de simuler l'exécution pour vérifier l'effet de localisation, veuillez consulter Aperçu de l'effet de simulation d'exécution dans le guide d'utilisation de Mega.
Le contenu de cet article nécessite que les packages Unity suivants soient déjà importés dans votre projet :
com.easyar.sensecom.easyar.mega
Block données de scène réelle
Dans le développement Mega, plusieurs types de données de scène réelle peuvent être utilisés pour aider au placement du contenu 3D :
Modèle de maillage block

Image panoramique (avec occlusion du modèle spatial)

Note
Les images panoramiques ne sont pas prises en charge pour certaines données.
Éclaboussure gaussienne 3D LCC

Note
Les données d'éclaboussure gaussienne 3D LCC ne sont disponibles que dans les scénarios d'utilisation où l'appareil de son domaine a été utilisé pour la collecte et la cartographie a été terminée.
Activer l'outil éditeur
Tout d'abord, vous devez ajouter une cible de suivi Mega dans l'éditeur, puis sélectionner la cible de suivi et cliquer sur le bouton Create Editor Tool.

Astuce
Si l'application nécessite de créer la cible de suivi via un script plutôt que dans l'éditeur, vous pouvez, après l'avoir placée dans l'éditeur, enregistrer la cible de suivi et/ou ses objets enfants, puis configurer la cible de suivi via un script au moment de l'exécution et attacher les objets enfants sous la cible de suivi.
Vérifiez les informations du service et connectez-vous.

Important
Avant de vous connecter, vérifiez les autorisations de l'API Key.
- Si le Type du service est
Block, assurez-vous que l'API Key utilisée a les autorisations pour accéder aux servicesMega BlocketSpatialMap. - Si le Type du service est
Landmark, assurez-vous que l'API Key a l'autorisation d'accéder au serviceMega Landmark.

En cas de permissions insuffisantes, vous verrez un message d'erreur indiquant l'échec de la validation de la connexion au service.

Si la source de données de la cible est correctement configurée, après une connexion normale au service, vous pourrez voir l'heure de la dernière mise à jour des données et l'interface de contrôle des données de l'éditeur de block.

Astuce
Si la source de données de la cible est laissée vide, après une connexion normale au service, vous verrez la liste des données de block disponibles dans le service. Après avoir sélectionné le block à utiliser, vous pourrez également accéder à l'interface de contrôle des données de l'éditeur de block, et la source de données de la cible sera automatiquement remplie.

Les données de l'outil éditeur sont stockées sous le nœud EasyAR.Mega.EditorTool. Supprimer ce nœud équivaut à supprimer les données de l'outil éditeur.

Attention
Ne modifiez pas directement le contenu du nœud EasyAR.Mega.EditorTool, et surtout ne modifiez pas son Transform, car cela pourrait entraîner un dysfonctionnement de l'outil éditeur ou une erreur de position d'affichage du contenu lors du suivi.
Chargement du modèle de bloc
Cliquez sur la première case de sélection sous les données de bloc. Cela lancera le processus de chargement des données de l'éditeur de bloc. Une fois chargé, vous pouvez voir le maillage du bloc actuel dans la fenêtre Scene.

Astuce
- Le maillage du bloc est aligné avec l'espace de la cible de suivi du bloc, permettant de placer directement du contenu 3D sur le modèle.
- Le maillage du bloc basculera entre différents niveaux de détail (LOD) en fonction de la position de la caméra. Une connexion réseau est nécessaire pendant l'utilisation pour éviter les échecs de changement de LOD.
- Le maillage du bloc est stocké sous le nœud de l'outil, n'existe qu'en mode éditeur et ne sera pas inclus dans l'application finale.
Monter le contenu 3D sous le nœud block
Après avoir chargé le modèle de block, montez le contenu 3D sous le nœud Block dans la scène, en tant que nœud enfant.

Attention
- Les objets 3D ne doivent pas être placés sous le nœud
EasyAR.Mega.EditorTool. Ce nœud est uniquement destiné aux outils de l'éditeur et peut être automatiquement supprimé ou reconstruit dans certains cas.
Important
- Les objets 3D doivent être placés sous le nœud block pour garantir que le rendu du contenu virtuel soit correctement positionné lors de l'exécution.
Placer précisément du contenu 3d
Vous pouvez placer avec précision le contenu virtuel dans l'espace réel en suivant les étapes ci-dessous.
Placement selon le modèle de maillage de bloc
Ajustez la position et la rotation du contenu 3D dans la scène par rapport au maillage de bloc, pour le placer à l'emplacement et l'orientation souhaités.
Astuce
- Une fois que l'éditeur passe en mode lecture, le maillage de bloc reste utilisable, mais ne basculera pas de LOD en fonction de la position de la caméra.
- Le maillage de bloc est stocké sous le nœud outil, existe uniquement en mode éditeur et ne sera pas inclus dans l'application finale.
[Optionnel] Placement basé sur la vue panoramique
Cliquez sur la case à cocher Panorama Preview Marker pour afficher les marqueurs panoramiques.

Note
- Certaines données ne prennent pas en charge la vue panoramique.
Cliquez sur n'importe quel marqueur panoramique pour placer du contenu dans cette position en mode panoramique. Vous pouvez basculer entre différentes vues panoramiques en cliquant sur différents marqueurs panoramiques, afin de vérifier que la position du contenu 3D est correcte sous différents angles de vue.

Astuce
- Lors du placement de contenu à l'aide des marqueurs panoramiques, l'occlusion par les modèles spatiaux basés sur mesh reste active.
- Cette fonctionnalité reste disponible après que l'éditeur passe en mode lecture (play), mais la précision de l'occlusion par les modèles spatiaux basés sur mesh est affectée par la désactivation de la commutation LOD.
- Les marqueurs panoramiques et les données de vue panoramique sont stockés sous le nœud de l'outil, n'existent qu'en mode éditeur et ne sont pas intégrés dans l'application finale.
[Optionnel] Placement selon LCC 3D Gaussian Splatting
Note
Cette section s'applique aux scénarios d'utilisation après la collecte avec l'appareil de son propre domaine et l'achèvement de la cartographie. Les résultats de cartographie obtenus avec d'autres appareils ne contiennent pas de données LCC 3DGS.
Si vous avez utilisé la fonction LCC 3D Gaussian Splatting (LCC de son propre domaine), vous pouvez ajuster la position du modèle en référence au 3DGS. Pour l'utilisation des données LCC, veuillez consulter Charger les données LCC et les aligner avec le Mesh.
Impact de défauts des données de scène réelle sur le placement de contenu
Que faire si le modèle de bloc chargé n'est pas horizontal
Sélectionnez le nœud de bloc à ajuster dans le panneau Hierarchy, puis modifiez la Rotation dans le panneau Inspector jusqu'à ce que l'orientation du modèle semble correcte dans l'éditeur Unity.
Le Transform du nœud de bloc dans le système de coordonnées mondiales n'affecte pas le système de coordonnées local du bloc, et par conséquent n'affecte pas le résultat de rendu des contenus 3D qui sont des enfants du bloc. Son Transform est indépendant de l'effet d'affichage final.
Attention
Ne modifiez pas le Transform de EasyAR.Mega.EditorTool sous le nœud de bloc, sinon cela pourrait empêcher le bon fonctionnement de l'outil éditeur ou provoquer un affichage incorrect du contenu lors du suivi.
Que faire si le modèle de bloc chargé présente des parties cassées ou manquantes ?
Au cours du processus de reconstruction 3D, en raison d'une couverture incomplète des angles de capture, des parties cassées ou manquantes peuvent apparaître dans le modèle dense généré.

Face à un modèle incomplet, si la précision d'alignement du contenu 3D des parties cassées/manquantes n'est pas très élevée, vous pouvez placer le contenu 3D en cliquant sur les marqueurs panoramiques et en vous référant à l'image panoramique. Vous pouvez ensuite vérifier l'effet en cliquant sur différentes positions de marqueurs panoramiques à proximité.

Si une précision d'alignement très élevée est requise pour le contenu 3D des parties cassées/manquantes, il est nécessaire de compléter ou de mettre à jour la carte via une mise à jour incrémentielle ou une mise à jour complète sans perte. Généralement, de telles zones indiquent qu'elles n'ont pas été couvertes lors de la capture d'images. Dans ces zones, l'effet de localisation de Mega sera affecté, et aligner uniquement le contenu 3D dans l'éditeur ne suffit pas.
Étapes suivantes
- Vérifiez davantage la précision du placement en exécutant une simulation avec l'outil de vérification de session.
- Ajoutez une occlusion environnementale précise à la scène pour améliorer le réalisme de l'AR.





