← 返回索引页
2.0.0 更新日志
依赖关系
- Haply Inverse 运行时 SDK 版本 2.0.0
- haply-inverse-service.exe:最低版本 2.0.0(必须在后台运行)
- haply-inverse-c.dll:版本 2.0.0(已包含)
- Haply.Inverse.dll:版本 2.0.0(已包含)
影响兼容性的变更
- 已将HapticThread和HandleThreadInverse3 替换为 VerseGrip。
Run(callback)用于订阅高频事件的方法DeviceStateChanged(device)已替换为。hapticThread.onInitialized活动Inverse3.DeviceOpened已替换为。handleThread.onInitialized活动VerseGrip.DeviceOpened已替换为。- 光标
position以及velocity不再作为触觉回调参数传递。 - 线程安全、托管型
AdditionalData已将其移除,并替换为自定义数据处理方式。
新功能
- 用于可视化显示已连接设备状态的监控窗口(“窗口” > “Haply ” > “连接监控”)
- 通过“Haply ”生成菜单(GameObject >Haply > Haptic Rig),可轻松设置包含所有必需 GameObject 的场景
- Inverse3 以及自动分配 VerseGrip 设备的DeviceMapper
- 客户端配置组件:控制特定连接用例和所需触觉反馈循环 的频率。
- Inverse3 组件 (替代 HapticThread): 在高频线程中,将Inverse3 设备定位到空间中,
获取其位置,并控制其力。
- 由以高频运行的独立触觉线程产生的
Inverse3.DeviceStateChanged活动 - 线程安全的缓存变换矩阵
LocalToWorldMatrix以及WorldToLocalMatrix利用 从设备本地空间到场景世界空间的自动转换 Inverse3.LocalPosition以及Inverse3.LocalVelocity: 设备本地空间中的 未处理的光标坐标Inverse3.Position以及Inverse3.Velocity: 转换为世界坐标系的光标坐标- 使用本地坐标控制设备的
Inverse3.SetLocalForce以及Inverse3.SetLocalPosition方法 - 使用世界坐标控制设备
Inverse3.SetForce以及Inverse3.SetPosition方法 - 直接控制电机的
Inverse3.JointsSetTorque - 直接控制机械臂位置的
Inverse3.JointsSetAngles Inverse3.WorkspaceCenter: 根据手性提供工作空间中心坐标
- 由以高频运行的独立触觉线程产生的
- VerseGrip 组件 (替代 HandleThread): 从高频线程中获取VerseGrip的方向,
同时包含按钮状态和连接状态信息。
- 由以高频运行的独立触觉线程产生的
VerseGrip.DeviceStateChanged活动 - 在触觉线程中使用的
VerseGrip.GetButton,VerseGrip.GetButtonDown,VerseGrip.GetButtonUp作为方法,UnityEngine.Input遵循与……相同的逻辑。 - 在主线程中为场景和 UI 交互而触发的 Unity 事件:
VerseGrip.ButtonDown,VerseGrip.ButtonUp,VerseGrip.Attached,VerseGrip.Detached
- 由以高频运行的独立触觉线程产生的
- 用于在场景中可视化光标位置和方向, 以及管理模型的Inverse3Cursor和VerseGripCursor组件
- HapticOriginGameObject,用于方便调整工作区大小和定位
- 利用Gizmo实现设备位置、方向及手性可视化
- 利用Gizmo可视化可达工作空间
- 过滤日志
- 教程示例
- 实验样品
错误修复与改进
- 检测到设备时,会提供Inverse3 的惯用手法信息。您无需再打开设备即可确认其惯用手法。
- 自动设备检测(Haply 使用Inverse Service和DeviceMapper)
- 将触觉反馈环路频率从约1000Hz提高到约4000kHz
← 返回索引页