Unreal Engine 4.18: Réalité Augmentée avec ARCore (Android) et ARKit (iOS)

Je profite du dernier Twitch d’Epic sur la Réalité Augmentée pour aborder cette nouveauté de la 4.18. A quoi ça sert ?  L’idée, c’est d’utiliser la caméra de votre smartphone pour filmer l’environnement réel, y détecter des surfaces planes et y déposer des objets virtuels… Enfin, ça va beaucoup plus loin, mais l’idée est là. Allons voir cela d’un peu plus près.

Pour le moment,  il est possible d’utiliser la plateforme Android et iOS de façon quasi-unifiée (on verra qu’il y a quelques différences, mais on s’en sort au final). Quand je dis unifié, je veux dire qu’on peut facilement réaliser une application qui sera packagée pour l’une ou l’autre des plateformes, en changeant peu de code (ou en intégrant la différence directement dans le code).  Le Twitch est disponible sur Youtube, le voici:

On commence à parler d’AR à 4 min 45s.  Je vais vous résumer un peu la chose. En 4.18, la gestion de l’AR passe par des plugins: Google ARCore et Apple ARKit. Bizarrement, chez moi le second est activé par défaut et pas le premier. Bref, il faut vous assurer que le bon soit coché.

L’équipe d’Epic nous propose ce Sample Project. L’intérêt, c’est qu’on dispose dedans des Blueprints nécessaire pour créer rapidement une application d’AR.

Pour le tester, vous devez vous assurer d’avoir un smartphone compatible. Même si AR Core est prévu pour fonctionner sur de nombreux smartphones Android “à terme”, le SDK Preview ne fonctionnera que sur un Samsung Galaxy S8 ou un Google Pixel (+XL, 2, XL). Cela devrait arriver pour les autres courant 2018. Probablement une conséquence du projet Tango.

Tout d’abord, il faut paramétrer l’environement pour Android (sous Windows/Linux) ou iOS (Mac). Pour Android, il vous faudra installer Nvidia CodeWorks, tout est dans la documentation. Bon, si vous n’avez pas le matos, vous ne pourrez pas tester, mais vous pouvez déjà étudier les blueprints correspondants.

Dans project settings, on a une nouvelle option qui permet de déclencher au lancement le mode AR:

Si on ouvre ARPlayerPawn, on trouve un traitement dissocié, si c’est Android ou iOS.

Il reste encore des différences dans l’implémentation des 2 plateformes. Notamment, sur la façon de détecter l’ensemble des plans (ARKit est un peu plus opaque – normal, c’est Apple). Mais l’objectif d’Epic est d’obtenir au final un framework unifié d’accès à l’AR (32 min). De même, l’idée est de pouvoir utiliser un espace plus large que celui de la caméra: c’est l’exemple de la table en “L” qu’on va parcourir en plusieurs fois, le but est que le système “mémorise” qu’il s’agit du même espace. Ce n’est pas encore implémenté, mais cela fait partie des challenges que ce sont fixés les équipes d’Epic.

Avec ce sample, on peut déjà réaliser des projets intéressants. Les fonctions de base sont présentes, il ne reste plus qu’à développer vos propres fonctions.

Laisser un commentaire