Table of Contents

Rendu 3D piloté par AR

Le développement d'applications AR nécessite de résoudre un problème fondamental : le rendu du contenu AR. Cet article prendra le suivi d'images planes comme exemple pour décrire les modules de base, les flux et la mise en œuvre du rendu des applications AR.

Flux typique d'une application AR

Une application AR typique consiste généralement à identifier des images, objets ou scènes spécifiques à partir des images de la caméra, à suivre leur position et leur orientation, puis à afficher du contenu virtuel (modèles 3D) en fonction de cette position et orientation.

image tracking

Par exemple, ci-dessus une application AR de suivi de graphique plan

Voici le schéma du flux d'application.

flowchart TD
    CameraDevice[Camera Device]
    Tracker[Tracker]
    Renderer[Renderer]

    CameraDevice -->|Image Frame| Tracker
    Tracker -->|Image Frame + Tracked Pose| Renderer

Le flux comprend les modules suivants.

Module Rôle
Caméra physique Fournit une séquence d'images d'entrée. Les trames d'image incluent l'image, l'horodatage de sa génération, et parfois la position et l'orientation de la caméra dans l'espace
Traqueur Calcule la position et l'orientation de la cible de suivi à partir de la trame d'image. Il existe divers traqueurs selon la cible, par exemple des traqueurs d'images planes ou de suivi d'objets 3D
Moteur de rendu Utilisé pour rendre l'image de la caméra et le modèle 3D correspondant à l'objet suivi à l'écran. Sur certains casques AR, seule l'image de la caméra ou seul le modèle 3D peut être rendu

Rendu sur mobile

Sur mobile, le rendu se divise en deux parties : le rendu de la scène caméra et le rendu des objets virtuels.

Rendu de la scène caméra

camera image

Lors du rendu de la scène caméra, certains paramètres nécessitent une attention particulière.

  • Mode de mise à l'échelle

    Il est souvent nécessaire de remplir tout l'écran ou une fenêtre avec la scène caméra, ce qui pose le problème du rapport d'aspect entre l'image et l'écran/fenêtre.

    En supposant un alignement des centres de l'image et de l'écran/fenêtre avec maintien du rapport d'aspect, deux modes courants existent : mise à l'échelle uniforme et remplissage uniforme.

    Mode de mise à l'échelle Effet
    Mise à l'échelle uniforme Affiche tout le contenu mais laisse des bandes noires sur les côtés ou en haut/bas
    Remplissage uniforme Pas de bandes noires, mais rogne une partie de l'image sur les côtés ou en haut/bas
  • Rotation de l'image caméra

    Sur mobile, l'image enregistrée par la caméra physique est généralement fixe par rapport au boîtier, indépendante de l'orientation de l'écran. Mais l'orientation du boîtier affecte notre définition des directions haut/bas/gauche/droite. À l'affichage, l'orientation actuelle de l'écran affecte aussi la direction de l'image.

    Généralement, lors du rendu, un angle de rotation de l'image caméra par rapport à l'orientation d'affichage doit être déterminé.

  • Retournement de l'image caméra

    Dans certains cas, la caméra frontale est utilisée, nécessitant souvent un retournement horizontal pour que l'image ressemble à un miroir.

Rendu des objets virtuels

virtual object

Pour rendre des objets virtuels sur mobile, il faut les aligner avec l'image caméra. Cela nécessite de placer la caméra de rendu et les objets dans un espace virtuel parfaitement correspondant à l'espace réel, et d'utiliser le même champ de vision et rapport d'aspect que la caméra physique. La transformation de projection en perspective est identique pour l'image caméra et les objets virtuels, sauf que celle de l'image se produit principalement dans la caméra physique, tandis que celle des objets virtuels est un processus entièrement calculé.

Rendu sur casque

Le rendu sur casque diffère quelque peu de celui sur mobile, avec deux cas à considérer.

  • VST

    Video See-Through désigne une technologie AR où le casque capture des images via une caméra physique, puis affiche cette image et le contenu virtuel sur son écran, comme le Vision Pro. Généralement, la matrice de projection en perspective est définie par le SDK du casque ; il suffit de positionner et orienter le contenu virtuel. La caméra physique utilisée pour le suivi et celle utilisée pour le rendu peuvent être à des emplacements différents, avec une transformation de coordonnées lors du rendu.

  • OST

    Optical See-Through désigne une technologie AR où l'écran du casque est transparent, n'affichant que le contenu virtuel, comme le HoloLens. Généralement, la matrice de projection en perspective est définie par le SDK du casque ; il suffit de positionner et orienter le contenu virtuel. La caméra physique utilisée pour le suivi et l'écran peuvent être à des emplacements différents, avec une transformation de coordonnées lors du rendu.

Guides spécifiques aux plateformes

Le rendu 3D piloté par AR est étroitement lié à la plateforme. Consultez les guides suivants selon votre plateforme cible :