跳至主要内容

← 返回索引页

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 现在将为所有基本网格计算缩放后的半径。
  • 安全检查:
    • 防止控制模式之间发生不安全的切换。

← 返回索引页