Astronomie

Projection équirectangulaire à 360 degrés de toutes les étoiles à l'œil nu avec mouvement précessionnel pour la simulation

Projection équirectangulaire à 360 degrés de toutes les étoiles à l'œil nu avec mouvement précessionnel pour la simulation

Depuis de nombreuses années, j'utilise le simulateur de ciel Voyager de Carinasoft. Les sélections de projection sont excellentes, mais Equirectangular ne semble pas à l'un d'entre eux. Existe-t-il un programme qui fait cela ? J'ai préparé une feuille Excel pour effectuer les conversions de coordonnées, et je peux les importer dans Autocad si je dois le faire, mais il semble qu'il devrait y avoir un package standard pour le faire.

Pour mon projet actuel, je dois être capable de montrer un aperçu à 360 degrés des changements dus à la précession de 3000-2000-1000 avant JC en un coup d'œil. C'est peut-être ma familiarité avec la projection simple typique publiée pour les géomètres dans un éphéméride standard avant qu'Internet et le GPS n'éliminent pratiquement la demande pour de telles publications.


La projection "cylindre" de Stellarium fait ceci :


Réalité augmentée pour les développeurs : créez des applications de réalité augmentée pratiques avec Unity, ARCore, ARKit et Vuforia [1 éd.] 1787286436, 978-1787286436

Table des matières :
1. Améliorez votre monde
2. Configuration de votre système
3. Construire votre application
4. Cartes de visite augmentées
5. Système solaire AR
6. Comment changer un pneu crevé
7. Améliorer le manuel d'instructions
8. Décoration de chambre avec AR
9. Poke le jeu de balle

Aperçu de la citation

Réalité augmentée pour les développeurs

Créez des applications pratiques de réalité augmentée avec Unity, ARCore, ARKit et Vuforia

Jonathan Linowes Krystian Babilinski

Réalité augmentée pour les développeurs Copyright © 2017 Packt Publishing Tous droits réservés. Aucune partie de ce livre ne peut être reproduite, stockée dans un système de récupération ou transmise sous quelque forme ou par quelque moyen que ce soit, sans l'autorisation écrite préalable de l'éditeur, sauf dans le cas de brèves citations intégrées dans des articles critiques ou des critiques. Tous les efforts ont été faits dans la préparation de ce livre pour assurer l'exactitude des informations présentées. Cependant, les informations contenues dans ce livre sont vendues sans garantie, expresse ou implicite. Ni le(s) auteur(s), ni Packt Publishing, ni ses revendeurs et distributeurs ne pourront être tenus responsables de tout dommage causé ou prétendument causé directement ou indirectement par ce livre. Packt Publishing s'est efforcé de fournir des informations sur les marques de toutes les sociétés et produits mentionnés dans ce livre en utilisant les majuscules de manière appropriée. Cependant, Packt Publishing ne peut garantir l'exactitude de ces informations. Première publication : octobre 2017 Référence de production : 1051017 Publié par Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, Royaume-Uni.

ISBN : 978-1-78728-643-6 www.packtpub.com

Crédits Auteurs Jonathan Linowes Krystian Babilinski

Éditeur de copie Édition Safis

Coordinateur de projet Ulhas Kambali

Rédactrice en chef Amarabha Banerjee

Correcteur d'épreuves Safis Editing

Rédactrice en chef des acquisitions Reshma Raman

Éditeur de développement de contenu Anurag Ghogre

Rédacteur technique Jash Bavishi

Coordinateur de production Melwyn Dsa

À propos des auteurs Jonathan Linowes est directeur de Parkerhill Reality Labs, un studio indépendant de médias immersifs. Il est un véritable passionné de graphisme 3D, développeur Unity, entrepreneur à succès et enseignant. Il est titulaire d'un diplôme en beaux-arts de l'Université de Syracuse et d'une maîtrise du MIT Media Lab. Il a fondé plusieurs startups à succès et a occupé des postes de direction technique dans de grandes entreprises, dont Autodesk Inc. Il est l'auteur d'autres livres et vidéos de Packt, notamment Unity Virtual Reality Projects (2015) et Cardboard VR Projects for Android (2016). Un merci spécial à Lisa et à nos enfants pour avoir amélioré ma vie et garder ma réalité réelle.

Krystian Babilinski est un développeur Unity expérimenté avec une connaissance approfondie de la conception 3D. Il développe des applications AR/VR professionnelles depuis 2015. Il a dirigé Babilin Applications, un groupe Unity Design qui promeut le développement open source et s'engage avec la communauté Unity. Krystian dirige maintenant le développement chez Parkerhill Reality Labs, qui a récemment publié Power Solitaire VR, un jeu de réalité virtuelle multiplateforme.

À propos de l'examinateur Micheal Lanham est un architecte de solutions chez petroWEB et réside actuellement à Calgary, en Alberta, au Canada. Dans son rôle actuel, il développe des applications SIG intégrées avec des capacités avancées de ML et de recherche spatiale. Il a travaillé en tant que développeur de jeux professionnel et amateur, il crée des jeux de bureau et mobiles depuis plus de 15 ans. En 2007, Micheal a découvert Unity 3D et est depuis un développeur, consultant et gestionnaire passionné de plusieurs jeux Unity et projets graphiques. Micheal avait précédemment écrit Développement de jeux en réalité augmentée et Développement audio de jeux avec Unity 5.x, également publié par Packt en 2017.

www.PacktPub.com Pour les fichiers d'assistance et les téléchargements liés à votre livre, veuillez visiter www.PacktPub.com. Saviez-vous que Packt propose des versions eBook de chaque livre publié, avec des fichiers PDF et ePub disponibles ? Vous pouvez passer à la version eBook sur www.PacktPub.com et en tant que client de livres imprimés, vous avez droit à une réduction sur la copie eBook. Contactez-nous à [email protected] pour plus de détails. Sur www.PacktPub.com, vous pouvez également lire une collection d'articles techniques gratuits, vous inscrire à une gamme de newsletters gratuites et recevoir des remises et des offres exclusives sur les livres et les livres électroniques Packt.

Obtenez les compétences logicielles les plus demandées avec Mapt. Mapt vous donne un accès complet à tous les livres et cours vidéo Packt, ainsi qu'à des outils de pointe pour vous aider à planifier votre développement personnel et à faire progresser votre carrière.

Pourquoi s'abonner ? Entièrement consultable dans tous les livres publiés par Packt Copiez et collez, imprimez et marquez le contenu À la demande et accessible via un navigateur Web

Commentaires des clients Merci d'avoir acheté ce livre Packt. Chez Packt, la qualité est au cœur de notre processus éditorial. Pour nous aider à nous améliorer, veuillez nous laisser une critique honnête sur la page Amazon de ce livre à l'adresse https:/​/​www.​amazon.​com/​dp/​1787286436. Si vous souhaitez rejoindre notre équipe de réviseurs réguliers, vous pouvez nous envoyer un e-mail à l'adresse [email protected] Nous récompensons nos réviseurs réguliers avec des livres électroniques et des vidéos gratuits en échange de leurs précieux commentaires. Aidez-nous à améliorer sans relâche nos produits !

Table des matières Préface Chapitre 1 : Améliorez votre monde Qu'est-ce que la réalité augmentée ? Réalité augmentée par rapport à la réalité virtuelle Fonctionnement de la réalité augmentée AR mobile portable Lunettes optiques AR basée sur des cibles Cartographie spatiale 3D Développement de la RA avec cartographie spatiale Entrée pour la RA portable Autres techniques d'affichage RA Types de cibles RA Marqueur Marqueurs codés Images Multi-cibles Reconnaissance de texte Formes simples Objet reconnaissance Cartes spatiales Géolocalisation Problèmes techniques liés à la réalité augmentée Champ de vision Perception visuelle Mise au point Résolution et taux de rafraîchissement Ergonomie Applications de la réalité augmentée Marketing d'entreprise Éducation Formation industrielle Commerce de détail Jeu

1 7 8 12 14 14 16 18 21 23 24 25 26 26 26 27 28 28 29 29 30 30 31 31 32 33 33 34 34 35 35 35 35 36

Autres Objet de ce livre Résumé

Chapitre 2 : Configuration de votre système

Installation de Unity Configuration requise Télécharger et installer Introduction à Unity Exploration de l'éditeur Unity Objets et hiérarchie Édition de scène Ajout d'un cube Ajout d'un plan Ajout d'un matériau Enregistrement de la scène Modification de la vue de la scène

Développement de jeux Textures de matériaux, éclairage et shaders Animation Physique Fonctionnalités supplémentaires

Utiliser des caméras dans AR Obtenir et utiliser Vuforia Installer Vuforia Télécharger le package Vuforia Unity Importer le package Vuforia Assets

VuforiaConfiguration setup Clé de licence Webcam

Création d'une démo rapide avec Vuforia Ajout d'un préfabriqué de caméra AR à la scène Ajout d'une image cible Ajout d'un cube

Obtenir et utiliser ARToolkit Installer ARToolkit Importer le package ARToolkit Assets Configuration de la scène ARToolkit Ajouter le contrôleur AR Ajouter l'origine racine AR Ajouter une caméra AR Enregistrer la scène

Construire une démo rapide avec ARToolkit Identifier le marqueur AR

41 41 42 45 46 48 48 49 50 53 54 55 56 56 58 59 60 60 63 63 64 66 69 71 73 73 73 74 77 80 81 83 85 85 87 88 89 89 89

Ajout d'un objet suivi AR Ajout d'un cube

Chapitre 3 : Créer votre application

Identification de votre plate-forme et de vos kits d'outils Création et exécution à partir de Unity Ciblage Android Installation du kit de développement Java (JDK) À propos de l'emplacement de votre JDK

Installation d'un SDK Android Installation via Android Studio Installation via des outils de ligne de commande À propos de l'emplacement du chemin racine de votre SDK Android

Installation du périphérique USB, débogage et connexion Configuration des outils externes de Unity Configuration d'une plate-forme et d'un lecteur Unity pour Android Création et exécution Dépannage de l'erreur de chemin du SDK Android Erreur de collision de plug-ins

Utilisation de Google ARCore pour Unity Ciblage d'iOS Avoir un identifiant Apple Installation de Xcode Configuration des paramètres du lecteur Unity pour iOS Paramètres du lecteur ARToolkit Création et exécution Dépannage Erreur de collision des plug-ins Avertissement relatif aux paramètres de projet recommandés Nécessite une erreur de l'équipe de développement Erreur d'échec de l'éditeur de liens Pas de flux vidéo sur l'appareil iOS

Utilisation d'Apple ARKit pour Unity Ciblage de Microsoft HoloLens Avoir un compte de développeur Microsoft Activation de Windows 10 Hyper-V Installation de Visual Studio Installation de l'émulateur HoloLens Configuration et couplage de l'appareil HoloLens pour le développement Configuration des outils externes de Unity

96 97 103 103 105 106 107 109 110 110 112 113 116 116 117 117 118 122 123 123 124 126 127 127 127 128 129 131 131 132 139 141 141 142 146 147 150

Configuration de la plate-forme et du lecteur Unity pour l'hologramme UWP

Création et exécution d'une émulation holographique dans Unity MixedRealityToolkit pour Unity Résumé

150 150 151 152 152 153 153 153 155 156 157 158 159

Chapitre 4 : Cartes de visite augmentées

Paramètres de construction Paramètres de qualité Paramètres du lecteur - capacités Paramètres du lecteur - autres paramètres

Paramètres Vuforia pour HoloLens Activation du suivi étendu Ajout de HoloLensCamera à la scène Liaison de la caméra HoloLens

Planifier votre développement AR Objectif du projet Cibles AR Actifs graphiques Obtention de modèles 3D Simplifier les modèles high poly

Appareil cible et outils de développement Configuration du projet (Vuforia) Ajout de l'image cible Ajout du préfabriqué ImageTarget à la scène Création de la base de données cible Importation de la base de données dans Unity Activation et exécution Activer le suivi étendu ou non ? Qu'est-ce qu'une bonne cible d'image ? Ajouter des objets Construire et faire fonctionner Comprendre l'échelle Echelle réelle Echelle virtuelle et Unity Echelle cible et échelle de l'objet Animer le drone Comment les pales tournent-elles ? Ajout d'une animation d'inactivité Ajout d'une animation de vol Connexion des clips dans le contrôleur d'animation

161 162 163 163 164 165 166 167 168 168 169 171 172 172 173 176 179 180 180 182 184 185 185 190 192 196

Lecture, construction et exécution Construction pour appareils iOS Configuration du projet Ajout de la cible d'image Ajout d'objets Paramètres de construction Construction et exécution Construction et exécution avec Apple ARKit Construction pour HoloLens Configuration du projet Ajout de la cible d'image Ajout d'objets Paramètres de construction Construction et exécution Construction avec ARToolkit Mise en place du projet Préparation de l'image cible Ajout de l'image cible Ajout d'objets Construction et exécution Résumé

Chapitre 5 : Système solaire AR

197 197 197 198 199 199 200 200 202 203 203 204 204 205 206 206 207 210 211 212 213 214

Le plan du projet Expérience utilisateur Cibles de RA Ressources graphiques Appareil cible et outils de développement Configuration du projet Création de notre projet initial Configuration de la scène et des dossiers Utilisation d'une cible de marqueur Création d'un conteneur SolarSystem Construction de la terre Création d'une terre Rotation de la terre Ajout d'audio Éclairage de la scène Ajout d'une texture de nuit du soleil

215 215 216 216 218 219 219 219 221 222 224 226 227 229 230 231 231

Construire un système terre-lune Créer l'objet conteneur Créer la lune Positionner la lune Une introduction rapide à la programmation Unity C# Animer l'orbite de la lune Ajouter l'orbite de la lune Ajouter une échelle de temps globale Orbiter le soleil Faire du soleil le centre, pas de la terre Créer le soleil La terre en orbite autour du soleil Inclinaison de l'axe de la terre Ajout des autres planètes Création des planètes avec des textures Ajout d'anneaux à Saturne Changement de vue Utilisation de cibles VuMark (Vuforia) Association de marqueurs avec des planètes Ajout d'une interface utilisateur de taux de vitesse maître Création d'un canevas et d'un bouton d'interface utilisateur Gestionnaires d'événements Gametime Événements d'entrée de déclenchement Construction et exécution Exportation du package SolarSystem Construction pour appareils Android – Vuforia Construction pour appareils iOS – Vuforia Construction pour HoloLens – Vuforia Construction et exécution de marqueurs ARTookit ARToolkit Construction du projet pour AR Toolkit Utilisation de cibles de code à barres 2D (AR Toolkit)

Création et exécution sans marqueur Création et exécution d'iOS avec ARKit Configuration d'une scène ARKit générique Ajout de SolarSystem Placement de SolarSystem dans l'interface utilisateur du monde réel pour la vitesse d'animation

Création et exécution d'HoloLens avec MixedRealityToolkit Création de la scène Ajout d'une sélection d'échelle et de temps par l'utilisateur

232 233 233 234 236 238 239 240 243 243 243 246 246 247 249 250 252 254 256 259 259 261 262 263 263 264 264 265 266 266 268 270 272 272 273 274 275 277 278 278 279

Chapitre 6 : Comment changer une crevaison Le plan du projet Objectif du projet Expérience utilisateur Version mobile de base Version mobile AR Version sans marqueur

Cibles AR Ressources graphiques et données Modèles de conception de logiciels Configuration du projet Création de l'interface utilisateur (vue) Création d'un canevas d'instructions Création d'un panneau de navigation Création d'un panneau de contenu Ajout d'un élément de texte de titre Ajout d'un élément de corps de texte Création d'un contrôleur d'instructions Câblage du contrôleur avec l'UI Création d'un modèle de données d'instruction Classe InstructionStep Classe InstructionModel Connexion du modèle au contrôleur et à l'UI Chargement des données à partir d'un fichier CSV Abstraction des éléments de l'UI Ajout d'InstructionEvent au contrôleur Refactoring InstructionsController Définition de l'InstructionElement Liaison des éléments de l'UI dans Unity Ajout du contenu de l'image Ajout d'une image au panneau Contenu de l'instruction Ajout de données d'image au modèle InstructionStep Importation des fichiers image dans votre projet Ajout de contenu vidéo Ajout de vidéo au panneau de contenu d'instruction Ajout d'un lecteur vidéo et d'une texture de rendu Ajout de données vidéo au modèle InstructionStep Ajout d'une vue de défilement

285 286 286 288 288 288 289 289 290 292 295 297 298 300 303 305 305 306 308 309 309 310 312 314 316 317 317 318 320 321 321 322 323 324 324 325 325 327

Chapitre 7 : Augmenter le manuel d'instructions Configuration du projet pour AR avec Vuforia Basculement entre le mode AR Utilisation de cibles définies par l'utilisateur Ajout d'un générateur de cible défini par l'utilisateur Ajout d'une cible d'image Ajout d'un bouton de capture Câbler le bouton de capture à l'événement de capture UDT Ajouter des aides visuelles à l'invite AR Ajout d'un curseur Ajout d'une cible d'enregistrement Suppression de l'invite AR pendant le suivi Prévention d'un mauvais suivi Intégration de contenu augmenté Lecture des instructions graphiques AR Création d'éléments d'interface utilisateur AR Affichage du graphique augmenté Création des graphiques augmentés Inclusion du panneau d'instructions dans AR Utilisation d'ARKit pour l'ancrage spatial Configuration du projet pour ARKit Préparation de la scène Modification des instructionsController Ajout du bouton de mode AR Ajout du bouton de mode d'ancrage Ajout de l'invite AR Ajout de contenu graphique AR Un manuel d'instructions holographique Configuration du projet pour HoloLens World space content canvas Activation des boutons suivant et précédent Ajout d'une invite AR Placement de l'hologramme Ajout de contenu graphique AR Résumé

Chapitre 8 : Décoration de chambre avec AR Le plan du projet

330 331 334 337 338 339 340 342 344 344 345 346 349 352 353 353 354 355 362 364 366 367 368 369 370 371 373 375 376 377 378 379 381 385 387 388 389

Expérience utilisateur Actifs graphiques Photos Cadres

Éléments de l'interface utilisateur Boutons d'icône Configuration du projet et de la scène Créer un nouveau projet Unity Développement pour HoloLens Création d'une image par défaut À propos du gestionnaire d'entrées du kit de réalité mixte Gaze Manager Gestionnaire d'entrée Événements d'entrée du kit de réalité mixte

Création d'une structure de barre d'outils Créer une barre d'outils Composant PictureController Composant PictureAction Câbler les actions Outil de déplacement, avec mappage spatial Ajouter le bouton Déplacer et le script Utiliser le mappage spatial pour le positionnement Comprendre les plans de surface Outil d'échelle avec Gesture Recognizer Ajout du bouton d'échelle et du script Mise à l'échelle de l'image Prise en charge Annuler l'interface utilisateur du menu de sélection abstraite Ajout du menu de cadre SetFrame dans PictureController L'objet FrameMenu et le composant Objets d'options de cadre Activation du menu de cadre Prise en charge de Cancel dans PictureController Ajout du menu Image SetImage dans PictureController L'objet ImageMenu et le composant Objets d'options d'image Activation du menu Image Ajustement pour Rapport d'aspect de l'image

389 390 390 390 391 391 392 392 393 394 396 396 397 398 399 399 400 401 402 403 403 405 409 410 411 414 416 418 420 421 422 423 425 426 427 427 428 430 432 433

Ajouter et supprimer des images encadrées Ajouter et supprimer dans la barre d'outils GameController Ajouter et supprimer des commandes dans PictureController Gérer les scènes vides Commentaires sur l'interface utilisateur Cliquez sur les commentaires audio Cliquez sur les commentaires sur l'animation Construire pour iOS avec ARKit Configurer le projet et la scène pour ARKit Utiliser des événements tactiles au lieu de gestes de la main PictureAction ClickableObjects ScaleTool MoveTool

Construire pour la RA mobile avec Vuforia Configurer le projet et la scène pour Vuforia Définir la cible de l'image Ajouter DefaultPicture à la scène GameController Utiliser des événements tactiles au lieu de gestes de la main Résumé

Chapitre 9 : Poke the Ball Game

434 434 435 437 437 438 438 439 441 442 443 443 444 445 446 449 450 451 451 452 453 456 457

Le plan de jeu Expérience utilisateur Composants du jeu Configuration du projet Création d'un projet initial Configuration de la scène et des dossiers Importation du package BallGameArt Configuration de la cible de l'image Graphiques du jeu de boxe Terrain de jeu de balle Ajustements de l'échelle Balles rebondissantes Effet sonore de rebond Lancer la balle Balle prête Tenir la balle

458 458 459 461 461 462 463 464 464 465 467 468 470 471 471 473

Lancer le ballon Détection des buts Collisionneur de but Composante Comportement de collision But ! Commentaires Cheers pour les buts Composant BallGame Garder le score Interface utilisateur principale actuelle Contrôleur de jeu Suivi du score élevé Augmenter les objets du monde réel À propos de Vuforia Smart Terrain Expérience utilisateur et états de l'application Canevas de l'espace d'écran Utilisation de Smart Terrain Gestion des événements de suivi État de l'application Gestionnaire d'état de l'application Câblage du gestionnaire d'état Lecture jeux alternatifs Mise en scène avec des jeux de balle Activer et désactiver des jeux Contrôler à quel jeu jouer Autres boîtes à outils Résumé

475 476 477 478 479 482 482 484 484 485 487 490 491 493 494 496 497 500 500 504 506 507 507 508 510 510 512

Préface La réalité augmentée est considérée comme la prochaine plate-forme informatique majeure. Ce livre vous montre comment créer des applications AR passionnantes avec Unity 3D et les principales boîtes à outils AR pour un éventail d'appareils mobiles et portables. Le livre s'ouvre sur une introduction à la réalité augmentée, y compris les marchés, les technologies et les outils de développement. Vous commencerez par configurer votre machine de développement pour le développement Android, iOS et/ou Windows, et apprendrez les bases de l'utilisation de Unity et de la plate-forme Vuforia AR ainsi que de l'ARToolKit open source, de la boîte à outils Microsoft Mixed Reality, de Google ARCore et d'Apple. ARKit ! Vous vous concentrerez ensuite sur la création d'applications AR, en explorant une variété de méthodes de ciblage de reconnaissance. Vous passerez par des projets complets illustrant des secteurs commerciaux clés, notamment le marketing, l'éducation, la formation industrielle et les jeux. Tout au long du livre, nous présentons les principaux concepts du développement AR, les meilleures pratiques en matière d'expérience utilisateur et les modèles de conception de logiciels importants que tout développeur de logiciel professionnel et aspirant devrait utiliser. Ce fut tout un défi de construire le livre d'une manière qui (espérons-le) conserve son utilité et sa pertinence pour les années à venir. Il y a un nombre toujours croissant de plates-formes, de boîtes à outils et d'appareils compatibles AR qui émergent chaque année. Il existe de solides boîtes à outils à usage général telles que Vuforia et l'ARToolkit open source, qui prennent en charge les appareils Android et iOS. Il existe la version bêta de Microsoft HoloLens et sa boîte à outils de réalité mixte pour Unity. Nous avions presque terminé d'écrire ce livre lorsqu'Apple a annoncé ses débuts sur le marché avec ARKit et Google ARCore, nous avons donc pris le temps d'intégrer ARKit et ARCore dans nos projets de chapitre également. À la fin de ce livre, vous acquerrez les connaissances nécessaires pour créer un contenu de qualité approprié pour une gamme d'appareils, de plates-formes et d'utilisations de RA.

Ce que couvre ce livre, le chapitre 1, Augmentez votre monde, vous présentera la réalité augmentée et son fonctionnement,

y compris une gamme de meilleures pratiques, d'appareils et d'applications pratiques.

Le chapitre 2, Configuration de votre système, vous guide tout au long de l'installation de Unity, Vuforia, ARToolkit,

et d'autres logiciels nécessaires pour développer des projets AR sur des machines de développement Windows ou Mac. Il comprend également un bref didacticiel sur l'utilisation de Unity.

Préface Le chapitre 3, Création de votre application, continue du chapitre 2, Configuration de votre système, pour garantir

que votre système est configuré pour créer et exécuter AR sur vos appareils cibles préférés, y compris Android, iOS et Windows Mixed Reality (HoloLens). Le chapitre 4, Cartes de visite augmentées, vous guide à travers la création d'une application qui

augmente votre carte de visite. En prenant comme exemple une entreprise de photographie de drones, nous donnons vie à sa carte de visite avec un drone volant en RA. Le chapitre 5, AR Solar System, montre l'application de la RA pour la science et l'éducation.

Nous construisons un modèle animé du système solaire en utilisant l'échelle, les orbites et les données de texture réelles de la NASA.

Chapitre 6, Comment changer un pneu crevé, plonge dans le développement de l'interface utilisateur (UI) Unity

et explore également le modèle de conception du logiciel, tout en créant un manuel d'instructions pratiques. Le résultat est une application mobile classique utilisant du texte, des images et des supports vidéo. C'est la partie 1 du projet. Le chapitre 7, enrichir le manuel d'instructions, reprend l'application mobile développée dans le

chapitre précédent et l'augmente en ajoutant des graphiques 3D AR comme nouveau type de média. Ce projet démontre comment la RA n'a pas besoin d'être la caractéristique centrale d'une application, mais simplement un autre type de média. Le chapitre 8, Décoration de pièce avec RA, montre l'application de la RA pour la conception,

l'architecture et la visualisation de la vente au détail. Dans ce projet, vous pouvez décorer vos murs avec des photos encadrées, avec une barre d'outils de l'espace mondial pour ajouter, supprimer, redimensionner, positionner et modifier les images et les cadres. Le chapitre 9, Poke the Ball Game, montre le développement d'un jeu de balle amusant que vous

pouvez jouer sur votre table basse ou votre bureau du monde réel en utilisant des balles virtuelles et un terrain de jeu. Vous tirez le ballon au but, visez la victoire et marquez le score.

Chaque projet peut être construit à l'aide d'une sélection de boîtes à outils AR et de périphériques matériels, y compris Vuforia ou l'ARToolkit open source pour Android ou iOS. Nous montrons également comment créer les mêmes projets pour cibler iOS avec Apple ARKit, Google ARCore et HoloLens avec le Microsoft Mixed Reality Toolkit.

Ce dont vous avez besoin pour ce livre Les exigences dépendent de ce que vous utilisez pour une machine de développement, de la boîte à outils AR préférée et du périphérique cible. Nous supposons que vous développez sur un PC Windows 10 ou sur un macOS. Vous aurez besoin d'un appareil pour exécuter vos applications AR, qu'il s'agisse d'un smartphone ou d'une tablette Android, d'un iPhone ou iPad iOS ou de Microsoft HoloLens.

Tous les logiciels requis pour ce livre sont décrits et expliqués au chapitre 2, Configuration de votre système, et au chapitre 3, Création de votre application, qui incluent des liens Web pour télécharger ce dont vous pourriez avoir besoin. Veuillez vous reporter au chapitre 3, Création de votre application, pour comprendre les combinaisons spécifiques de système d'exploitation de développement, de kit de développement d'outils AR et d'appareils cibles pris en charge.

À qui s'adresse ce livre Le public cible idéal pour ce livre est constitué de développeurs ayant une certaine expérience du développement mobile, qu'il s'agisse d'Android ou d'iOS. Une vaste expérience en développement Web serait également bénéfique.

Conventions Dans ce livre, vous trouverez un certain nombre de styles de texte qui distinguent différents types d'informations. Voici quelques exemples de ces styles et une explication de leur signification. Les mots de code dans le texte, les noms de table de base de données, les noms de dossier, les noms de fichiers, les extensions de fichiers, les noms de chemin, les URL factices, les entrées utilisateur et les descripteurs Twitter sont affichés comme suit : « Nous pouvons inclure d'autres contextes grâce à l'utilisation de la directive include ». Un bloc de code est défini comme suit : [défaut] exten => s,1,Dial(Zap/1|30) exten => s,2,Voicemail(u100) exten => s,102,Voicemail(b100) exten => i,1,Messagerie(s0)

Lorsque nous souhaitons attirer votre attention sur une partie particulière d'un bloc de code, les lignes ou éléments concernés sont mis en gras : [default] exten => s,1,Dial(Zap/1|30) exten => s,2 ,Voicemail(u100) exten => s,102,Voicemail(b100) exten => i,1,Voicemail(s0)

Toute entrée ou sortie de ligne de commande est écrite comme suit : # cp /usr/src/asterisk-addons/configs/cdr_mysql.conf.sample /etc/asterisk/cdr_mysql.conf

Les nouveaux termes et les mots importants sont indiqués en gras. Les mots que vous voyez à l'écran, par exemple, dans les menus ou les boîtes de dialogue, apparaissent dans le texte comme ceci : « Cliquer sur le bouton Suivant vous fait passer à l'écran suivant. » Des avertissements ou des notes importantes apparaissent dans un encadré comme celui-ci.

Les trucs et astuces apparaissent comme ceci.

Commentaires des lecteurs Les commentaires de nos lecteurs sont toujours les bienvenus. Dites-nous ce que vous pensez de ce livre, ce que vous avez aimé ou pas. Les commentaires des lecteurs sont importants pour nous car ils nous aident à développer des titres dont vous tirerez le meilleur parti. Pour nous envoyer des commentaires généraux, envoyez simplement un e-mail à [email protected] et mentionnez le titre du livre dans l'objet de votre message. S'il y a un sujet dans lequel vous avez une expertise et que vous souhaitez écrire ou contribuer à un livre, consultez notre guide de l'auteur sur www.packtpub.com/authors.

Support client Maintenant que vous êtes l'heureux propriétaire d'un livre Packt, nous avons un certain nombre de choses pour vous aider à tirer le meilleur parti de votre achat.

Téléchargement de l'exemple de code Les projets terminés sont disponibles sur GitHub dans un compte dédié à ce livre : https:/​/​github.​com/​arunitybook. Nous encourageons nos lecteurs à soumettre des améliorations, des problèmes et des demandes d'extraction via GitHub. Étant donné que les boîtes à outils et les plateformes de RA changent fréquemment, nous visons à maintenir les référentiels à jour avec l'aide de la communauté.

Vous pouvez télécharger les exemples de fichiers de code pour ce livre à partir de votre compte à l'adresse http:/​/​www. packtpub.​com. Si vous avez acheté ce livre ailleurs, vous pouvez visiter http:/​/​www.​packtpub. com/​support et inscrivez-vous pour que les fichiers vous soient directement envoyés par e-mail. Vous pouvez télécharger les fichiers de code en suivant ces étapes : 1. 2. 3. 4. 5. 6. 7.

Connectez-vous ou inscrivez-vous sur notre site Web en utilisant votre adresse e-mail et votre mot de passe. Passez le pointeur de la souris sur l'onglet SUPPORT en haut. Cliquez sur Téléchargements de code et errata. Saisissez le nom du livre dans la zone de recherche. Sélectionnez le livre pour lequel vous souhaitez télécharger les fichiers de code. Choisissez dans le menu déroulant où vous avez acheté ce livre. Cliquez sur Télécharger le code.

Une fois le fichier téléchargé, assurez-vous de décompresser ou d'extraire le dossier en utilisant la dernière version de : WinRAR / 7-Zip pour Windows Zipeg / iZip / UnRarX pour Mac 7-Zip / PeaZip pour Linux Le code bundle pour le livre est également hébergé sur GitHub à l'adresse https:/​/​github.​com/PacktPublishing/​Augmented-​Reality-​for-​Developers. Nous avons également d'autres ensembles de codes de notre riche catalogue de livres et de vidéos disponibles sur https:/​/​github.​com/PacktPublishing/​. Vérifie-les!

Téléchargement des images en couleur de ce livre Nous vous fournissons également un fichier PDF contenant des images en couleur des captures d'écran/des schémas utilisés dans ce livre. Les images en couleur vous aideront à mieux comprendre les changements dans la sortie. Vous pouvez télécharger ce fichier sur https:/​/​www.​packtpub.​com/​sites/​default/​files/ downloads/​AugmentedRealityforDevelopers_​ColorImages.​pdf.

Errata Bien que nous ayons pris toutes les précautions nécessaires pour garantir l'exactitude de notre contenu, des erreurs se produisent. Si vous trouvez une erreur dans l'un de nos livres, peut-être une erreur dans le texte ou le code, nous vous serions reconnaissants de nous la signaler. Ce faisant, vous pouvez éviter la frustration des autres lecteurs et nous aider à améliorer les versions ultérieures de ce livre. Si vous trouvez des errata, veuillez les signaler en visitant http:/​/​www.​packtpub.​com/​submit-​errata, en sélectionnant votre livre, en cliquant sur le lien Formulaire de soumission d'errata et en entrant les détails de votre errata . Une fois vos errata vérifiés, votre soumission sera acceptée et l'errata sera téléchargé sur notre site Web ou ajouté à toute liste d'errata existante dans la section Errata de ce titre. Pour consulter les errata soumis précédemment, accédez à https:/​/​www.​packtpub.​com/books/​content/​support et saisissez le nom du livre dans le champ de recherche. Les informations requises apparaîtront dans la section Errata.

Piratage Le piratage de matériel protégé par le droit d'auteur sur Internet est un problème constant dans tous les médias. Chez Packt, nous prenons très au sérieux la protection de nos droits d'auteur et de nos licences. Si vous rencontrez des copies illégales de nos œuvres sous quelque forme que ce soit sur Internet, veuillez nous fournir immédiatement l'adresse de l'emplacement ou le nom du site Web afin que nous puissions poursuivre un recours. Veuillez nous contacter à [email protected] avec un lien vers le matériel piraté suspecté. Nous apprécions votre aide dans la protection de nos auteurs et notre capacité à vous apporter un contenu de valeur.

Questions Si vous rencontrez un problème avec un aspect de ce livre, vous pouvez nous contacter à [email protected], et nous ferons de notre mieux pour résoudre le problème.

Augmentez votre monde Nous sommes à l'aube d'une toute nouvelle plate-forme informatique, précédée par les révolutions des ordinateurs personnels, d'Internet et des appareils mobiles. La réalité augmentée (RA) est l'avenir, aujourd'hui ! Contribuons à inventer cet avenir où votre monde quotidien est enrichi d'informations numériques, d'assistants, de communication et de divertissement. Au fur et à mesure qu'il apparaît, il existe un besoin croissant de développeurs et d'autres fabricants qualifiés pour concevoir et créer ces applications. Ce livre vise à vous renseigner sur les technologies AR sous-jacentes, les meilleures pratiques et les étapes de création d'applications AR, en utilisant certains des outils de développement 3D les plus puissants et les plus populaires disponibles, notamment Unity avec Vuforia, Apple ARKit, Google ARCore, Microsoft HoloLens et l'ARToolkit open source. Nous vous guiderons dans la création d'un contenu de qualité adapté à une variété d'appareils et de plates-formes AR et à leurs utilisations prévues. Dans ce premier chapitre, nous vous présentons la RA et expliquons comment elle fonctionne et comment elle peut être utilisée. Nous explorerons certains des concepts clés et des réalisations techniques qui définissent l'état de l'art aujourd'hui. Nous montrons ensuite des exemples d'applications de réalité augmentée efficaces et présentons les appareils, les plates-formes et les outils de développement qui seront traités tout au long de ce livre. Bienvenue dans le futur! Nous aborderons les sujets suivants dans ce chapitre : Réalité augmentée versus réalité virtuelle Comment fonctionne la RA Types de marqueurs Problèmes techniques avec la réalité augmentée Applications de la réalité augmentée L'objet de ce livre

Qu'est-ce que la réalité augmentée ? En termes simples, la RA est la combinaison de données numériques et d'entrées sensorielles humaines du monde réel en temps réel qui sont apparemment attachées (enregistrées) à l'espace physique. La RA est le plus souvent associée à l'augmentation visuelle, où l'infographie est combinée à l'imagerie du monde réel. À l'aide d'un appareil mobile, tel qu'un smartphone ou une tablette, la RA combine les graphiques avec la vidéo. Nous appelons cela la transparence vidéo portable. Ce qui suit est une image du jeu Pokémon Go qui a fait découvrir la réalité augmentée au grand public en 2016 :

La RA n'est pas vraiment nouvelle, elle a été explorée dans les laboratoires de recherche, l'armée et d'autres industries depuis les années 1990. Des boîtes à outils logicielles pour PC de bureau sont disponibles en tant que plates-formes open source et propriétaires depuis la fin des années 1990. La prolifération des smartphones et des tablettes a accéléré l'intérêt des industriels et des consommateurs pour la RA. Et certainement, les opportunités pour la RA portable n'ont pas encore atteint leur plein potentiel, Apple n'étant entré dans la mêlée que récemment avec la sortie d'ARKit pour iOS en juin 2017 et la sortie de Google du SDK ARCore pour Android en août 2017. Une grande partie de l'intérêt et de l'enthousiasme d'aujourd'hui pour la réalité augmentée se dirige vers la réalité augmentée des lunettes portables avec un suivi optique transparent. Ces appareils sophistiqués, tels que les casques Microsoft HoloLens et Meta de Metavision, et les appareils à révéler (à ce jour) de Magic Leap et d'autres utilisent des capteurs de profondeur pour numériser et modéliser votre environnement, puis enregistrer l'infographie dans le réel. -l'espace mondial. Ce qui suit est une représentation d'un appareil HoloLens utilisé dans une salle de classe :

Cependant, la RA n'a pas nécessairement besoin d'être visuelle. Prenons l'exemple d'une personne aveugle utilisant un retour auditif généré par ordinateur pour l'aider à surmonter les obstacles naturels. Même pour une personne voyante, un système comme celui qui augmente la perception de votre environnement réel avec une assistance auditive est très utile. Inversement, considérons une personne sourde utilisant un appareil de RA qui écoute et affiche visuellement les sons et les mots qui se passent autour d'elle. Considérez également les écrans tactiques comme une réalité augmentée pour le toucher. Un exemple simple est l'Apple Watch avec une application de cartographie qui vous tapera sur votre poignet avec des vibrations haptiques pour vous rappeler qu'il est temps de tourner à la prochaine intersection. La bionique en est un autre exemple. Il n'est pas difficile de considérer les progrès actuels des prothèses pour les amputés comme une RA pour le corps, augmentant la perception kinesthésique de la position et du mouvement du corps. Ensuite, il y a cette idée d'augmenter la cognition spatiale et l'orientation. En 2004, le chercheur Udo Wachter a construit et porté une ceinture à la taille, bordée de vibrateurs haptiques (buzzers) fixés tous les quelques centimètres. Le buzzer orienté vers le nord vibrait à tout moment, lui permettant de savoir constamment dans quelle direction il faisait face. Le sens de l'orientation d'Udo s'est considérablement amélioré en quelques semaines (https://www.wired.com/2007/04/esp/) :

La RA peut-elle s'appliquer à l'odorat ou au goût ? Je ne sais pas vraiment, mais les chercheurs ont également exploré ces possibilités. Qu'est-ce qui est réel ? Comment définissez-vous réel"? Si vous parlez de ce que vous pouvez ressentir, de ce que vous pouvez sentir et de ce que vous pouvez goûter et voir, alors le « réel » est simplement un signal électrique interprété par votre cerveau.

"Morpheus in The Matrix (1999)" OK, cela peut devenir étrange et très science-fiction. (Avez-vous lu Ready Player One et Snow Crash ?) Mais jouons un peu plus avant d'entrer dans le vif de ce livre spécifique. Selon le dictionnaire Merriam-Webster (https://www.merriam-webster.com), le mot augmenter est défini comme, rendre plus grand, plus nombreux, plus grand ou plus intense. Et la réalité est définie comme la qualité ou l'état d'être réel. Prenez un moment pour y réfléchir. Vous vous rendrez compte que la réalité augmentée, à la base, consiste à prendre ce qui est réel et à le rendre plus grand, plus intense et plus utile. En dehors de cette définition littérale, la réalité augmentée est une technologie et, plus important encore, un nouveau média dont le but est d'améliorer les expériences humaines, qu'il s'agisse de tâches dirigées, d'apprentissage, de communication ou de divertissement. Nous utilisons beaucoup le mot réel lorsque nous parlons de réalité augmentée : monde réel, temps réel, réalisme, vraiment cool ! En tant que chair et sang humains, nous expérimentons le monde réel à travers nos sens : yeux, oreilles, nez, langue et peau. Grâce au miracle de la vie et de la conscience, notre cerveau intègre ces différents types d'entrées, nous offrant des expériences de vie vivantes. En utilisant l'ingéniosité et l'invention humaines, nous avons construit des machines (ordinateurs) de plus en plus puissantes et intelligentes qui peuvent également ressentir le monde réel, même humblement. Ces ordinateurs traitent les données beaucoup plus rapidement et de manière plus fiable que nous. La RA est la technologie où nous permettons aux machines de nous présenter une représentation informatique du monde pour améliorer nos connaissances et notre compréhension. De cette façon, la RA utilise de nombreuses technologies d'intelligence artificielle (IA). L'un des croisements entre la RA et l'IA est dans le domaine de la vision par ordinateur. La vision par ordinateur est considérée comme faisant partie de l'IA car elle utilise des techniques de reconnaissance de formes et d'apprentissage par ordinateur. La RA utilise la vision par ordinateur pour reconnaître des cibles dans votre champ de vision, qu'il s'agisse de marqueurs codés spécifiques, de suivi de caractéristiques naturelles (NFT) ou d'autres techniques pour reconnaître des objets ou du texte. Une fois que votre application reconnaît une cible et établit son emplacement et son orientation dans le monde réel, elle peut générer des graphiques informatiques qui s'alignent sur ces transformations du monde réel, superposées aux images du monde réel.

Cependant, la réalité augmentée n'est pas seulement la combinaison de données informatiques avec les sens humains. Il y a plus que ça. Dans son rapport de recherche acclamé de 1997, A Survey of augmented reality (http://www.cs.unc.edu/

azuma/ARpresence.pdf), Ronald Azuma a proposé que l'AR réponde aux caractéristiques suivantes :

Combine réel et virtuel Interactif en temps réel Enregistré en 3D La RA est vécue en temps réel, non préenregistrée. Les effets spéciaux cinématographiques, par exemple, qui combinent action réelle et infographie ne comptent pas comme RA. De plus, l'affichage généré par ordinateur doit être enregistré dans le monde 3D réel. Les superpositions 2D ne comptent pas comme AR. Par cette définition, divers affichages tête haute, comme dans Iron Man ou même Google Glass, ne sont pas AR. Dans AR, l'application est consciente de son environnement 3D et les graphiques sont enregistrés dans cet espace. Du point de vue de l'utilisateur, les graphiques AR pourraient en fait être de vrais objets partageant physiquement l'espace qui les entoure. Tout au long de ce livre, nous mettrons l'accent sur ces trois caractéristiques de la RA. Plus loin dans ce chapitre, nous explorerons les technologies qui permettent cette combinaison fantastique d'interactions réelles et virtuelles, en temps réel et d'enregistrement en 3D. Aussi merveilleux que puisse paraître cet avenir en RA, avant de passer à autre chose, il serait négligent de ne pas souligner l'avenir dystopique alternatif possible de la réalité augmentée ! Si vous ne l'avez pas encore vu, nous vous recommandons fortement de regarder la vidéo Hyper-Reality réalisée par l'artiste Keiichi Matsuda (https://vimeo.com/166807261). Cette représentation d'un avenir potentiel incroyable, effrayant, mais très possible infecté par la RA, comme l'explique l'artiste, présente une nouvelle vision provocante et kaléidoscopique du futur, où les réalités physiques et virtuelles ont fusionné et où la ville est saturée de médias. Mais ne nous en inquiétons pas pour le moment. Une capture d'écran de la vidéo est la suivante :

Réalité augmentée versus réalité virtuelle La réalité virtuelle (VR) est une technologie sœur de la RA. Comme décrit, AR augmente votre expérience actuelle dans le monde réel en y ajoutant des données numériques. En revanche, la réalité virtuelle vous transporte comme par magie, mais de manière convaincante, dans un monde différent (généré par ordinateur). La VR se veut une expérience totalement immersive dans laquelle vous n'êtes plus dans l'environnement actuel. Le sens de la présence et de l'immersion sont essentiels au succès de la réalité virtuelle. AR ne porte pas ce fardeau de créer un monde entier. Pour la réalité augmentée, il suffit d'ajouter des graphiques générés par ordinateur à votre espace mondial existant. Bien que, comme nous le verrons, ce n'est pas non plus une réalisation facile et à certains égards, c'est beaucoup plus difficile que la réalité virtuelle. Ils ont beaucoup en commun, mais la réalité augmentée et la réalité virtuelle présentent des défis techniques, des opportunités de marché et des applications utiles contrastées.

Bien que les projections des marchés financiers changent de mois en mois, les analystes s'accordent toujours à dire que le marché combiné VR/AR sera énorme, jusqu'à 120 milliards de dollars d'ici 2021 (http://www.digi-capital.com/news/2017/01/ après-année mixte-mobile e-ar-to-drive-108-billion-vrar-market-by-2021) avec AR représentant plus de 75 pour cent de cela. Ce n'est en aucun cas une rebuffade de la réalité virtuelle, son marché continuera d'être très important et en croissance, mais il devrait être éclipsé par la réalité augmentée. La réalité virtuelle étant si immersive, ses applications sont intrinsèquement limitées. En tant qu'utilisateur, la décision de mettre un casque VR et d'entrer dans une expérience VR est, bien, un engagement.Sérieusement! Vous décidez de vous déplacer d'où vous êtes maintenant et à un endroit différent. AR, cependant, vous apporte des trucs virtuels. Vous restez physiquement où vous êtes et augmentez cette réalité. Il s'agit d'une transaction plus sûre, moins engageante et plus subtile. Il comporte une barrière inférieure pour l'adoption du marché et l'acceptation des utilisateurs.

Les casques VR bloquent visuellement le monde réel. C'est très intentionnel. Aucune lumière extérieure ne doit s'infiltrer dans la vue. En VR, tout ce que vous voyez est conçu et produit par le développeur de l'application pour créer l'expérience VR. La conception technologique et les implications de développement de cette exigence sont immenses. Un problème fondamental avec la VR est la latence du mouvement au photon. Lorsque vous bougez la tête, l'image VR doit se mettre à jour rapidement, dans les 11 millisecondes pour 90 images par seconde, ou vous risquez de ressentir le mal des transports. Il existe plusieurs théories expliquant pourquoi cela se produit (voir https://en.wikipedia.org/wiki/Virtual_reality_sickness). En RA, la latence est beaucoup moins un problème car la majeure partie du champ visuel est le monde réel, qu'il s'agisse d'une vidéo ou d'une transparence optique. Vous êtes moins susceptible de ressentir le vertige lorsque la plupart de ce que vous voyez est du monde réel. Généralement, il y a beaucoup moins de graphiques à rendre et moins de physique à calculer dans chaque image AR. La réalité virtuelle impose également d'énormes exigences aux processeurs CPU et GPU de votre appareil pour générer la vue 3D pour les yeux gauche et droit. La VR génère des graphiques pour l'ensemble de la scène, ainsi que la physique, les animations, l'audio et d'autres exigences de traitement. L'AR n'a pas besoin d'autant de puissance de rendu. D'un autre côté, AR a un fardeau supplémentaire non supporté par VR. AR doit enregistrer ses graphiques avec le monde réel. Cela peut être assez compliqué, en termes de calcul. Lorsqu'il est basé sur le traitement vidéo, l'AR doit engager la reconnaissance des formes de traitement d'image en temps réel pour trouver et suivre les marqueurs cibles. Des appareils plus complexes utilisent des capteurs de profondeur pour créer et suivre un modèle numérisé de votre espace physique en temps réel (localisation et cartographie simultanées, ou SLAM). Comme nous le verrons, il existe un certain nombre de façons dont les applications AR gèrent cette complexité, en utilisant des formes cibles simples ou une reconnaissance d'image intelligente et des algorithmes de correspondance avec des images naturelles prédéfinies. Si tel est le cas : du matériel de détection de profondeur personnalisé et des semi-conducteurs sont utilisés pour calculer un maillage 3D de l'environnement de l'utilisateur en temps réel, ainsi que des capteurs de géolocalisation. Ceci, à son tour, est utilisé pour enregistrer l'infographie de position et d'orientation superposée aux visuels du monde réel. Les casques VR incluent généralement des écouteurs qui, comme l'affichage visuel, bloquent de préférence les sons extérieurs dans le monde réel afin que vous puissiez être complètement immergé dans le virtuel en utilisant l'audio spatial. En revanche, les casques AR fournissent des écouteurs ouverts ou de petits haut-parleurs (au lieu d'écouteurs) qui permettent le mélange de sons du monde réel avec l'audio spatial provenant de la scène virtuelle.

En raison de ces différences inhérentes entre la réalité augmentée et la réalité virtuelle, les applications de ces technologies peuvent être très différentes. À notre avis, de nombreuses applications actuellement explorées pour la réalité virtuelle finiront par trouver leur place dans la réalité augmentée. Même dans les cas où il est ambigu que l'application puisse soit augmenter le monde réel ou transporter l'utilisateur vers un espace virtuel, l'avantage de la RA qui ne vous isole pas du monde réel sera la clé de l'acceptation de ces applications. Le jeu sera répandu avec AR et VR, bien que les jeux soient différents. La narration cinématographique et les expériences qui nécessitent une présence immersive continueront de prospérer en réalité virtuelle. Mais toutes les autres applications de simulations informatiques 3D peuvent trouver leur place sur le marché de la RA. Pour les développeurs, une différence clé entre la réalité virtuelle et la réalité augmentée, en particulier lorsque l'on considère les appareils portables montés sur la tête, est que la réalité virtuelle est actuellement disponible sous la forme d'appareils grand public, tels que Oculus Rift, HTC Vive, PlayStation VR et Google Daydream, avec des millions d'appareils. déjà entre les mains des consommateurs. Les appareils AR portables sont encore en version bêta et assez chers. Cela rend les opportunités commerciales VR plus réalistes et mesurables. En conséquence, la RA est largement limitée aux applications portables (sur téléphone ou tablette) pour les consommateurs, ou si vous vous plongez dans les vêtements, il s'agit d'un projet d'entreprise interne, d'un projet expérimental ou d'une R&D spéculative sur les produits.

Comment fonctionne la réalité augmentée Nous avons discuté de ce qu'est la réalité augmentée, mais comment fonctionne-t-elle ? Comme nous l'avons dit précédemment, la RA nécessite que nous combinions l'environnement réel avec un environnement virtuel généré par ordinateur. Les graphiques sont enregistrés dans le monde 3D réel. Et, cela doit être fait en temps réel. Il existe plusieurs façons d'y parvenir. Dans ce livre, nous n'en considérerons que deux. La première est la méthode la plus courante et la plus accessible : utiliser un appareil mobile de poche tel qu'un smartphone ou une tablette. Sa caméra capture l'environnement et les graphiques informatiques sont rendus sur l'écran de l'appareil. Une deuxième technique, utilisant des lunettes intelligentes AR portables, est en train d'émerger dans les appareils commerciaux, tels que Microsoft HoloLens et Meta 2 de Metavision.

AR mobile portable À l'aide d'un appareil mobile portable, tel qu'un smartphone ou une tablette, la réalité augmentée utilise la caméra de l'appareil pour capturer la vidéo du monde réel et la combiner avec des objets virtuels.

Comme illustré dans l'image suivante, exécutant une application AR sur un appareil mobile, il vous suffit de pointer sa caméra vers une cible dans le monde réel et l'application reconnaîtra la cible et rendra un graphique informatique 3D enregistré avec la position et l'orientation de la cible. Il s'agit de la réalité augmentée transparente vidéo mobile portable :

Nous utilisons les mots ordinateur de poche et mobile parce que nous utilisons un appareil mobile de poche. Nous utilisons la transparence vidéo parce que nous utilisons la caméra de l'appareil pour capturer la réalité, qui sera combinée à des images informatiques. L'image vidéo AR s'affiche sur l'écran plat de l'appareil. Les appareils mobiles présentent des fonctionnalités importantes pour la RA, notamment les suivantes : Sans attache et alimentés par batterie Affichage graphique à écran plat Entrée pour écran tactile Caméra arrière CPU (processeur principal), GPU (processeur graphique) et mémoire Capteurs de mouvement, à savoir l'accéléromètre pour détecter les mouvements linéaires et gyroscope pour le mouvement de rotation GPS et/ou autres capteurs de position pour la géolocalisation et la connexion de données sans fil et/ou Wi-Fi à Internet Parlons de chacun d'eux. Tout d'abord, les appareils mobiles le sont. mobile. Ouais, je sais que tu comprends. Pas de fils. Mais ce que cela signifie vraiment, c'est que, comme vous, les appareils mobiles sont libres de parcourir le monde réel. Ils ne sont pas attachés à un PC ou à une autre console. Ceci est naturel pour la RA car les expériences de RA se déroulent dans le monde réel, tout en se déplaçant dans le monde réel.

Les appareils mobiles sont dotés d'un écran graphique couleur à écran plat avec une excellente résolution et une densité de pixels suffisante pour les distances de visualisation à main levée. Et, bien sûr, la fonctionnalité qui a contribué à catapulter la révolution de l'iPhone est le capteur d'entrée multitouch sur l'écran qui est utilisé pour interagir avec les images affichées avec vos doigts. Une caméra orientée vers l'arrière est utilisée pour capturer une vidéo du monde réel et l'afficher en temps réel sur l'écran. Ces données vidéo sont numériques, votre application AR peut donc les modifier et combiner également des graphiques virtuels en temps réel. Il s'agit d'une image monoculaire, capturée à partir d'une seule caméra et donc d'un seul point de vue. Corrélativement, l'infographie utilise un seul point de vue pour rendre les objets virtuels qui vont avec. Les appareils mobiles d'aujourd'hui sont des ordinateurs assez puissants, y compris le CPU (processeur principal) et le GPU (processeur graphique), qui sont tous deux essentiels pour que l'AR reconnaisse les cibles dans la vidéo, le capteur de processus et l'entrée utilisateur, et restitue la vidéo combinée à l'écran . Nous continuons de voir ces exigences et incitons les fabricants de matériel à faire de plus en plus d'efforts pour offrir des performances plus élevées. Les capteurs intégrés qui mesurent le mouvement, l'orientation et d'autres conditions sont également essentiels au succès de la RA mobile. Un accéléromètre est utilisé pour détecter un mouvement linéaire le long de trois axes et un gyroscope pour détecter un mouvement de rotation autour des trois axes. En utilisant les données en temps réel des capteurs, le logiciel peut estimer la position et l'orientation de l'appareil dans un espace 3D réel à tout moment. Ces données sont utilisées pour déterminer la vue spécifique que la caméra de l'appareil capture et utilisent également cette transformation 3D pour enregistrer les graphiques générés par ordinateur dans l'espace 3D. De plus, le capteur GPS peut être utilisé pour des applications qui doivent cartographier où ils se trouvent sur le globe, par exemple, l'utilisation de la RA pour annoter une vue de rue ou une chaîne de montagnes ou trouver un Pokémon voyou. Enfin et surtout, les appareils mobiles sont activés avec une communication sans fil et/ou des connexions Wi-Fi à Internet. De nombreuses applications AR nécessitent une connexion Internet, en particulier lorsqu'une base de données de cibles de reconnaissance ou de métadonnées doit être accessible en ligne.

Lunettes optiques AR Contrairement aux mobiles portables, les dispositifs AR portés comme des lunettes ou des visières futuristes, tels que Microsoft HoloLens et Metavision Meta, peuvent être appelés dispositifs de réalité augmentée pour lunettes optiques transparentes, ou simplement lunettes intelligentes. Comme illustré dans l'image suivante, ils n'utilisent pas de vidéo pour capturer et rendre le monde réel. Au lieu de cela, vous regardez directement à travers la visière et l'infographie est fusionnée optiquement avec la scène :

Les technologies d'affichage utilisées pour mettre en œuvre la RA optique transparente varient d'un fournisseur à l'autre, mais les principes sont similaires. Le verre à travers lequel vous regardez lorsque vous portez l'appareil n'est pas un matériau de lentille de base qui pourrait être prescrit par votre optométriste. Il utilise un objectif de combinaison un peu comme un séparateur de faisceau, avec une surface inclinée qui redirige une image projetée provenant du côté vers votre œil. Un affichage optique transparent mélangera la lumière du monde réel avec les objets virtuels. Ainsi, les graphiques plus clairs sont plus visibles et des zones plus sombres efficaces peuvent être perdues. Les pixels noirs sont transparents. Pour des raisons similaires, ces appareils ne fonctionnent pas très bien dans des environnements très éclairés. Vous n'avez pas besoin d'une pièce très sombre, mais un éclairage tamisé est plus efficace. Nous pouvons appeler ces affichages binoculaires. Vous regardez à travers la visière avec les deux yeux. Comme les casques VR, deux vues distinctes seront générées, une pour chaque œil afin de tenir compte de la parallaxe et d'améliorer la perception de la 3D. Dans la vraie vie, chaque œil voit une vue légèrement différente de face, compensée par la distance interpupillaire entre vos yeux. L'infographie augmentée doit également être dessinée séparément pour chaque œil avec des points de vue décalés similaires. L'un de ces appareils est Microsoft HoloLens, une unité mobile autonome Metavision Meta 2 qui peut être connectée à un PC en utilisant ses ressources de traitement. Les casques AR portables sont emballés avec du matériel, mais ils doivent être dans un facteur de forme léger et ergonomique afin qu'ils puissent être portés confortablement lorsque vous vous déplacez. Les casques comprennent généralement les éléments suivants : Optique d'objectif, avec un champ de vision spécifique Caméra orientée vers l'avant Capteurs de profondeur pour le suivi de position et la reconnaissance de la main

Accéléromètre et gyroscope pour la détection de mouvement linéaire et rotatif et haut-parleurs audio près de l'oreille Microphone De plus, en tant qu'appareil autonome, vous pouvez dire que HoloLens est comme porter un ordinateur portable autour de votre tête - espérons-le, pas pour le poids mais la capacité de traitement ! Il fonctionne sous Windows 10 et doit gérer lui-même tous les traitements spatiaux et graphiques. Pour aider, Microsoft a développé une puce personnalisée appelée unité de traitement holographique (HPU) pour compléter le CPU et le GPU. Au lieu d'écouteurs, les casques AR portables incluent souvent des haut-parleurs proches de l'oreille qui ne bloquent pas les sons environnementaux. Bien que la RA portable puisse également émettre de l'audio, elle proviendrait du haut-parleur du téléphone ou des écouteurs que vous avez peut-être insérés dans vos oreilles. Dans les deux cas, l'audio ne serait pas enregistré avec les graphiques. Avec l'augmentation visuelle portable de près, il est prudent de supposer que vos oreilles sont proches de vos yeux. Cela permet l'utilisation de l'audio spatial pour des expériences AR plus convaincantes et immersives.

AR basé sur une cible L'image suivante illustre un AR basé sur une cible plus traditionnel. La caméra de l'appareil capture une image vidéo. Le logiciel analyse le cadre à la recherche d'une cible familière, telle qu'un marqueur préprogrammé, en utilisant une technique appelée photogrammétrie. Dans le cadre de la détection d'une cible, sa déformation (par exemple, sa taille et son inclinaison) est analysée pour déterminer sa distance, sa position et son orientation par rapport à la caméra dans un espace tridimensionnel. À partir de là, la pose de la caméra (position et orientation) dans l'espace 3D est déterminée. Ces valeurs sont ensuite utilisées dans les calculs d'infographie pour rendre des objets virtuels. Enfin, les graphiques rendus sont fusionnés avec l'image vidéo et affichés à l'utilisateur :

Les téléphones iOS et Android ont généralement un taux de rafraîchissement de 60 Hz. Cela signifie que l'image sur votre écran est mise à jour 60 fois par seconde, soit 1,67 milliseconde par image. Beaucoup de travail est consacré à cette mise à jour rapide. En outre, beaucoup d'efforts ont été investis dans l'optimisation du logiciel pour minimiser les calculs gaspillés, éliminer la redondance et d'autres astuces qui améliorent les performances sans affecter négativement l'expérience utilisateur. Par exemple, une fois qu'une cible a été reconnue, le logiciel essaiera simplement de suivre et de suivre comme il semble se déplacer d'une image à l'autre plutôt que de reconnaitre la cible à partir de zéro à chaque fois. Pour interagir avec des objets virtuels sur votre écran mobile, le traitement d'entrée requis ressemble beaucoup à n'importe quelle application ou jeu mobile. Comme illustré dans l'image suivante, l'application détecte un événement tactile sur l'écran. Ensuite, il détermine quel objet vous avez l'intention de toucher en projetant mathématiquement un rayon de la position XY de l'écran dans l'espace 3D, en utilisant la pose actuelle de la caméra. Si le rayon croise un objet détectable, l'application peut répondre au toucher (par exemple, déplacer ou modifier la géométrie). La prochaine fois que le cadre sera mis à jour, ces changements seront affichés à l'écran :

Une caractéristique distinctive de la réalité augmentée mobile portable est que vous en faites l'expérience d'un point de vue à bout de bras. Tenant l'appareil devant vous, vous regardez à travers son écran comme un portail vers le monde réel augmenté. Le champ de vision est défini par la taille de l'écran de l'appareil et la distance à laquelle vous le tenez à votre visage. Et ce n'est pas entièrement une expérience mains libres car à moins que vous n'utilisiez un trépied ou quelque chose pour tenir l'appareil, vous utilisez une ou deux mains pour tenir l'appareil à tout moment.

Les selfies populaires de réalité augmentée de Snapchat vont encore plus loin. À l'aide de la caméra frontale du téléphone, l'application analyse votre visage à l'aide d'algorithmes de correspondance de modèles d'IA complexes pour identifier les points importants, ou nœuds, qui correspondent aux caractéristiques de votre visage - yeux, nez, lèvres, menton, etc. Il construit ensuite un maillage 3D, comme un masque de votre visage. En utilisant cela, il peut appliquer des graphiques alternatifs qui correspondent aux traits de votre visage et même transformer et déformer votre visage réel pour le jeu et le divertissement. Voir cette vidéo pour une explication détaillée des ingénieurs Vox de Snapchat : https://www.youtube.com/watch?v=Pc2aJxnmzh0. La possibilité de faire tout cela en temps réel est une affaire remarquablement amusante et sérieuse :

Peut-être qu'au moment où vous lirez ce livre, il y aura des appareils mobiles avec des capteurs de profondeur intégrés, y compris les technologies Google Project Tango et Intel RealSense, capables de scanner l'environnement et de créer un maillage de carte spatiale 3D qui pourrait être utilisé pour plus suivi et interactions avancés. Nous expliquerons ces capacités dans le prochain sujet et les explorerons dans ce livre dans le contexte des casques AR portables, mais elles peuvent également s'appliquer aux nouveaux appareils mobiles.

Cartographie spatiale 3D La RA mobile portable décrite dans la rubrique précédente concerne principalement l'augmentation de la vidéo 2D en ce qui concerne l'emplacement de la caméra du téléphone dans l'espace 3D. Les appareils AR optiques portables sont entièrement consacrés aux données 3D. Oui, comme l'AR mobile, les appareils AR portables peuvent effectuer un suivi basé sur la cible à l'aide de sa caméra intégrée. Mais attendez, il y a plus, beaucoup plus ! Ces appareils incluent des capteurs de profondeur qui scannent votre environnement et construisent une carte spatiale (maillage 3D) de votre environnement. Avec cela, vous pouvez enregistrer des objets sur des surfaces spécifiques sans avoir besoin de marqueurs spéciaux ou d'une base de données d'images cibles pour le suivi. Un capteur de profondeur mesure la distance entre les surfaces solides et vous, à l'aide d'une caméra infrarouge (IR) et d'un projecteur. Il projette des points IR dans l'environnement (non visibles à l'œil nu) selon un motif qui est ensuite lu par sa caméra IR et analysé par le logiciel (et/ou le matériel). Sur les objets plus proches, l'étalement du motif de points est différent de celui des autres, la profondeur est calculée en utilisant ce déplacement. L'analyse n'est pas effectuée sur un seul instantané, mais sur plusieurs images au fil du temps pour fournir plus de précision, de sorte que le modèle spatial peut être continuellement affiné et mis à jour. Une caméra à lumière visible peut également être utilisée en conjonction avec les données du capteur de profondeur pour améliorer encore la carte spatiale. À l'aide de techniques de photogrammétrie, les éléments visibles de la scène sont identifiés comme un ensemble de points (nœuds) et suivis sur plusieurs images vidéo. La position 3D de chaque nœud est calculée par triangulation. De cela, nous obtenons une bonne représentation en maillage 3D de l'espace, y compris la capacité de discerner des objets séparés qui peuvent obstruer (être devant) d'autres objets. D'autres capteurs localisent la tête réelle de l'utilisateur dans le monde réel, fournissant à l'utilisateur sa propre position et sa propre vue de la scène. Cette technique est appelée SLAM. Développé à l'origine pour les applications robotiques, l'article fondateur de 2002 sur ce sujet par Andrew Davison, Université d'Oxford, peut être consulté à l'adresse https://www.doc.ic.ac.uk/

Une chose intéressante à propos des implémentations actuelles de SLAP est la façon dont les données sont continuellement mises à jour en réponse aux lectures de capteurs en temps réel dans votre appareil. "Au fur et à mesure que HoloLens recueille de nouvelles données sur l'environnement et que des changements se produisent dans l'environnement, des surfaces spatiales apparaîtront, disparaîtront et changeront." (https://developer.microsoft.com/en-us/windows/holographic/spatial_mapp ing) L'illustration suivante montre ce qui se passe pendant chaque trame de mise à jour. L'appareil utilise les lectures actuelles de ses capteurs pour maintenir la carte spatiale et calculer la pose de la caméra virtuelle. Cette transformation de caméra est ensuite utilisée pour restituer des vues des objets virtuels enregistrés dans le maillage. La scène est rendue deux fois, pour les vues de l'œil gauche et droit. L'infographie est affichée sur le verre de la visière montée sur la tête et sera visible par l'utilisateur comme s'il s'y trouvait réellement : des objets virtuels partageant l'espace avec des objets physiques du monde réel :

Cela dit, la cartographie spatiale ne se limite pas aux appareils équipés de caméras de détection de profondeur. En utilisant des techniques intelligentes de photogrammétrie, beaucoup de choses peuvent être accomplies dans le seul logiciel. L'ARKit Apple iOS, par exemple, utilise uniquement la caméra vidéo de l'appareil mobile, traitant chaque image avec ses divers capteurs de position et de mouvement pour fusionner les données en une représentation en nuage de points 3D de l'environnement. Google ARCore fonctionne de la même manière. Le SDK Vuforia dispose d'un outil similaire, quoique plus limité, appelé Smart Terrain.

Développer la RA avec la cartographie spatiale La cartographie spatiale est la représentation de toutes les informations que l'application a de ses capteurs sur le monde réel.Il est utilisé pour rendre les objets du monde virtuel AR. Plus précisément, la cartographie spatiale est utilisée pour effectuer les opérations suivantes : Aider les objets virtuels ou les personnages à naviguer dans la pièce Faire en sorte que les objets virtuels bloquent un objet réel ou soient occlus par un objet réel pour interagir avec quelque chose, comme rebondir sur le sol Placer un objet virtuel sur un objet réel Montrez à l'utilisateur une visualisation de la pièce dans laquelle il se trouve Dans le développement de jeux vidéo, le travail d'un concepteur de niveau consiste à créer la scène du monde fantastique, y compris les terrains, les bâtiments, les passages, les obstacles, etc. La plate-forme de développement de jeux Unity dispose d'excellents outils pour restreindre la navigation des objets et des personnages dans les contraintes physiques du niveau. Les développeurs de jeux, par exemple, ajoutent une géométrie simplifiée, ou navmesh, dérivée d'une conception de niveau détaillée, elle est utilisée pour contraindre le mouvement des personnages au sein d'une scène. À bien des égards, la carte spatiale AR agit comme un maillage de navigation pour vos objets AR virtuels. Une carte spatiale, bien qu'elle ne soit qu'un maillage, est en 3D et représente les surfaces d'objets solides, pas seulement les murs et les sols, mais aussi les meubles. Lorsque votre objet virtuel se déplace derrière un objet réel, la carte peut être utilisée pour masquer des objets virtuels avec des objets du monde réel lorsqu'elle est affichée à l'écran. Normalement, l'occlusion n'est pas possible sans une carte spatiale. Lorsqu'une carte spatiale a des propriétés de collision, elle peut être utilisée pour interagir avec des objets virtuels, les laissant heurter ou rebondir sur des surfaces du monde réel. Enfin, une carte spatiale pourrait être utilisée pour transformer directement des objets physiques. Par exemple, puisque nous savons où sont les murs, nous pouvons les peindre d'une couleur différente en AR. Cela peut devenir assez compliqué. Une carte spatiale n'est qu'un maillage triangulaire. Comment votre code d'application peut-il déterminer des objets physiques à partir de cela ? C'est un problème difficile mais pas insoluble. En fait, la boîte à outils HoloLens, par exemple, comprend un module spatialUnderstanding qui analyse la carte spatiale et effectue une identification de niveau supérieur, telle que l'identification du sol, du plafond et des murs, à l'aide de techniques telles que le lancer de rayons, les requêtes topologiques et les requêtes de forme.

La cartographie spatiale peut englober un grand nombre de données qui pourraient surcharger les ressources de traitement de votre appareil et offrir une expérience utilisateur décevante. HoloLens, par exemple, atténue cela en vous permettant de subdiviser votre espace physique en ce qu'ils appellent des observateurs de surface spatiale, qui à leur tour contiennent un ensemble de surfaces spatiales. Un observateur est un volume englobant qui définit une région de l'espace avec des données cartographiques comme une ou plusieurs surfaces. Une surface est un maillage triangulaire 3D dans un espace 3D réel. L'organisation et le partitionnement de l'espace réduisent l'ensemble de données à suivre, analyser et restituer pour une interaction donnée. Pour plus d'informations sur la cartographie spatiale avec HoloLens et Unity, consultez https:/​/​developer.​microsoft.​com/​en-​us/​windows/​mixed-​reality/ spatial_​mapping et https:/​ /​developer.​microsoft.​com/​en-​us/​windows/​mixed-​reality/ spatial_​mapping_​in_​unity.

Entrée pour AR portable Les dispositifs de lunettes AR ordinairement n'utilisent pas de contrôleur de jeu ou de clicker, ni de contrôleurs manuels à suivi de position. Au lieu de cela, vous utilisez vos mains. La reconnaissance des gestes de la main est un autre problème d'IA difficile pour la vision par ordinateur et le traitement d'images. En conjonction avec le suivi, où l'utilisateur regarde (regard), des gestes sont utilisés pour déclencher des événements tels que sélectionner, saisir et déplacer. En supposant que l'appareil ne prend pas en charge le suivi oculaire (déplacer vos yeux sans bouger votre tête), le réticule du regard est normalement au centre de votre regard. Vous devez déplacer votre tête pour pointer vers l'objet d'intérêt avec lequel vous souhaitez interagir :

Des interactions plus avancées pourraient être activées avec un véritable suivi de la main, où le regard de l'utilisateur n'est pas nécessairement utilisé pour identifier l'objet à interagir. Cependant, vous pouvez tendre la main et toucher les objets virtuels et utiliser vos doigts pour pousser, saisir ou déplacer des éléments dans le scène. L'entrée de commande vocale est de plus en plus utilisée en conjonction avec un véritable suivi de la main, au lieu des gestes de la main.

Autres techniques d'affichage AR En plus de la transparence vidéo portable et de la transparence optique portable, il existe également d'autres techniques d'affichage AR. Un casque monoculaire montre une seule image dans un œil, permettant à l'autre œil de voir le monde réel sans augmentation. Il a tendance à être léger et utilisé davantage comme affichage tête haute (HUD), comme si les informations étaient projetées sur le devant d'un casque plutôt que enregistrées dans le monde 3D. Un exemple de ceci est Google Glass. Bien que la technologie puisse être utile dans certaines applications, nous ne l'envisageons pas dans ce livre. La transparence vidéo portable utilise un visiocasque (HMD) avec une caméra et combine une vidéo du monde réel avec des graphiques virtuels sur son affichage proche de l'œil. Cela peut être possible sur les casques VR tels que HTC Vive et Samsung GearVR, avec le passthrough de caméra activé, mais cela pose quelques problèmes. Premièrement, ces appareils VR n'ont pas de capteurs de profondeur pour scanner l'environnement, empêchant l'enregistrement des graphiques avec le monde 3D réel. La caméra de ces appareils est monoscopique, mais l'affichage VR est stéréoscopique. Les deux yeux voient la même image, ou ce qu'on appelle bi-oculaire. Cela entraînera des problèmes de rendu correct des graphiques et d'enregistrement dans le monde réel. Un autre problème est que l'appareil photo de l'appareil est décalé d'un pouce ou plus par rapport à vos yeux réels. Le point de vue de la caméra n'est pas le même que vos yeux, les graphiques devraient être enregistrés en conséquence. Pour ces raisons, la RA transparente vidéo portable peut actuellement sembler assez étrange, être inconfortable et généralement ne pas très bien fonctionner. Mais si vous possédez l'un de ces appareils, n'hésitez pas à essayer les projets de ce livre dessus et voyez comment cela fonctionne. En outre, nous pouvons nous attendre à ce que de nouveaux appareils arrivent bientôt sur le marché qui se positionneront comme combinés VR + AR et, espérons-le, résoudront ces problèmes, peut-être avec deux caméras stéréo, une correction optique ou d'autres solutions.

Types de cibles AR Comme nous l'avons vu et discuté, l'essence de la RA est que votre appareil reconnaît les objets dans le monde réel et restitue les graphiques informatiques enregistrés dans le même espace 3D, donnant l'illusion que les objets virtuels sont dans le même espace avec vous. Depuis que la réalité augmentée a été inventée pour la première fois il y a des décennies, les types de cibles que le logiciel peut reconnaître sont passés de très simples marqueurs pour les images et le suivi des caractéristiques naturelles à des maillages de cartes spatiales complètes. Il existe de nombreuses boîtes à outils de développement AR disponibles, certaines d'entre elles sont plus capables que d'autres de prendre en charge une gamme de cibles. Ce qui suit est une enquête sur divers types de cibles. Nous entrerons plus en détail dans les chapitres suivants, car nous utilisons différentes cibles dans différents projets.

Marqueur La cible la plus basique est un simple marqueur avec une large bordure. L'avantage des cibles de marqueur est qu'elles sont facilement reconnues par le logiciel avec très peu de frais de traitement et minimisent le risque que l'application ne fonctionne pas, par exemple, en raison d'un éclairage ambiant incohérent ou d'autres conditions environnementales. Voici le marqueur Hiro utilisé dans les exemples de projets dans ARToolkit :

Marqueurs codés En faisant passer les marqueurs simples au niveau supérieur, les zones à l'intérieur de la bordure peuvent être réservées pour les modèles de codes-barres 2D. De cette façon, une seule famille de marqueurs peut être réutilisée pour faire apparaître de nombreux objets virtuels différents en modifiant le motif codé. Par exemple, un livre pour enfants peut avoir une fenêtre contextuelle AR sur chaque page, utilisant la même forme de marqueur, mais le code-barres indique à l'application de n'afficher que les objets pertinents pour cette page du livre.

Ce qui suit est un ensemble de marqueurs codés très simples d'ARToolkit :

Vuforia comprend un puissant système de marqueurs appelé VuMark qui facilite la création de marqueurs de marque, comme illustré dans l'image suivante. Comme vous pouvez le constater, bien que les styles de marqueurs varient à des fins de marketing spécifiques, ils partagent des caractéristiques communes, notamment une zone réservée dans une bordure extérieure pour le code 2D :

Images La capacité de reconnaître et de suivre des images arbitraires est un formidable atout pour les applications de RA, car elle évite de créer et de distribuer des marqueurs personnalisés associés à des applications spécifiques. Le suivi d'image entre dans la catégorie du suivi des caractéristiques naturelles (NFT). Certaines caractéristiques font une bonne image cible, notamment une bordure bien définie (de préférence huit pour cent de la largeur de l'image), des motifs asymétriques irréguliers et un bon contraste. Lorsqu'une image est incorporée dans votre application AR, elle est d'abord analysée et une carte des caractéristiques (maillage de nœuds 2D) est stockée et utilisée pour faire correspondre les captures d'images du monde réel, par exemple, dans les images vidéo de votre téléphone.

Cibles multiples Il convient de noter que les applications peuvent être configurées pour afficher non pas un seul marqueur, mais plusieurs marqueurs. Avec les cibles multiples, vous pouvez faire apparaître des objets virtuels pour chaque marqueur de la scène simultanément. De même, les marqueurs peuvent être imprimés et pliés ou collés sur des objets géométriques, tels que des étiquettes de produits ou des jouets. Voici un exemple de cible de boîte de céréales :

Reconnaissance de texte Si un marqueur peut inclure un code-barres 2D, pourquoi ne pas simplement lire du texte ? Certains SDK AR vous permettent de configurer votre application (train) pour lire du texte dans des polices spécifiées. Vuforia va plus loin avec une bibliothèque de listes de mots et la possibilité d'ajouter vos propres mots.

Formes simples Votre application AR peut être configurée pour reconnaître des formes de base telles qu'un cuboïde ou un cylindre avec des dimensions relatives spécifiques. Ce n'est pas seulement la forme mais ses mesures qui peuvent distinguer une cible d'une autre : Rubik's Cube versus une boîte à chaussures, par exemple. Un cuboïde peut avoir une largeur, une hauteur et une longueur. Un cylindre peut avoir une longueur et des diamètres supérieur et inférieur différents (par exemple, un cône). Dans l'implémentation des formes de base par Vuforia, les motifs de texture sur l'objet façonné ne sont pas pris en compte, tout ce qui a une forme similaire correspondra. Mais lorsque vous pointez votre application vers un objet du monde réel avec cette forme, elle devrait avoir une surface texturée suffisante pour une bonne détection des bords, un cube blanc solide ne serait pas facilement reconnu.

Reconnaissance d'objets La capacité de reconnaître et de suivre des objets 3D complexes est similaire mais va au-delà de la reconnaissance d'images 2D. Bien que les images planes conviennent aux surfaces planes, aux livres ou aux emballages de produits simples, vous aurez peut-être besoin de la reconnaissance d'objets pour les jouets ou les produits de consommation sans leur emballage. Vuforia, par exemple, propose Vuforia Object Scanner pour créer des fichiers de données d'objets qui peuvent être utilisés dans votre application pour des cibles. Ce qui suit est un exemple d'une petite voiture analysée par Vuforia Object Scanner :

Cartes spatiales Auparavant, nous avons introduit des cartes spatiales et une localisation spatiale dynamique via SLAM. Les SDK qui prennent en charge les cartes spatiales peuvent implémenter leurs propres solutions et/ou exposer l'accès à la propre prise en charge d'un appareil. Par exemple, le package HoloLens SDK Unity prend bien sûr en charge ses cartes spatiales natives. Les cartes spatiales de Vuforia (appelées Smart Terrain) n'utilisent pas la détection de profondeur comme HoloLens, elles utilisent plutôt une caméra à lumière visible pour construire le maillage de l'environnement à l'aide de la photogrammétrie. Apple ARKit et Google ARCore cartographient également votre environnement à l'aide de la vidéo de la caméra fusionnée avec d'autres données de capteur.

Géolocalisation Un peu aberrante, mais qui mérite d'être mentionnée, les applications AR peuvent également utiliser uniquement le capteur GPS de l'appareil pour identifier son emplacement dans l'environnement et utiliser ces informations pour annoter ce qui est en vue. J'utilise le mot annoter parce que le suivi GPS n'est pas aussi précis qu'aucune des techniques que nous avons mentionnées, donc cela ne fonctionnerait pas pour les vues rapprochées d'objets. Mais cela peut très bien fonctionner, par exemple, se tenir au sommet d'une montagne et tenir son téléphone pour voir les noms d'autres sommets dans la vue ou marcher dans une rue pour rechercher Yelp ! critiques de restaurants à portée. Vous pouvez même l'utiliser pour localiser et capturer des Pokémon. En guise d'introduction au développement pour la réalité augmentée, ce livre se concentre sur toutes sortes de suivi de cibles. De cette façon, chacun de nos projets peut être construit à l'aide d'appareils AR portables ou de lunettes. Lorsque l'expérience utilisateur d'un projet peut être améliorée sur un appareil ou une technique plus avancé, nous essaierons d'inclure des suggestions et des instructions pour le soutenir également.

Problèmes techniques liés à la réalité augmentée Dans cette section, nous réalisons un bref aperçu de certains des problèmes délicats avec lesquels les chercheurs en RA ont été confrontés dans le passé et le présent et avec lesquels ils sont susceptibles de se débattre à l'avenir.

Champ de vision Dans une salle de cinéma, sur un écran d'ordinateur, dans un appareil mobile de poche ou dans un casque AR, l'angle d'un bord de la zone de vision à l'opposé est communément appelé angle de vision ou champ de vision ( champ de vision). Par exemple, un écran de cinéma typique mesure environ 54 degrés et un écran de cinéma IMAX mesure 70 degrés. L'œil humain a un champ de vision binoculaire combiné d'environ 160 degrés (monoculaire) ou 200 degrés. Le casque HTC Vive VR a environ 100 degrés. Notez que parfois le FOV est signalé comme séparé horizontalement et verticalement, d'autres fois, c'est une mesure diagonale (meilleur son). Bien que cela ne soit pas couramment discuté de cette façon, lorsque vous tenez un appareil mobile devant vous, il a un champ de vision qui est mesuré par la taille de l'écran et la distance à laquelle vous le tenez. Ainsi, la longueur d'un bras, à environ 18 pouces, n'est que de 10 degrés environ. C'est pourquoi vous voyez souvent des gens préférer une tablette grand écran pour la RA mobile plutôt qu'un téléphone. En ce qui concerne les wearables, les attentes sont plus grandes. Le champ de vision Microsoft HoloLens n'est que d'environ 35 degrés, ce qui équivaut à tenir votre smartphone à environ 6 à 8 pouces devant votre visage ou à utiliser un écran d'ordinateur de 15 pouces sur votre bureau. Heureusement, malgré la limitation, les utilisateurs signalent que vous vous y habituez et apprenez à bouger la tête au lieu de vos yeux pour découvrir et suivre les objets d'intérêt en RA. Metavision Meta 2 fait mieux, son FOV est de 90 degrés (diagonale).

L'image suivante illustre l'effet du champ de vision lorsque vous portez un appareil HoloLens (image d'Adam Dachis/NextReality) :

Perception visuelle L'image rendue doit satisfaire les attentes de nos perceptions visuelles dans la mesure où le but de la RA est d'afficher des objets virtuels afin qu'ils puissent sembler de façon réaliste résider dans notre environnement physique. Si l'AR n'est qu'une superposition ou une annotation du monde réel, cela peut ne pas être aussi important. Lors du rendu d'objets pour une vue 3D, les vues des yeux gauche et droit sont légèrement décalées, en fonction de votre distance interpupillaire (distance entre les yeux), appelée parallaxe. Ce n'est pas un problème et est géré dans tous les appareils VR et AR portable, mais cela vaut toujours la peine d'être mentionné. Les objets AR virtuels coexistant dans le monde réel qui se trouvent devant des objets réels doivent masquer les objets derrière eux. C'est facile, il suffit de dessiner l'objet dessus. L'inverse n'est pas aussi simple. Lorsque l'objet virtuel se trouve derrière un objet du monde réel, disons que votre animal de compagnie virtuel court sous une table ou derrière un canapé, il doit être partiellement ou complètement caché. Cela nécessite une carte spatiale de l'environnement dont le maillage est utilisé pour occulter l'infographie lors du rendu de la scène. Un problème encore plus difficile se pose avec le rendu photoréaliste d'objets virtuels. Idéalement, vous voudriez que l'éclairage de l'objet corresponde à l'éclairage de la pièce elle-même. Supposons que dans le monde réel, la seule lumière soit une lampe dans le coin de la pièce, mais que votre objet AR soit éclairé du côté opposé. Ce serait manifestement incohérent et artificiel. Apple ARKit et Google ARCore résolvent ce problème en capturant la couleur, l'intensité et la direction de la lumière ambiante, puis en ajustant l'éclairage de la scène virtuelle en conséquence, offrant même la possibilité de calculer les ombres de vos objets virtuels. Cela fournit un rendu plus réaliste de vos objets dans le monde réel.

Focus Les photographes connaissent la profondeur de champ depuis le début de la photographie. Lorsqu'un objectif est mis au point sur un objet, les choses plus au premier plan ou plus éloignées peuvent être floues, cette plage est appelée profondeur de champ. L'iris de votre œil est également une lentille, et il s'ajuste pour se concentrer sur les objets proches par rapport aux objets éloignés, appelés hébergement. Nous pouvons réellement sentir notre iris changer de foyer, et ce signal oculomoteur d'étirement et de relaxation contribue également à notre perception de la profondeur. Cependant, en utilisant des affichages proches de l'œil (en VR comme en AR), tous les objets rendus sont nets, quelle que soit leur distance perçue via la parallaxe. De plus, l'angle entre vos yeux change lorsque vous vous concentrez sur quelque chose de près par rapport à quelque chose de plus éloigné, appelé vergence. Ainsi, nous obtenons des signaux mitigés, focalisation (accommodation) sur une distance et vergence sur une autre. Il en résulte ce qu'on appelle un conflit d'accommodation-vergence. Cette disparité peut devenir fatigante, au mieux, et inhibe l'illusion de réalisme. C'est un problème avec les appareils AR et VR portables. Des solutions potentielles peuvent émerger en utilisant le suivi oculaire pour ajuster l'image rendue en fonction de votre vergence. Il y a aussi la promesse d'une technologie de champ lumineux avancée qui fusionne plus précisément les graphiques générés par ordinateur avec les motifs lumineux du monde réel (voir Magic Leap sur https://www.magicleap.com).

Résolution et taux de rafraîchissement Aucune discussion sur les écrans AR ne serait complète sans mentionner les pixels, ces minuscules points colorés qui composent l'image sur l'écran d'affichage. Le plus, le mieux. Il est mesuré en termes de résolution. Ce qui est peut-être plus important, c'est la densité de pixels, les pixels par pouce, ainsi que la profondeur de couleur. Les écrans à densité plus élevée produisent une image plus nette. Une plus grande profondeur de couleur, telle que les écrans HDR (plage dynamique élevée), fournit plus de bits par pixel afin qu'il puisse y avoir une plage de luminosité plus naturelle et linéaire. On parle aussi de latence mouvement-photon. C'est le temps qu'il faut à l'appareil AR pour détecter les changements d'emplacement et d'orientation et les afficher à l'écran. Une latence retardée n'est pas seulement irréaliste et semble bâclée, elle peut entraîner le mal des transports, en particulier dans les écrans portables. Selon l'appareil, l'écran peut se rafraîchir par cycles de 60 images par seconde ou plus. Toutes les lectures de capteurs, l'analyse, la géométrie et le rendu graphique doivent être effectués avec ce petit laps de temps, sinon l'utilisateur subira une latence.

Ergonomie Enfin, l'apparence et le confort des appareils sont essentiels à leur acceptation par le marché et à leur utilité dans des situations pratiques. Les appareils portables continuent de devenir plus minces et plus légers. C'est génial, à condition qu'ils continuent d'être importants pour la RA. La plupart d'entre nous s'accordent à dire que tout cela finira par se transformer en lunettes portables. À moins que vous ne soyez dans un environnement de casque de sécurité industriel, nous attendons tous avec impatience le jour où les lunettes AR deviendront aussi légères et confortables qu'une paire de lunettes de soleil. Ensuite, on souhaitera des lentilles de contact AR (alors, des implants rétiniens ?). En 2009, Rolf Hainich a décrit l'affichage ultime dans son livre The End of Hardware: Augmented Reality and Beyond comme suit : un affichage proche de l'œil non intrusif, confortable, haute résolution, large, avec une plage dynamique élevée et un suivi parfait.

Applications de la réalité augmentée Pourquoi la réalité augmentée ? Dans le monde d'aujourd'hui, nous sommes inondés de grandes quantités d'informations via des médias 24h/24 et 7j/7, une connectivité Internet et des appareils mobiles. Le problème n'est pas de savoir si nous avons suffisamment d'informations, mais que nous en avons trop.Le défi est de savoir comment filtrer, traiter et utiliser des informations précieuses et ignorer les informations redondantes, non pertinentes et incorrectes. Ceci est expliqué par Schmalsteig et Hollerer dans leur livre, Augmented Reality, Principles, and Practice (Addison Wesley, 2016) : « La réalité augmentée tient la promesse de créer des liens directs, automatiques et exploitables entre le monde physique et l'information électronique. une interface utilisateur simple et immédiate vers un monde physique amélioré électroniquement. L'immense potentiel de la réalité augmentée en tant que métaphore d'interface utilisateur qui change de paradigme devient évident lorsque nous passons en revue les quelques jalons les plus récents de l'interaction homme-machine : l'émergence du World Wide Web , le Web social et la révolution des appareils mobiles." - Réalité augmentée, principes et pratiques, Schmalstieg & Mollerer Quels types d'applications peuvent en bénéficier ? Eh bien, à peu près toutes les entreprises humaines qui utilisent actuellement des informations numériques de toute nature. Voici quelques exemples que nous illustrerons davantage en tant que projets réels tout au long de ce livre.

Les marqueurs AR de marketing commercial imprimés sur l'emballage du produit avec une application associée pourraient fournir des détails supplémentaires sur le produit, des témoignages ou des supports marketing pour augmenter le produit. Les cartes de visite AR sont un moyen de montrer à quel point vous êtes cool. Voir le chapitre 4, Cartes de visite augmentées, pour plus de détails. Tout comme vous pouvez voir des codes QR dans la publicité aujourd'hui pour vous diriger vers un site Web, les marqueurs AR dans la publicité pourraient être une chose dans un proche avenir.

Éducation Pendant des années, la RA a été utilisée dans les livres pour enfants pour donner vie aux histoires. Les élèves plus âgés qui étudient des matières plus sérieuses peuvent trouver plus d'augmentation de leurs manuels scolaires et ressources médiatiques, apportant un contenu plus immersif et interactif au programme. Dans le chapitre 5, AR Solar System, nous construirons un exemple de projet éducatif, une simulation de notre système solaire.

Il a été démontré que les applications de dépannage basées sur la RA améliorent la formation technique et réduisent les erreurs. Combien de rames de manuels de formation papier ont déjà été numérisées ? Mais sérieusement, simplement les convertir en PDF ou en pages Web n'est qu'un peu mieux. Les vidéos pédagogiques vont un peu plus loin. Avec la RA, nous pouvons bénéficier de graphismes 3D plus interactifs, d'un coaching personnel et de didacticiels pratiques. Au chapitre 7, enrichir le manuel d'instructions, nous illustrerons les techniques de création d'une formation industrielle en RA, en vous montrant comment changer un pneu sur votre voiture.

Commerce de détail Avez-vous vu la vidéo d'une femme debout devant un miroir intelligent essayant des vêtements, interagissant avec le système à l'aide de gestes de la main ? Par exemple, consultez Oak Labs à l'adresse http://www.oaklabs.is/. La boutique de meubles en ligne Wayfair utilise la RA pour vous aider à visualiser les nouveaux meubles dans votre maison avant d'acheter (https://www.wayfair.com). Au chapitre 8, Décoration de chambre avec AR, nous allons créer une petite application qui vous permettra de décorer votre chambre avec des photos encadrées.

Gaming Pouvez-vous dire Pokémon ? Bien sûr, il y a plus que cela dans le jeu AR, mais donnons du crédit là où c'est dû. Ninantic a fait entrer la RA dans la culture populaire avec elle. Nous ne décrirons pas toutes les possibilités du jeu basé sur la réalité augmentée. Mais, au chapitre 9, Poke The Ball Game, nous allons construire un petit jeu de balle AR.

Autres En ingénierie et dans d'autres disciplines de conception, les artistes 3D et les ingénieurs CAO construisent encore des choses en 3D sur un écran 2D avec une souris. Quand est-ce que ça va changer ? Il est temps de mettre la main dans le monde virtuel et de faire bouger les choses. La musique, le cinéma, la narration, le journalisme, etc. bénéficieront tous de l'adoption populaire de la réalité augmentée. Les possibilités sont aussi infinies que l'imagination humaine.

L'objectif de ce livre Ce livre est destiné aux développeurs qui souhaitent apprendre et acquérir une réelle expérience pratique en créant des applications AR. Nous ne supposons pas que vous ayez une connaissance du moteur de jeu Unity, du langage C#, des graphismes 3D ou d'une expérience antérieure avec le développement VR ou AR, bien que toute expérience antérieure, de novice à expert chevronné, soit utile. Nous nous concentrerons sur la réalité augmentée visuelle. Nous inclurons de l'audio, ce qui peut être très important pour compléter une expérience de réalité augmentée, mais pas les autres sens. Les appareils mobiles sont des plates-formes naturelles pour la RA, à la fois pour les téléphones mobiles et les tablettes, ainsi que pour Android et iOS. Nous appelons cela l'AR portable avec suivi vidéo transparent. Tous les projets du livre peuvent être créés et exécutés sur des appareils mobiles, y compris les téléphones et tablettes iPhone, iPad et Android. Une grande partie de l'intérêt et de l'enthousiasme d'aujourd'hui pour la RA est la RA de lunettes portable avec un suivi optique transparent, comme Microsoft HoloLens. La plupart des projets de ce livre peuvent également être construits et exécutés sur des appareils AR pour lunettes. Les cas où des changements sont nécessaires dans l'interface utilisateur et l'interactivité, par exemple, seront signalés.

Il y a un risque à essayer de couvrir un si large éventail d'appareils cibles et de plates-formes dans un seul livre. Nous ferons de notre mieux pour séparer toutes les dépendances spécifiques à l'appareil dans nos instructions de didacticiel étape par étape et vous permettre de suivre facilement les instructions relatives à votre configuration et d'ignorer celles qui ne vous concernent pas. Nous avons inclus des sujets concernant la configuration de votre machine de développement Windows ou Mac pour créer des applications AR (désolé, Linux non inclus) et le téléchargement de l'application sur votre appareil. Pour le développement d'applications, nous utilisons la plate-forme de développement de jeux Unity 3D (https://unity3d.com/), qui fournit un moteur graphique puissant et un éditeur complet que vous pouvez piloter à l'aide de la programmation en langage C#. Il existe de nombreuses sources qui examinent et discutent des vertus et des avantages de l'utilisation de Unity. Il suffit de dire que Unity inclut une prise en charge native du rendu photoréaliste d'infographies, d'animations humanoïdes et d'objets, de physique et de collision, d'interface utilisateur et de systèmes d'événements d'entrée, etc. Avec Unity, vous pouvez créer un projet, puis le construire pour un certain nombre de plates-formes cibles prises en charge, notamment Windows, Android, iOS, ainsi que de nombreuses autres consoles et appareils mobiles populaires. Pour notre boîte à outils AR, nous vous apprendrons à utiliser le populaire et professionnel Vuforia AR SDK (https://www.vuforia.com/). Le développement de la réalité augmentée nécessite des algorithmes logiciels sophistiqués et une gestion des appareils, dont une grande partie est gérée de manière assez élégante par Vuforia. Il a été publié pour la première fois en 2008 par Daniel Wagner dans un article intitulé Suivi des marqueurs robuste et discret sur les téléphones mobiles, puis il est devenu le Vuforia primé de Qualcomm et a ensuite été acquis par PTC en 2015. Aujourd'hui, Vuforia prend en charge un large éventail de appareils, des téléphones portables aux lunettes portables, telles que HoloLens. Comme nous le verrons tout au long de ce livre, le SDK prend en charge de nombreux types de cibles de suivi, notamment des marqueurs, des images, des objets et des surfaces, il peut donc être utilisé pour de nombreuses applications diverses. Ils fournissent également des outils et une infrastructure basée sur le cloud pour gérer vos actifs AR. Vuforia nécessite que vous ayez une clé de licence dans chacune de vos applications. Au moment d'écrire ces lignes, les licences sont gratuites pour les 1 000 premiers téléchargements de votre application, bien qu'elle affiche un filigrane dans le coin de l'écran. Les licences payantes commencent à 499 $ par application. Une alternative à Vuforia est le SDK gratuit et open source ARToolkit (http://artoolkit.org/). ARToolkit était peut-être le premier SDK AR open source et certainement celui qui a duré le plus longtemps, il a été démontré pour la première fois en 1999 et publié en open source en 2001. ARToolkit appartient maintenant à DAQRI (https://daqri.com/), un leader fabricant d'appareils et de plates-formes de réalité augmentée industrielle.

Au moment d'écrire ces lignes, la version actuelle d'ARToolkit 5 se concentre sur le ciblage par marqueurs et images, et elle est plus limitée que Vuforia. (ARToolkit version 6 est en version bêta et promet de nouvelles fonctionnalités intéressantes et une architecture interne, mais ce n'est pas couvert dans ce livre.) Il ne prend pas en charge une gamme d'appareils aussi large que Vuforia prêt à l'emploi. Cependant, comme il s'agit d'un logiciel open source et d'une communauté importante, il existe des plugins disponibles pour à peu près n'importe quel appareil (à condition que vous soyez prêt à le bricoler). Le package Unity pour ARToolkit ne prend pas nécessairement en charge toutes les fonctionnalités du SDK natif. L'ARKit d'Apple pour iOS (https://developer.apple.com/arkit/) est également en version bêta et nécessite iOS 11 (également en version bêta à ce jour). ARKit fonctionne sur n'importe quel iPhone et iPad utilisant un processeur Apple A9 ou A10. Unity fournit un package d'actifs qui simplifie l'utilisation d'ARKit et fournit des exemples de scènes (https://bitbucket.org/Unity-Technologies/unity-arkit-plugin). Nous sommes heureux de fournir une introduction à Google ARCore (https:/​/​developers. google.​com/​ar/​) dans ce livre, mais seulement une introduction. ARCore est tout nouveau et au moment d'écrire ces lignes, il n'est encore qu'en avant-première. La documentation et la scène de démonstration qu'ils fournissent sont très simples. La configuration sera probablement différente lorsque Unity prendra en charge ARCore dans la version finale. Des choses telles que l'installation d'un aperçu des services AR APK vont changer. La liste des appareils Android pris en charge est très courte. Veuillez vous référer au référentiel GitHub de ce livre pour les nouvelles notes d'implémentation et le code utilisant Google ARCore pour Android : https:/​/​github.​com/​ARUnityBook/​. Les principes sont très similaires à ceux d'ARKit, mais le SDK Unity et ses composants sont différents. Microsoft HoloLens est un appareil Windows 10 MR (réalité mixte). Voir https://www.microsoft.com/en-us/hololens/developers pour plus d'informations. À l'aide de son compagnon, les composants MixedRealityTooklit (anciennement HoloToolkit) (https:/​/​github.com/​Microsoft/​MixedRealityToolkit) facilitent le développement à l'aide de ce fascinant appareil AR. La technologie AR avance rapidement. Nous voulons vraiment que vous appreniez les concepts et les principes derrière la RA et ses meilleures pratiques, en dehors du SDK et des appareils spécifiques.

Le tableau suivant trie les différentes combinaisons de plates-formes, d'appareils et d'outils qui seront traités dans ce livre : Appareil cible


Voir la vidéo: Comment observer le ciel à lœil nu? (Janvier 2022).