Koordinatensystemsynchronisierung mit Holographic Remoting und der OpenXR-API
Mit der OpenXR-API wird das Benutzerkoordinatensystem in einen Referenzraum vom Typ XR_REMOTING_REFERENCE_SPACE_TYPE_USER_MSFT
umschlossen.
Tipp
Ein einfaches Beispiel finden Sie in den Remote- und Playerbeispielen im GitHub-Repository für Holographic Remoting-Beispiele.
Heben Sie die Auskommentierung #define ENABLE_USER_COORDINATE_SYSTEM_SAMPLE
in den Dateien OpenXrProgramm.cpp und SamplePlayerMain.h auf, um den Beispielcode zu aktivieren.
Wichtig
Weitere Informationen zur OpenXR-Erweiterungs-API für Holographic Remoting finden Sie in der Spezifikation , die im GitHub-Repository holographic Remoting samples (Holographic Remoting-Beispiele) zu finden ist.
Festlegen und Aktualisieren des Benutzerkoordinatensystems in der Player-App
Holographic Remoting unterstützt derzeit nur das Schreiben eines benutzerdefinierten Players mit der Windows Mixed Reality-API. Ein Player, der mit der Windows Mixed Reality-API geschrieben wurde, kann mit einem OpenXR-Remotegerät verwendet werden! Daher müssen Sie das Benutzerkoordinatensystem über den Windows Mixed Reality Player festlegen. Weitere Informationen finden Sie unter Koordinatensystemsynchronisierung mit Holographic Remoting und der Windows Mixed Reality-API.
Abrufen des Benutzerkoordinatensystems in der Remote-App
So erstellen Sie das Benutzerkoordinatensystem im Remote-App-Aufruf xrCreateReferenceSpace
mit dem XR_REMOTING_REFERENCE_SPACE_TYPE_USER_MSFT
Argument:
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()));