请选择您的所在地
Australia
Österreich
België
Canada
Canada - Français
中国
Česká republika
Denmark
Deutschland
France
HongKong
Iceland
Ireland
Italia
日本
Korea
Latvija
Lietuva
Lëtzebuerg
Malta
المملكة العربية السعودية (Arabic)
Nederland
New Zealand
Norge
Polska
Portugal
Russia
Saudi Arabia
Southeast Asia
Suisse
Suomi
Sverige
台灣
Ukraine
United Kingdom
United States
请选择您的所在地
België
Česká republika
Denmark
Iceland
Ireland
Italia
Latvija
Lietuva
Lëtzebuerg
Malta
Nederland
Norge
Polska
Portugal
Suisse
Suomi
Sverige

坐标对齐

使用 VR 模拟器模式时,您需要对齐虚拟现实和锚点坐标系。

根据您的设置,您可以使用虚拟现实操控手柄或 ArUco 标记来对齐 VR 模拟器的虚拟现实和锚点坐标系。

坐标对齐是通过一组 API 执行的。坐标对齐 API 可以与基于 WaveSDK 运行时环境的虚拟现实内容配合使用,因此只需调用 API 即可对齐坐标系。

在使用 API 对齐坐标系之前,您需要确定与 VR 模拟器配合使用的锚点操控手柄或腕带式追踪器的原点。有关详细信息,请参见锚点操控手柄和追踪器原点

注:

请务必选择设备作为 Wave Rig (Script)追踪原点,以便坐标对齐不受头戴式设备的地面位置设置影响。

下图显示了 Unity 中的设置。Unreal 引擎也有相应的设置。

根据您是使用一体机还是 PC VR 头戴式设备运行 VR 模拟器模式,可能会使用不同的 API。要了解如何对齐 VR 模拟器的虚拟现实和锚点坐标系,请参见以下内容:

注:
  • 需要 VIVE Business 串流 1.09 才能执行坐标对齐。
  • 通过 VIVE Business 串流执行坐标对齐时,请使用 OpenVR 的Debug.DriverDebugRequest函数发送请求:

enum DeviceType
{
    HMD = 0,
    Controller_Left,
    Controller_Right
}

private string SendRequestMessage(DeviceType deviceType, string inString)
{
    string addprefix = inString.Insert(0, "‍GetParameters "‍); // must have space after GetParameters
    uint RETURN_SIZE = 256;
    StringBuilder value = new StringBuilder("‍"‍, Convert.ToInt32(RETURN_SIZE));
    OpenVR.Debug.DriverDebugRequest((uint)deviceType, addprefix, value, RETURN_SIZE);

   return value.ToString();
}
private string SetParameters(DeviceType deviceType, string inString)
{
    string addprefix = inString.Insert(0, "‍SetParameters "‍); // must have space after SetParameters
    uint RETURN_SIZE = 256;
    StringBuilder value = new StringBuilder("‍"‍, Convert.ToInt32(RETURN_SIZE));
    OpenVR.Debug.DriverDebugRequest((uint)deviceType, addprefix, value, RETURN_SIZE);    

   return value.ToString();
}
提交
谢谢!您的反馈可以帮助其他人了解最有用的信息。