Démarrage rapide : Déployer l’exemple WMR C++ natif sur HoloLens

Ce guide de démarrage rapide explique comment déployer et exécuter l’application du tutoriel Windows Mixed Reality (WMR) C++ natif sur un appareil HoloLens 2.

Dans ce guide de démarrage rapide, vous allez apprendre à :

  • Générer l’application de tutoriel pour HoloLens.
  • Modifier les informations d’identification Azure Remote Rendering dans le code source.
  • Déployer et exécuter l’exemple sur l’appareil.

Prérequis

Pour pouvoir accéder au service Remote Rendering, vous devez d’abord créer un compte.

Les logiciels suivants doivent être installés :

Cloner le dépôt d’exemples Remote Rendering

La première étape consiste à cloner le dépôt Git, qui héberge les exemples Azure Remote Rendering globaux. Tapez cmd dans le menu Démarrer de Windows pour ouvrir une fenêtre d’invite de commandes. Accédez au répertoire dans lequel vous voulez stocker l’exemple de projet ARR.

Exécutez les commandes suivantes :

mkdir ARR
cd ARR
git clone https://github.com/Azure/azure-remote-rendering

La dernière commande crée un dossier dans le dossier ARR qui contient les divers exemples de projets pour Azure Remote Rendering.

Le tutoriel HoloLens C++ se trouve dans le dossier NativeCpp/HoloLens-Wmr.

Créer le projet

Ouvrez le fichier solution HolographicApp.sln situé dans le dossier NativeCpp/HoloLens-Wmr à l’aide de Visual Studio.

Basculez la configuration de build sur Débogage (ou Release) et ARM64. Vérifiez que le mode du débogueur est défini sur Appareil plutôt que Ordinateur distant :

Capture d’écran montrant la zone de configuration de Visual Studio avec des valeurs telles qu’elles sont décrites.

Les informations d’identification du compte étant codées en dur dans le code source du tutoriel, vous devez les remplacer par des informations d’identification valides. Ouvrez le fichier HolographicAppMain.cpp dans Visual Studio et changez la partie où le client est créé dans le constructeur de la classe HolographicAppMain :

// 2. Create Client
{
    // Users need to fill out the following with their account data and model
    RR::SessionConfiguration init;
    init.AccountId = "00000000-0000-0000-0000-000000000000";
    init.AccountKey = "<account key>";
    init.RemoteRenderingDomain = "westus2.mixedreality.azure.com"; // <change to the region that the rendering session should be created in>
    init.AccountDomain = "westus2.mixedreality.azure.com"; // <change to the region the account was created in>
    m_modelURI = "builtin://Engine";
    m_sessionOverride = ""; // If there is a valid session ID to re-use, put it here. Otherwise a new one is created
    m_client = RR::ApiHandle(RR::RemoteRenderingClient(init));
}

Plus spécifiquement, modifiez les valeurs suivantes :

  • init.AccountId, init.AccountKey et init.AccountDomain pour utiliser les données de votre compte. Consultez la section sur la façon de récupérer les informations du compte.
  • Spécifiez où créer la session de rendu à distance en modifiant la partie région de la chaîne init.RemoteRenderingDomain pour les régions autres que westus2, par exemple "westeurope.mixedreality.azure.com".
  • Vous pouvez aussi remplacer m_sessionOverride par un ID de session existant. Des sessions peuvent être créées en dehors de cet exemple. Pour plus d’informations, consultez RenderingSession.ps1 ou Utiliser l’API REST de gestion de session directement.

La création d’une session en dehors de l’exemple est recommandée quand celui-ci doit s’exécuter plusieurs fois. Si aucune session n’est transmise, l’exemple crée une session à chaque démarrage, ce qui peut prendre plusieurs minutes.

Vous pouvez maintenant compiler l’application.

Lancer l’application

  1. Connectez l’appareil HoloLens à votre PC avec un câble USB.
  2. Activez l’appareil HoloLens et attendez que le menu de démarrage apparaisse.
  3. Démarrez le débogueur dans Visual Studio (F5). Il déploie automatiquement l’application sur l’appareil.

L’exemple d’application est lancé et un panneau de texte s’affiche pour vous informer de l’état actuel de l’application. L’état au moment du démarrage est soit le démarrage d’une nouvelle session, soit la connexion à une session existante. Une fois le chargement du modèle terminé, le modèle de moteur intégré s’affiche juste à hauteur de tête. En ce qui concerne l’occlusion, le modèle de moteur interagit correctement avec le cube en rotation qui est rendu localement.

Si vous voulez relancer l’exemple, vous le trouvez également dans le menu Démarrer de l’appareil HoloLens. Il peut y figurer un ID de session ayant expiré compilé.

Étapes suivantes

Ce guide de démarrage rapide est basé sur le résultat d’un tutoriel qui explique comment intégrer tous les éléments associés à Remote Rendering dans une application holographique. Pour savoir quelles sont les étapes nécessaires, suivez ce tutoriel :