Codes QR dans UnrealQR codes in Unreal

Vue d’ensembleOverview

HoloLens 2 peut voir les codes QR dans l’espace universel à travers la webcam, qui les affiche sous forme d’hologrammes en utilisant un système de coordonnées à la position réelle de chaque code.The HoloLens 2 can see QR codes in world space using the webcam, which renders them as holograms using a coordinate system at each code's real-world position. En plus des codes QR uniques, HoloLens 2 peut aussi afficher des hologrammes sur plusieurs appareils à la même position pour créer une expérience partagée.In addition to single QR codes, HoloLens 2 can also render holograms in the same location on multiple devices to create a shared experience. Veillez à suivre les bonnes pratiques pour ajouter les codes QR à vos applications :Make sure you're following the best practices for adding QR codes to your applications:

  • Zones calmesQuiet zones
  • Éclairage et toile de fondLighting and backdrop
  • Taille, distance et position angulaireSize, distance, and angular position

Au moment de placer les codes QR dans votre application, portez une attention particulière aux considérations liées à l’environnement.Pay special attention to the environment considerations when QR codes are being placed in your app. 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.You can find more information on each of these topics and instructions on how to download the required NuGet package in the main QR code tracking document.

Activation de la détection QREnabling QR detection

Étant donné que HoloLens 2 doit utiliser la webcam pour voir les codes QR, vous devez l’activer dans les paramètres du projet :Since the HoloLens 2 needs to use the webcam to see QR codes, you'll need to enable it in the project settings:

  • Ouvrez Edit > Project Settings, accédez à la section Platforms, puis cliquez sur HoloLens.Open Edit > Project Settings, scroll to the Platforms section and click HoloLens.
    • Développez la section Capabilities et cochez Webcam.Expand the Capabilities section and check Webcam.  

Vous devez aussi opter pour le suivi des codes QR en ajoutant une ressource ARSessionConfig.You'll also need to opt into QR code tracking by adding an ARSessionConfig asset.

Juste avant l’utilisation, vous devez activer manuellement le suivi en appelant UHoloLensARFunctionLibrary::StartCameraCapture().Right before the usage, you should manually enable the tracking by calling UHoloLensARFunctionLibrary::StartCameraCapture(). Après avoir mis fin au suivi de code QR, vous devez le désactiver avec UHoloLensARFunctionLibrary::StopCameraCapture() pour enregistrer les ressources de l’appareil.After ending the QR code tracking, you should disable it by UHoloLensARFunctionLibrary::StopCameraCapture() to save the device resources.

Configuration d’une image suivieSetting up a tracked image

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.QR codes are surfaced through Unreal’s AR tracked geometry system as a tracked image. Pour que cela fonctionne, vous devez :To get this working, you'll need to:

  1. Créer un blueprint et ajouter un composant ARTrackableNotify.Create a Blueprint and add an ARTrackableNotify component.

Composant ARTrackableNotify QR

  1. Sélectionnez ARTrackableNotify et développez la section Events dans le panneau Details.Select ARTrackableNotify and expand the Events section in the Details panel.

Événements QR

  1. Cliquez sur + à côté de On Add Tracked Geometry pour ajouter le nœud au graphique d’événements.Click + next to On Add Tracked Geometry to add the node to the Event Graph.

Ajouter un nœud à On Add Tracked Geometry

Utilisation d’une image suivieUsing a tracked image

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.The Event Graph in the following image shows the OnUpdateTrackedImage event being used to render a point in the center of a QR code and print out its data.

Exemple d’affichage QR

Voici ce qui se passe :Here's what's going on:

  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.First, the tracked image is cast to an ARTrackedQRCode to check that the current updated image is a QR code.
  2. Les données encodées sont récupérées à partir de la variable QRCode.The encoded data is retrieved from the QRCode variable. Vous pouvez obtenir l’angle supérieur gauche du code QR à partir de l’emplacement de GetLocalToWorldTransform et les dimensions avec GetEstimateSize.You can get the top-left of the QR code from the location of GetLocalToWorldTransform and the dimensions with GetEstimateSize.

Vous pouvez aussi obtenir le système de coordonnées pour un code QR dans le code.You can also get the coordinate system for a QR code in code.

Recherche de l’ID uniqueFinding the unique ID

À chaque code QR correspond un ID guid unique, que vous pouvez trouver comme ceci :Every QR code has a unique guid ID, which you can find by:

  • Glissez-déposez le repère As ARTracked QRCode et effectuez une recherche sur l’ID unique (Unique ID).Dragging and dropping the As ARTracked QRCode pin and searching for Get Unique ID.

GUID QR

Il se passe beaucoup de choses en coulisse avec les codes QR ; ce n’est donc pas terminé.There's a lot going on behind the scenes with QR codes, so this isn't the end of the road. N’hésitez pas à consulter les liens ci-dessous pour en savoir plus sur la mécanique interne.Be sure to check out the following links for more details on what's under the hood.

Point de contrôle de développement suivantNext Development Checkpoint

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.If you're following the Unreal development checkpoint journey we've laid out, you're in the midst of exploring the Mixed Reality platform capabilities and APIs. À partir de là, vous pouvez passer à la rubrique suivante :From here, you can proceed to the next topic:

Ou accéder directement au déploiement de votre application sur un appareil ou un émulateur :Or jump directly to deploying your app on a device or emulator:

Vous pouvez revenir aux points de contrôle de développement Unreal à tout moment.You can always go back to the Unreal development checkpoints at any time.

Voir aussiSee also