Développement d’application de réalité augmentée et de captation de mouvements
Quand nous concevons une application en réalité augmentée avec de la reconnaissance et de la captation de mouvement, le choix de l’application de développement se porte vers des logiciels, compatibles avec l’outil de reconnaissance de mouvement et d’image matériel choisi, capables de traiter les différentes sources et apportant un soin particulier aux animations et à la richesse visuelle de l’interface.
Nous choisissons donc, la plupart du temps, de concentrer notre développement sur l’outil Unity. Langage action script 3 et Adobe Air. Nous concentrons notre développement sur des langages de programmation orientés objet (Java, C++ et ActionScript 3) et des workflows adaptés (Adobe After Effect, Adobe Flash, Unity 3D, Cinema 4D, 3DS Max, Adobe Photoshop et Adobe Illustrator).
Unity 3D permet la création d’un environnement 3D en temps réel et contient un moteur physique utilisé pour la conception de contenus multimédias et interactifs. Il permet de développer à la fois pour les ordinateurs, les consoles de jeu, les appareils mobiles, et les navigateurs web. Unity 3D prend également en charge plusieurs langages de programmation tels que le C++, C#, les Script Unity (similaires à JavaScript), et Boo. Il présente une partie graphique et une partie programmation. Le développement tourne autour d’assets (ressources utilisables, comme un objet 3D, une scène ou un script) qui s’utilisent les uns avec les autres. Le contenu multimédia se décompose en scènes. Ces dernières peuvent être agrémentées d’objets 3D, de lumières,… Nous pouvons y ajouter des scripts pour effectuer des actions sur n’importe quel composant de la scène. C’est ce principe qui nous permettra de créer des scènes vivantes et interactives, calculées en temps réel. L’ensemble du code de développement est commenté afin de permettre la compréhension par une personne tierce sur le code réalisé.
Unity fournit de puissants outils pour créer des expériences riches et attrayantes en réalité augmentée, qui interagissent intelligemment avec le monde réel. MARS Unity amène les données d’environnement et de capteurs (que ce soit des capteurs ajoutés, ou natifs des appareils d’exploitation) dans le flux de production créative des applications de RA, adaptées à une grande variété d’emplacement et de données. Il s’agit d’une interface permettant de gérer des données complexes, de tester les expériences sans quitter l’éditeur Unity, et de diffuser les applications efficacement vers les plateformes choisies (iOS, Android, Windows,…). Unity Mars est basé AR Foundation, un framework évolutif conçu pour le développement en réalité augmentée, qui permet de concevoir des expériences immersives une seule fois, puis de les déployer sur divers appareils mobiles et de RA portables.