Synchronisation du système de coordonnées avec la communication à distance holographique et l’API OpenXR
Avec l’API OpenXR, le système de coordonnées utilisateur est encapsulé dans un espace de référence de type XR_REMOTING_REFERENCE_SPACE_TYPE_USER_MSFT
.
Conseil
Vous trouverez un exemple simple dans les exemples distants et de lecteur à l’intérieur du référentiel github des exemples holographiques de communication à distance.
Supprimez les marques de #define ENABLE_USER_COORDINATE_SYSTEM_SAMPLE
commentaire dans les fichiers OpenXrProgramm.cpp et SamplePlayerMain.h pour activer l’exemple de code.
Important
Pour en savoir plus sur l’API d’extension Holographic Remoting OpenXR, case activée la spécification qui se trouve dans le référentiel github d’exemples de communication à distance holographiques.
Définir et mettre à jour le système de coordonnées utilisateur dans l’application Lecteur
Actuellement, la communication à distance holographique prend uniquement en charge l’écriture d’un lecteur personnalisé avec l’API Windows Mixed Reality. Un lecteur écrit avec l’API Windows Mixed Reality peut être utilisé avec une télécommande OpenXR ! Par conséquent, vous devez définir le système de coordonnées utilisateur à partir du lecteur Windows Mixed Reality. Pour plus d’informations, consultez Synchronisation du système de coordonnées avec communication à distance holographique et l’API Windows Mixed Reality.
Obtenir le système de coordonnées utilisateur dans l’application distante
Pour créer le système de coordonnées utilisateur dans l’appel xrCreateReferenceSpace
de l’application distante avec l’argument XR_REMOTING_REFERENCE_SPACE_TYPE_USER_MSFT
:
xr::SpaceHandle space;
XrReferenceSpaceCreateInfo createInfo{XR_TYPE_REFERENCE_SPACE_CREATE_INFO};
createInfo.referenceSpaceType = static_cast<XrReferenceSpaceType>(XR_REMOTING_REFERENCE_SPACE_TYPE_USER_MSFT);
createInfo.poseInReferenceSpace = xr::math::Pose::Translation({0.0f, 0.0f, 0.0f});
CHECK_XRCMD(xrCreateReferenceSpace(m_session.Get(), &createInfo, space.Put()));