Développer des applis innovantes avec Unity - II. Réalité augmentée

Développer des applis innovantes avec Unity - II. Réalité augmentée

-

Livres

Description

La réalité augmentée n'a jamais été aussi populaire que depuis la sortie du jeu Pokémon GO. Son principe de base est assez simple et des outils comme Unity et Vuforia permettent de la mettre rapidement en place dans toutes sortes d'applications.
Ce livre vous explique de manière très concrète comment la réalité augmentée fonctionne et vous fournit tous les éléments pour que vous puissiez concevoir vos propres projets. L'auteur, enthousiaste et passionné, vous montre également comment en tirer parti pour enrichir avantageusement vos jeux et vos applications commerciales.
Il part du principe que vous connaissez les manipulations de base de Unity et que vous avez déjà écrit quelques scripts en C#.

Sommaire
Premiers pas avec la réalité augmentée
1. Appréhender la réalité augmentée
2. Le SDK de Vuforia
3. Configuration de Unity et du plug-in
4. Analyse des scènes d'exemple
5. Création de votre première scène
Réalisation d'un jeu en réalité augmentée
6. Définition et mise en place du projet
7. Contenus visuels
8. Mise en place du projet sous Unity
9. Création du script Carte
10. Effets spéciaux des combats
11. Boutons virtuels
12. Système d’attaque spéciale
13. Scores et sauvegardes
Réalisation d'une application en réalité augmentée
14. Projet d'une application d'achat
15. Personnalisation du produit
16. Interface utilisateur
17. Photographier, partager, acheter
18. Projet d'une appli de test d'objets (sans marqueurs)
19. Positionnement du meuble
20. Instanciation de plusieurs objets et utilisation du gyroscope
21. Personnalisation du produit et finalisation de l'appli


Sujets

Informations

Publié par
Date de parution 24 avril 2017
Nombre de visites sur la page 19
EAN13 9782822705721
Licence : Tous droits réservés
Langue Français

Informations légales : prix de location à la page  €. Cette information est donnée uniquement à titre indicatif conformément à la législation en vigueur.

Signaler un problème
Réalité augmentée

Développer des applis innovantes avec Unity

Réalité augmentée

par

Anthony Cardinale

Développer des applis innovantes avec Unity - Réalité augmentée

par Anthony Cardinale

ISBN (EPUB) : 978-2-8227-0571-4

Tous droits réservés

Conformément au Code de la propriété intellectuelle, seules les copies ou reproductions strictement réservées à l'usage privé du copiste et non destinées à une utilisation collective ainsi que les analyses et les courtes citations dans un but d'exemple et d'illustration sont autorisées. Tout autre représentation ou reproduction, qu'elle soit intégrale ou partielle, requiert expressément le consentement de l'éditeur (art L 122-4, L 122-5 2 et 3a).

Publié par les Éditions D-BookeR, Parc des Rives créatives de l'Escaut, Nouvelle Forge, 80 avenue Roland Moreno, 59410 Anzin

www.d-booker.fr

contact@d-booker.fr

ISBN (HTML) : 978-2-8227-0520-2

ISBN (imprimé) : 978-2-8227-0563-9

Les exemples (téléchargeables ou non), sauf indication contraire, sont propriété des auteurs.

Mise en page : générée sous Calenco avec des XSLT développées par la société NeoDoc (www.neodoc.biz)

Image de couverture : © peshkov - Fotolia

Date de publication : 24/04/2017

Édition : 1

Version : 1.0

À propos de l'auteur

Anthony Cardinale

Développeur de jeux certifié, Anthony utilise Unity depuis 2008. À cette date, le logiciel commence tout juste à se faire connaître en France, et il compte parmi les premiers à l'adopter. Auteur de plus d'une trentaine de jeux publiés sur Google Play, l'App Store ou Windows Phone Store, il s'est peu à peu spécialisé dans les applications à destination des mobiles et tablettes, après avoir également développé pour le web et les PC.

En parallèle, Anthony maintient différents sites d'e-learning. Il a réalisé à ce jour plus de 200 heures de formation vidéo sur la création de jeux avec Unity, diffusées via son site internet Formation facile ou encore Unity3d-dev.com.

Il est actuellement responsable Innovation & réalité virtuelle chez Sogeti High Tech, où il développe des applications à destination des casques de réalité virtuelle et des dispositifs haptiques comme les gants de réalité virtuelle.

Préface

par Jacques Mezhrahid

Directeur Technique Industrial System & Software, Sogeti High Tech

Réalité Virtuelle, Réalité Augmentée, Internet des Objets, Transformation Digitale …. Les technologies arrivent à maturité de plus en plus rapidement et se diffusent dans le grand public et dans les entreprises à une vitesse jamais atteinte précédemment.

Elles amènent leur lot d’opportunités à la condition de se les approprier dans toutes leurs dimensions. Il est également fondamental d’identifier les cas d’usage qui permettront de tirer toute la valeur ajoutée de tels outils lors de leur mise en œuvre.

Ce livre fournit les clés pour l’apprentissage de la technique intrinsèque de la réalité virtuelle et de la réalité augmentée. Il aborde également toute la dimension projet et met en lumière les spécificités de tels développements.

Ce qui est remarquable dans ce challenge, c’est d’être en mesure de présenter et de mixer les savoir-faire indispensables pour créer un environnement (une ou des scènes), penser des scénarii et les programmer pour reproduire des situations proches ou identiques à des conditions réelles.

Dans l’industrie du logiciel, il est clair que la maîtrise de ces techniques issues de l’univers du jeu va constituer un réel différenciateur pour les programmeurs et toutes les personnes intéressées par cette nouvelle manière de penser la formation, l’assistance et le support aux opérations, la prévention des risques….

C’est ce qu’Anthony présente dans cet excellent ouvrage pédagogique. Je vous en souhaite une excellente lecture.

Marseille, le 26/03/2017

Introduction

La réalité augmentée (souvent abrégée en AR pour Augmented Reality) est une technologie qui existe depuis de nombreuses années mais qui n’est devenu populaire et accessible au grand public que depuis peu. Cette technologie a tout particulièrement fait parler d’elle suite au succès du jeu Pokémon GO. D’autres grands acteurs ont lancé (ou tenté de lancer) des projets : par exemple Google avec ses Google Glasses, projet resté à l’état de concept. Ces lunettes auraient permis d’ajouter des informations virtuelles dans le monde réel comme un itinéraire vers votre destination, vos SMS ou des informations sur les personnes que vous croisez dans la rue :

Figure .1 : Exemple de projet : Les Google Glasses

Exemple de projet : Les Google Glasses

La réalité augmentée consiste à superposer des informations virtuelles au monde réel. Par exemple, si vous regardiez un monument au travers de lunettes de réalité augmentée, vous pourriez avoir des informations complémentaires qui s’afficheraient devant vous comme la date de construction, la superficie ou la hauteur du monument.

Dans le jeu vidéo, la réalité augmentée offre la possibilité de jouer avec un personnage virtuel dans le monde réel. Ainsi la caméra Eye toy, lancée en 2003 par Sony sur Playstation 2, permettait de jouer à certains jeux en réalité augmentée. Par exemple Lemmings, dans lequel vous deviez utiliser votre corps pour créer un chemin :

Figure .2 : Exemple de jeu : Lemmings sur PS2

Exemple de jeu : Lemmings sur PS2

L’exemple le plus récent est, comme cité précédemment, celui de Nintendo qui propose de capturer des Pokémons dans le monde réel via son application Pokémon GO développée par Niantic :

Figure .3 : Le succès mondial de Pokémon GO

Le succès mondial de Pokémon GO

La réalité augmentée n'est pas seulement répandue dans le jeu vidéo, elle est aussi utilisée dans le monde professionnel : dans la mode pour l'essayage de vêtements ou d'accessoires, dans le milieu industriel pour assister des opérateurs en leur indiquant via des lunettes de réalité augmentée les manipulations à réaliser (dans l'automobile par exemple ou l'aéronautique). Cela permet de réduire les risques, les coûts et d'augmenter la fiabilité.

Elle permet aussi la création de catalogues de produits originaux telle que l’application mobile d'IKEA qui offre la possibilité à l'utilisateur de tester virtuellement, dans l'environnement auquel il le destine, l'objet mobilier qui l'intéresse.

Figure .4 : Application commerciale d'IKEA

Application commerciale d'IKEA

Bref, les exemples sont nombreux et cette technologie est enfin lancée pour de bon. Dans quelques temps, elle sera partout autour de vous et fera partie intégrante de votre quotidien. Vous pourrez essayer virtuellement des lunettes ou des habits en boutique, vous pourrez vous former avec l'aide d'un opérateur à distance qui vous montrera virtuellement les manipulations à effectuer, vous pourrez jouer à de nombreux jeux faisant appel à la réalité augmentée…

J’ai décidé d’écrire cet ouvrage pour partager mes connaissances avec vous, d’une part car j’aime cette technologie mais aussi car j’y crois et que je sais que la réalité augmentée fera partie très bientôt de notre quotidien et que nous aurons besoin de beaucoup de développeurs qui débordent d’imagination afin de créer des applications innovantes avec cette technologie.

1. Objectif de ce livre et prérequis

Dans ce livre, vous apprendrez à mettre en place la réalité augmentée dans vos jeux ou applications avec le logiciel Unity 3D et le plugin Vuforia.

Vuforia est un plug-in très puissant et très populaire, proposant de nombreuses fonctionnalités, ce qui en fait le meilleur choix possible. La documentation est complète, les ressources sont nombreuses et la communauté est grande ; cela vous permettra de trouver de l’aide sur les blogs ou forums sans trop de difficultés en cas de besoin.

Quant à Unity, c’est un moteur de jeu extrêmement puissant que vous connaissez déjà et qui a déjà fait ses preuves. Le fait d’utiliser Unity nous permettra de faire des choses encore plus complexes et plus rapidement que si nous avions dû les développer à la main sans outils.

Nous partons du principe que vous connaissez les manipulations de base de Unity et que vous avez déjà écrit quelques scripts en C#. Si ce n'est pas le cas, nous vous recommandons vivement la lecture préalable de la série de livres Créez des jeux de A à Z avec Unity.

2. Qu’allez-vous apprendre dans ce livre ?

Partie I : Premiers pas avec la réalité augmentée

Afin de commencer sur de bonnes bases, nous allons passer en revue, dans la première partie de ce livre, les différents outils que nous utiliserons ainsi que leur fonctionnement. Nous réaliserons de nombreux tests pour bien comprendre comment fonctionne Vuforia.

Chapitre 1Appréhender la réalité augmentée

Dans ce chapitre, nous verrons comment fonctionne la réalité augmentée et comment elle peut être utilisée dans des applications de tous les jours.

Chapitre 2 – Le SDK de Vuforia

Nous téléchargerons le kit de développement de Vuforia et nous examinerons ce qu'il contient et permet de faire.

Chapitre 3 – Configuration de Unity et du plug⁠-⁠in

Dans ce chapitre, nous importerons des scènes d'exemple dans Unity pour les compiler et les tester. Nous verrons comment configurer le plug-in Vuforia pour qu'il fonctionne.

Chapitre 4 – Analyse des scènes d'exemple

Maintenant que nous savons configurer et lancer une scène réalisée à l'aide de Vuforia, nous allons en profiter pour explorer d'autres scènes d'exemple fournies par Vuforia.

Chapitre 5 – Création de votre première scène

Dans ce chapitre, nous développerons un premier exemple de A à Z afin de bien comprendre les différentes étapes à réaliser.

Partie II : Réalisation d'un jeu en réalité augmentée

Dans la deuxième partie de ce livre, nous appliquerons la réalité augmentée au domaine du jeu. Nous montrerons comment cette technologie peut enrichir et renouveler le concept classique de cartes à collectionner.

Chapitre 6 – Définition et mise en place du projet

Dans ce chapitre, nous poserons les grandes lignes de notre projet. Nous définirons son périmètre et listerons les éléments que nous développerons.

Chapitre 7 – Contenus visuels

Ici, nous nous pencherons sur les éléments visuels (2D et 3D) dont nous aurons besoin pour notre jeu.

Chapitre 8 – Mise en place du projet sous Unity

Nous ajouterons ensuite l'ensemble des éléments nécessaires au développement du projet Unity. Nous mettrons en place Vuforia pour pouvoir nous lancer dans la programmation des différentes fonctionnalités.

Chapitre 9 – Création du script Carte

Dans ce chapitre, nous développerons le script le plus important de notre jeu.

Chapitre 10 – Effets spéciaux des combats

Nous verrons comment ajouter des effets spéciaux afin de rendre notre jeu beau, dynamique, innovant et vivant.

Chapitre 11 – Boutons virtuels

Afin de mettre en place une interface utilisateur adaptée à la réalité augmentée, nous verrons comment créer des boutons virtuels et comment les lier à des actions spécifiques.

Chapitre 12 – Système d’attaque spéciale

Pour créer un gameplay plus attractif et varié, nous introduirons un système d'attaques spéciales. Le joueur pourra lancer, si sa jauge de puissance est pleine, des attaques spéciales beaucoup plus puissantes.

Chapitre 13 – Scores et sauvegardes

Afin de rendre l'aventure évolutive et pour conserver la progression du joueur, nous verrons comment mettre en place un système de points (qui pourront être utilisés par exemple dans une boutique) et un système de sauvegarde dans des fichiers XML pour conserver la progression du joueur de façon plus avancée par rapport aux simples PlayerPrefs.

Partie III : Réalisation d'une application en réalité augmentée

Dans la troisième partie, nous verrons comment développer des applications professionnelles en réalité augmentée pour créer de la valeur ajoutée.

Chapitre 14 – Projet d'une application d'achat

Comme précédemment, nous commencerons par définir le projet dans lequel nous allons nous lancer et préciser les différents éléments à développer.

Chapitre 15 – Personnalisation du produit

Dans ce chapitre, nous verrons comment créer des outils de personnalisation pour que l'utilisateur puisse choisir les caractéristiques de son produit et les visualiser en temps réel.

Chapitre 16 – Interface utilisateur

Pour que notre application soit intuitive, nous mettrons en place une interface utilisateur ergonomique adaptée à tous les écrans.

Chapitre 17 – Photographier, partager, acheter

Une fois que l'utilisateur a personnalisé son produit, nous verrons comment lui donner la possibilité de prendre une photo, de la partager et d'acheter son produit en ligne tout en gardant ses éléments de personnalisation.

Chapitre 18 – Projet d'une appli de test d'objets (sans marqueurs)

Dans ce chapitre, nous verrons comment faire de la réalité augmentée sans marqueurs.

Chapitre 19 – Positionnement du meuble

Nous verrons comment donner la possibilité à l'utilisateur de positionner des modèles 3D simplement en utilisant l'écran tactile. Il pourra ainsi avec notre exemple placer des meubles 3D chez lui.

Chapitre 20 – Instanciation de plusieurs objets et utilisation du gyroscope

Une fois que notre système sera fonctionnel, nous ajouterons la possibilité de positionner plusieurs meubles tout en conservant la position de ceux précédemment placés.

Chapitre 21 – Personnalisation du produit et finalisation de l'appli

Nous terminerons notre application par la création d'un système de personnalisation des produits.

3. Codes sources des exemples

Vous pouvez télécharger les codes sources des exemples à l'adresse http://d-booker.jo.my/ra-sources. Vous pouvez aussi y accéder depuis la page du livre sur le site de l'éditeur.

4. Réglage de la largeur de l'écran

Vous trouverez de nombreux exemples de code, formatés dans une police à chasse fixe. Afin d'éviter des retours à la ligne inopportuns à l'intérieur d'une ligne de code, la longueur maximale des lignes de code a été fixée à 70 caractères, une valeur suffisamment basse pour être affichée sur la plupart des supports, tout en étant suffisante pour que le code puisse être correctement formaté.

Toutefois, il est possible que sur votre support la largeur maximale affichable soit inférieure à la limite fixée. Le paragraphe test ci-dessous permet de vérifier votre affichage. Il doit tenir sur deux lignes exactement :

0000000000111111111122222222223333333333444444444455555555556666666666
0123456789012345678901234567890123456789012345678901234567890123456789

Si ce n'est pas le cas, regardez si vous pouvez agrandir la taille de la fenêtre, diminuer la taille des marges ou diminuer la taille de la police d'affichage. Sur un téléphone portable, placez-le plutôt en mode paysage. Si vous n'y arrivez pas, ne vous inquiétez pas pour autant, la plupart des lignes de code sont inférieures à 65 caractères.

Premiers pas avec la réalité augmentée

1

Appréhender la réalité augmentée

Comme je vous l’expliquais dans l’introduction, la réalité augmentée consiste à superposer des informations virtuelles et des informations réelles. Pour réaliser cela, plusieurs possibilités existent. Les deux principales sont l'emploi de lunettes comme les Google Glasses (très onéreuses) ou l’utilisation d’un smartphone. Nous allons bien entendu vous présenter la seconde possibilité car elle permet à tout le monde de profiter de l’expérience