Codes QR dans Unreal

HoloLens 2 peut voir les codes QR dans l’espace universel à travers la webcam, qui les rend sous forme d’hologrammes à la position réelle de chaque code. HoloLens 2 peut aussi rendre des hologrammes sur plusieurs appareils à la même position pour créer une expérience partagée. Veillez à suivre les bonnes pratiques pour ajouter les codes QR à vos applications :

  • Zones calmes
  • Éclairage et toile de fond
  • Taille, distance et position angulaire

Au moment de placer les codes QR dans votre application, portez une attention particulière aux considérations liées à l’environnement. Vous trouverez des informations complémentaires sur chacun de ces sujets ainsi que des instructions sur la façon de télécharger le package NuGet nécessaire dans le document Suivi des codes QR.

Attention

Les codes QR sont les seuls types d’images qui peuvent être suivies de façon native par HoloLens ; le module intégré UARTrackedImage module n’est pas pris en charge sur HoloLens. Si vous avez besoin de suivre des images personnalisées, vous pouvez accéder à la webcam de l’appareil et traiter les images en utilisant une bibliothèque de reconnaissance d’images de tiers.

Activation de la détection QR

Étant donné que HoloLens 2 doit utiliser la webcam pour voir les codes QR, vous devez l’activer dans les paramètres du projet :

  • Ouvrez Edit > Project Settings, accédez à la section Platforms, puis sélectionnez HoloLens.
    • Développez la section Capabilities et cochez Webcam.  
  • Vous devez aussi opter pour le suivi des codes QR en ajoutant une ressource ARSessionConfig.

Si vous utilisez UE 4.26, nous vous recommandons d’utiliser la configuration de blueprint suivante pour ajouter un petit délai, car le suivi de code QR doit être initialisé APRÈS le démarrage d’une session AR :

Blueprint de la fonction Activer/désactiver ARCapture avec un délai

Configuration d’un code QR suivi

Les codes QR sont exposés sous forme d’image suivie par le biais du système de géométrie suivie de réalité augmentée d’Unreal. Pour que cela fonctionne, vous devez :

  1. Créer un blueprint d’acteur et ajouter un composant ARTrackableNotify :

Composant ARTrackableNotify QR

  1. Sélectionnez ARTrackableNotify et développez la section Events dans le panneau Details :

Événements QR

  1. Cliquez sur + à côté de On Add Tracked Geometry pour ajouter le nœud au graphique d’événements.
    • Vous trouverez la liste complète des événements dans l’API du composant UARTrackableNotify.

Ajouter un nœud à On Add Tracked Geometry

Utilisation d’un code QR suivi

Le graphique d’événements dans l’image suivante présente l’événement OnUpdateTrackedImage qui est utilisé pour afficher un point au centre d’un code QR et imprimer ses données.

Voici ce qui se passe :

  1. Tout d’abord, l’image suivie est castée en ARTrackedQRCode pour vérifier que l’image mise à jour actuelle est un code QR.
  2. Les données encodées sont récupérées à partir de la variable QRCode. Vous pouvez obtenir l’angle supérieur gauche du code QR à partir de l’emplacement de GetLocalToWorldTransform et les dimensions avec GetEstimateSize.

Vous pouvez aussi obtenir le système de coordonnées pour un code QR dans le code.

Recherche de l’ID unique

À chaque code QR correspond un ID guid unique, que vous pouvez trouver comme ceci :

  • Glissez-déposez le repère As ARTracked QRCode et effectuez une recherche sur l’ID unique (Unique ID).

GUID QR

Il se passe beaucoup de choses en coulisse avec les codes QR : vous n’en avez donc pas terminé. N’hésitez pas à consulter les liens ci-dessous pour en savoir plus sur la mécanique interne.

Point de contrôle de développement suivant

Si vous suivez le parcours des points de contrôle de développement Unreal que nous avons mis en place, vous explorez actuellement les API et fonctionnalités de la plateforme Mixed Reality. À partir de là, vous pouvez passer à la rubrique suivante :

Ou accéder directement au déploiement de votre application sur un appareil ou un émulateur :

Vous pouvez revenir aux points de contrôle de développement Unreal à tout moment.

Voir aussi