← 返回索引页
2.1.1 更新日志
依赖关系
- 更新了haply-inverse-c.dll2.1.1 版(要求逆向 SDK >= 2.1)
- 更新了Haply.Inverse.dll2.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 设备的身体方向应用于指定的游戏对象。
- 逆 3:
- 设备数据(检查器)显示
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 设备。 指定手势的与反向 3 设备相关联的 VerseGrip 设备。GetInverse3(handedness)
检索第一个符合指定手性的 Inverse3 设备。GetInverse3(verseGrip)
检索与给定 VerseGrip 设备相关联的 Inverse3 设备。GetVerseGrip(inverse3)
检索与指定 Inverse3 设备相关联的 VerseGrip 设备。
- 在 VerseGripCursor 和 Inverse3Body 组件上添加了方向设置。
VerseGrip.Orientation
顶替VerseGrip.LocalRotation
.- 明确 逆 3D数据 类型的逆 3 缓存:
- 缓存状态属性:
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 指示灯位于 侧。
- 反向3(LED 正前方)转换器,用于设置 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)
← 返回索引页