← Back to index page
2.1.1 Changelog
Dependencies
- Updated haply-inverse-c.dll version 2.1.1 (require Inverse SDK >= 2.1)
- Updated Haply.Inverse.dll version 2.1.1
- Added com.unity.xr.core-utils version 2.3.0
warning
Broke compatibility with Unity versions before 2022.1.0f1. Please update to a later version if you encounter compatibility issues.
Breaking Changes
- Inverse3 and VerseGrip pass
device
asConnectionStateChanged
event first argumentConnectionStateChanged(state, prevState)
>ConnectionStateChanged(device, state, prevState)
ConnectionStateChangedAsync(state, prevState)
>ConnectionStateChangedAsync(device, state, prevState)
- DeviceMapper
State
property changed to readonly
New Features
- Inverse3Body component apply the body orientation of an Inverse3 device to a specified GameObject.
- Inverse3:
- Device Data (inspector) displays
ControlMode
and lastForce
,Position
orAngles
sent to the device. JointsAngles
andJointsAngularVelocity
.Powered
indicates whether the device is currently powered.PowerSupplyStatusChanged
unity event triggered whenever there is a change in the power supply status.Orientation
gets the current orientation of the Inverse3 device.OrientationChangedAsync
event triggered whenever the body orientation changes.RequestOrientation()
to manually request the body orientation.ControlMode
get the current control mode (CursorForce, CursorPosition, JointsTorques, JointsAngles).ControlModeChanged
unity event triggered whenever the control mode changes.ForceOutput
,PositionOutput
,JointsTorqueOutput
andJointsAnglesOutput
get the current outputs.Release()
reset the device control by sending a null force (replaceTryResetForce()
).CoordinateConverter
to define coordinate conversion settings with preset file or direct value.ErrorEvent
fired (on main thread) when ClientConnection error event append with mapped device
- Device Data (inspector) displays
- VerseGrip:
CoordinateConverter
to define coordinate conversion settings with preset file or direct value.ErrorEvent
fired (on main thread) when ClientConnection error event append with mapped device
- DeviceMapper:
- Map devices connected at runtime.
- Gets Inverse3 Power Supply and Body Orientation for each Inverse3 devices.
DeviceInfoPollingMode
modesManual
,Once
(default) orContinuous
devicesInfoPollDelay
with safe minimum set to1sec
if body orientation is requested,0.5sec
otherwise.- Initialize only on component enabled.
- Filtered device getters:
GetInverse3Devices(handedness)
retrieves Inverse3 devices filtered by the specified handedness.GetVerseGripDevices(handedness)
retrieves VerseGrip devices associated with Inverse3 devices that match the specified handedness.GetInverse3(handedness)
retrieves the first Inverse3 device that matches the specified handedness.GetInverse3(verseGrip)
retrieves the Inverse3 device associated with a given VerseGrip device.GetVerseGrip(inverse3)
retrieves the VerseGrip device associated with a specified Inverse3 device.
- OrientationSettings added on VerseGripCursor and Inverse3Body components .
VerseGrip.Orientation
replaceVerseGrip.LocalRotation
.- Explicit Inverse3Data type for Inverse3 cache:
- cached states properties:
CursorPosition
,JointsAngles
,JointsAngularVelocity
,Orientation
, GravityCompensation
,StatusPowerSupply
,ConfigTorqueScaling
- cached control output
properties:
ControlMode
,CursorForceOutput
,CursorPositionOutput
,JointsTorqueOutput
,JointsAnglesOutput
. coordinateConverter
used to convert received and sent data with specified coordinate system.- cache subscribe to client to be updated automatically.
- fire events on cache updates.
- cached states properties:
- Explicit
Joint3
struct with tree float membersj0
,j1
andj2
(used byJointsSetTorque
andJointsSetAngles
). - Explicit VerseGripData type for VerseGrip cache:
- cached states properties:
Orientation
,IsAttached
,ButtonCount
. - cached button states.
- cache subscribe to client to be updated automatically.
coordinateConverter
used to convert received data with specified coordinate system.- fire events on cache updates.
- cached states properties:
- CoordinateConverter (replace
UnityConvert
) to individually define how to convert device coordinate space into Unity coordinate space:Inverse3CoordinateConverter
to convert cursor coordinates and body orientation.VerseGripCoordinateConverter
to convert VerseGrip orientation.Vector3Settings
andQuaternionSettings
structs used to store coordinate system conversion settings.- Create default coordinate converter presets for Inverse3 and VerseGrip from the components or Assets menu.
- Inverse3 (Arm Forward Pose) converter with settings for device with the arm facing the user, the LED icon on the side.
- Inverse3 (Icon Forward Pose) converter with settings for device with the LED icon facing the user, the arm on the side.
- VerseGrip (default) converter for device pointing the screen with the user input button on top.
- ClientConnection gets
FirmwareVersion
,GravityCompensation
andTorqueScaling
on device opened. - ConnectionMonitor displays
GravityCompensation
,TorqueScaling
andPowerSupply
.
Bug Fixes
Inverse3.DeviceStateChanged
triggered also withJointsSetTorque
andJointsSetAngles
.- Automatically reconnect device after disconnect.
- Clean client polling thread on build exit.
- Fixed bugs and improved stability.
- Fixed device mapping after scene unload/load
Deprecated
ClientConnection.Configuration.HapticFrequencyHz
replaced byHapticPollFrequency
ClientConnection.Configuration.PollDelayNs
replaced byHapticPollDelayNs
DeviceBehaviour.ConnectionStateChangedAsync
will be removed on next major releaseInverse3.Position
replaced byInverse3.CursorPosition
Inverse3.LocalPosition
replaced byInverse3.CursorLocalPosition
Inverse3.TryResetForce()
replaced byRelease()
VerseGrip.LocalRotation
replaced byVerseGrip.Orientation
JointsSetTorque(Vector3)
replaced byJointsSetTorques(Joint3)
JointsSetTorque(float, float, float)
replaced byJointsSetTorques(float, float, float)
JointsSetAngles(Vector3)
replaced byJointsSetAngles(Joint3)
← Back to index page