跳到主要内容

← 返回 索引页

3.1.0 更新日志

依赖项​

  • Haply Inverse SDK 版本 3.1.0:
    • 已更新以支持 Inverse SDK 3.x.x 通信协议。
    • 增强了 JSON 序列化,以与 Inverse SDK 3.1.0 的载荷格式保持一致。

破坏性变更​

  • 库移除与重构:

    • 移除了 Haply.Inverse 2.x.x 库。
    • 为提高一致性,重构了命名空间:
      • Haply.Inverse.Unity → Haply.Inverse。
      • Haply.Inverse.Unity.Internal → Haply.Inverse。
  • 组件名称更新:

    • DeviceBehaviour → DeviceControllerBase。
    • CursorBehaviour → CursorBase。
    • 编辑器类更新:
      • DeviceBehaviourEditor → DeviceControllerBaseEditor。
  • 控制器重构:

    • Inverse3 → Inverse3Controller。
    • VerseGrip → VerseGripController。
    • Inverse3Controller 中的属性和方法名称更新:
      • Joint3 → Angle3。
      • JointsAngles → AngularPosition。
      • JointsAngularVelocity → AngularVelocity。
      • JointsAnglesOutput → AngularPositionOutput。
      • JointsSetAngles → SetAngularPosition。
      • JointsSetTorques → SetAngularTorque。
  • 坐标转换系统:

    • 更新了 Icon Forward Pose 预设,以补偿默认设备控制器的旋转(90° 和 -90°)。
    • 将变换逻辑更新为 轴置换 → 缩放 → 偏移,现已与 Unity 的内置逻辑保持一致。

      此前采用的是 轴置换 → 平移 → 偏移(缩放后),直观性较差,与经过优化的内置方法的兼容性也较低。

    • 将 Vector3Settings 重命名为 PositionConverter,将 QuaternionSettings 重命名为 RotationConverter。
  • 事件系统变更:

    • Inverse3Controller 中的 DeviceStateChanged 事件现使用 EventHandler 和 Inverse3EventArgs。
    • VerseGripController 中的 DeviceStateChanged 事件现使用 EventHandler 和 VerseGripEventArgs。

缺失/已移除的功能​

  • 暂缓的功能:

    • ConnectionMonitorWindow、ClientConfiguration 和 PerformanceData 已暂时移除。这些功能将在后续更新中恢复。
  • API 变更:

    • 移除了 Inverse3Controller.RequestOrientation() 方法。
    • 移除了 OrientationChangedAsync 事件。

新功能​

  • 无线设备支持:

  • 协议升级:

    • ClientConnection 已升级,以支持 Inverse SDK 3.x.x 通信协议。
  • 设备映射:

    • 新增用于在运行时设备设置中启用或禁用自动映射和自动连接的选项。
    • 新增以下方法,以改进设备管理:
      • FetchDeviceListOnce 和 StartFetchingDeviceListWithRetry 用于获取设备列表。
      • GetInverse3Devices 和 GetVerseGripDevices 用于获取已连接设备列表。
      • GetInverse3Controllers 和 GetVerseGripControllers 用于按左右手、设备类型等条件获取场景控制器。
      • MapDevices 用于将设备映射到指定控制器。
      • UnmapDevices 用于移除设备映射。
      • SwapInverse3 和 SwapVerseGrip 用于在控制器之间交换设备。
  • 探测功能增强:

    • Inverse3Controller 中新增 ProbeCursorPosition 方法,可在不发送控制指令的情况下获取光标位置。
    • Inverse3Controller 中新增 ProbeAngularPosition 方法,可在不发送控制指令的情况下获取角位置。
  • Inverse3Gizmos:

    • Gizmos 现在可在运行时和编辑器模式下正确遵循坐标转换、手性和场景变换。
    • 在工作空间中心显示设备的三轴手柄(反映设备的实际轴向)。

修复与改进​

  • 性能:
    • 优化了坐标转换器,以提升性能和稳定性。
  • 光标半径计算:
    • CursorBase 现在会为所有基本网格计算缩放后的半径。
  • 安全检查:
    • 防止控制模式之间发生不安全的切换。

← 返回 索引页