←返回索引页
依赖关系
- Haply 反向运行时 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。
- 用于特定连接用途或控制目标触觉回路
频率的Client Configuration组件。
- 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。
←返回索引页