← 返回索引页
2.1.1 更新日志
依赖关系
- 更新了haply-inverse-c .dll2.1.1 版(要求Inverse SDK >= 2.1)
- 已更新Haply.Inverse.dll版本 2.1.1
- 已添加com.unity.xr.core-utils2.3.0 版
警告
与2022.1.0f1 之前的 Unity 版本不兼容。 如果遇到兼容性问题,请更新到更高版本。
突破性变化
- Inverse3 和 VerseGrip 通过
device
作为ConnectionStateChanged
事件第一项ConnectionStateChanged(state, prevState)
>ConnectionStateChanged(device, state, prevState)
ConnectionStateChangedAsync(state, prevState)
>ConnectionStateChangedAsync(device, state, prevState)
- 设备映射器
State
属性改为只读
新功能
- Inverse3Body组件将Inverse3 设备的身体方向应用于指定的 GameObject。
- Inverse3:
- 设备数据(检查器)显示
ControlMode
最后Force
,Position
或Angles
发送到设备。 JointsAngles
和JointsAngularVelocity
.Powered
表示设备当前是否有电。PowerSupplyStatusChanged
当电源状态发生变化时触发的统一事件。Orientation
获取Inverse3 设备的当前方向。OrientationChangedAsync
事件时触发。RequestOrientation()
来手动申请身体方向。ControlMode
获取当前控制模式(CursorForce、CursorPosition、JointsTorques、JointsAngles)。ControlModeChanged
每当控制模式发生变化时触发的统一事件。ForceOutput
,PositionOutput
,JointsTorqueOutput
和JointsAnglesOutput
获取当前输出。Release()
重置设备控制,方法是发送一个无效力(替换......)。TryResetForce()
).CoordinateConverter
用预设文件或直接值定义坐标转换设置。ErrorEvent
当 ClientConnection 错误事件附加映射设备时(在主线程上)触发
- 设备数据(检查器)显示
- VerseGrip:
CoordinateConverter
用预设文件或直接值定义坐标转换设置。ErrorEvent
当 ClientConnection 错误事件附加映射设备时(在主线程上)触发
- 设备映射器:
- 映射运行时连接的设备。
- 获取Inverse3 电源和每个Inverse3 设备的机身方向。
DeviceInfoPollingMode
模式Manual
,Once
(默认)或Continuous
devicesInfoPollDelay
安全最小值设为1sec
如果要求身体定向、0.5sec
否则- 仅在组件启用时初始化。
- 过滤设备获取器:
GetInverse3Devices(handedness)
检索Inverse3 按指定手性筛选的设备。GetVerseGripDevices(handedness)
检索与Inverse3 设备关联的、符合指定手势的 VerseGrip 设备。 指定手势的设备相关联的 VerseGrip 设备。GetInverse3(handedness)
检索第一个符合指定手性的Inverse3 设备。GetInverse3(verseGrip)
检索与给定 VerseGrip 设备相关联的Inverse3 设备。GetVerseGrip(inverse3)
检索与指定Inverse3 设备相关联的 VerseGrip 设备。
- 在 VerseGripCursor 和 Inverse3Body 组件上添加了方向设置。
VerseGrip.Orientation
顶替VerseGrip.LocalRotation
.- 明确 逆 3D数据 类型的Inverse3 缓存:
- 缓存状态属性:
CursorPosition
,JointsAngles
,JointsAngularVelocity
,Orientation
, GravityCompensation
,StatusPowerSupply
,ConfigTorqueScaling
- 缓存控制输出
属性
ControlMode
,CursorForceOutput
,CursorPositionOutput
,JointsTorqueOutput
,JointsAnglesOutput
. coordinateConverter
用于将接收和发送的数据与指定的坐标系进行转换。- 缓存订阅客户端,以便自动更新。
- 在缓存更新时触发事件。
- 缓存状态属性:
- 明确
Joint3
具有树形浮点成员的结构体j0
,j1
和j2
(由JointsSetTorque
和JointsSetAngles
). - 明确 VerseGripData 类型的 VerseGrip 缓存:
- 缓存状态属性:
Orientation
,IsAttached
,ButtonCount
. - 缓存按钮状态。
- 缓存订阅客户端,以便自动更新。
coordinateConverter
用于将接收到的数据转换为指定的坐标系。- 在缓存更新时触发事件。
- 缓存状态属性:
- 坐标转换器 (替换
UnityConvert
) 来单独定义如何将设备坐标空间转换为 统一坐标空间:Inverse3CoordinateConverter
来转换光标坐标和身体方向。VerseGripCoordinateConverter
来转换 VerseGrip 方向。Vector3Settings
和QuaternionSettings
结构体,用于存储坐标系转换设置。- 从组件或 "资产 "菜单为Inverse3 和 VerseGrip 创建默认坐标转换器预设。
- Inverse3 (手臂向前姿势)转换器,设置为手臂朝向用户的设备,LED 图标位于 侧的 LED 图标。
- Inverse3 (图标正向姿势)转换器,设置为 LED 图标朝向用户的设备,手臂在侧面。 侧。
- VerseGrip(默认)转换器,用于指向屏幕的设备,用户输入按钮位于顶部。
- 客户端连接 获得
FirmwareVersion
,GravityCompensation
和TorqueScaling
设备上打开。 - 连接监控器 显示
GravityCompensation
,TorqueScaling
和PowerSupply
.
错误修复
Inverse3.DeviceStateChanged
也用JointsSetTorque
和JointsSetAngles
.- 断开连接后自动重新连接设备。
- 在构建退出时清理客户端轮询线程。
- 修正了错误并提高了稳定性。
- 修复场景卸载/加载后的设备映射
已停用
ClientConnection.Configuration.HapticFrequencyHz
改为HapticPollFrequency
ClientConnection.Configuration.PollDelayNs
改为HapticPollDelayNs
DeviceBehaviour.ConnectionStateChangedAsync
将在下一个主要版本中删除Inverse3.Position
改为Inverse3.CursorPosition
Inverse3.LocalPosition
改为Inverse3.CursorLocalPosition
Inverse3.TryResetForce()
改为Release()
VerseGrip.LocalRotation
改为VerseGrip.Orientation
JointsSetTorque(Vector3)
改为JointsSetTorques(Joint3)
JointsSetTorque(float, float, float)
改为JointsSetTorques(float, float, float)
JointsSetAngles(Vector3)
改为JointsSetAngles(Joint3)
← 返回索引页