All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.2.0 - 2002-05-18
- Moved the logging location from
%PROGRAMFILES%\Ultraleap\OpenXR\Logs
to%PROGRAMDATA%\Ultraleap\OpenXR
. - Removed option to override logging location (
ULTRALEAP_OPENXR_LOG_PATH
).
- Fixed reporting of palm velocity information.
- Fixed an issue with extension negotiation with the runtime when more than one extension was requested that depended on another API layer implemented extension.
- Fixed an issue where there would be incorrect error messages in the log indicating incorrect device calibration or a faulty USB connection, when used with some versions of the Ultraleap Tracking Service.
- Fixed an issue where an empty hand would be returned when the requesting joints for a timestamp before the most recent frame.
1.1.0 - 2022-04-01
- Support for Qualcomm XR2 based Android systems.
isTrackingSupported
is now reported based on if the Ultraleap Tracking Service is installed and running on the system, as opposed to attempting a connection to the service to avoid startup delay and possible timeouts.
- Fixed an issue which could cause a hang when hand-trackers were created and destroyed very rapidly, such as
during the
XR_EXT_hand_tracking
conformance test. - Fixed an issue where permissions were not always correctly set on the logs directory during installation.
-
This API layer does not currently report the linear or angular velocity of the hand joints other than the palm. If requested, the XrHandJointVelocitiesEXT structure will be returned with the validity bits unset. Issue #1
-
The underlying Ultraleap service currently return the same joint radius for all joints. Issue #2
1.0.1 - 2021-12-17
- Updated Ultraleap tracking client to v5.3.0.
- Increase timeout on initial tracking service connection, to increase tolerance to slower tracking server response.
- Fixed an issue which could cause a hang when all created hand-trackers were destroyed.
- Fixed an issue with error handling that could cause tracking to stop working if the first tracking event was an error.
-
This API layer does not currently report the linear or angular velocity of the hand joints other than the palm. If requested, the XrHandJointVelocitiesEXT structure will be returned with the validity bits unset. Issue #1
-
The underlying Ultraleap service currently return the same joint radius for all joints. Issue #2
-
XrSystemHandTrackingPropertiesEXT.supportsHandTracking
will always returnXR_TRUE
when this API layer is enabled, regardless of if a device is connected.XrHandJointLocationsEXT.isActive
indicates if hand-tracking information is currently available for the requested hand-tracker. Issue #3
1.0.0 - 2021-11-11
- The API layer will now disable its function intercepts if the
XR_EXT_hand_tracking
extension is not requested by the application Issue #14. - Fixed issue causing non-conformance when running OpenXR Conformance Test Suite.
-
This API layer does not currently report the linear or angular velocity of the hand joints other than the palm. If requested, the XrHandJointVelocitiesEXT structure will be returned with the validity bits unset. Issue #1
-
The underlying Ultraleap service currently return the same joint radius for all joints. Issue #2
-
XrSystemHandTrackingPropertiesEXT.supportsHandTracking
will always returnXR_TRUE
when this API layer is enabled, regardless of if a device is connected.XrHandJointLocationsEXT.isActive
indicates if hand-tracking information is currently available for the requested hand-tracker. Issue #3
1.0.0-beta.4 - 2021-10-27
- Fixed issue with API layer initialisation when more than one API layer is enabled. This would result in a crash if this API layer was enabled first.
- Fixed issue with reporting the layer's API layer version information.
1.0.0-beta.3 - 2021-10-27
- Signed Windows installer to replace the previous PowerShell based installer. Installation will remove previous versions of the API Layer.
- Added support for the
XR_EXT_hand_joints_motion_range
extension. Since Ultraleap hand-trackers are optical-based systems, the returned hand pose is always based on the unobstructed joint locations. - Added support for the linear velocity reporting of the palm joint (
XR_HAND_JOINT_PALM_EXT
).
- Updated Ultraleap tracking client to v5.2.0.
- Updated OpenXR SDK to v1.0.20.
- OpenXR API layer DLL is now signed.
- Use
XR_KHR_win32_convert_performance_counter_time
orXR_KHR_convert_timespec_time
extensions for accurate internal timestamp conversions. - Removed configurations variables
ULTRALEAP_OPENXR_TIME_WARP_HEAD
andULTRALEAP_OPENXR_TIME_WARP_VIEW
as they are no longer required now that Issue #6 is resolved. - Removed 32-bit support as the Ultraleap tracking client v5 doesn't currently have support for Windows 32-bit.
- Correct wrist position (was incorrectly reporting the elbow position as the wrist position). Issue #10
- Fixed temporal warping so that the user's hands no longer move when held static and the user's head is rapidly moved. Issue #6
1.0.0-beta.2 - 2020-10-07
- The uninstaller is included with the install as
UninstallOpenXR.cmd
to allow easy uninstallation. An entry is also added to Windows add/remove programs list. - The License, Readme, Changelog and version information are all now included in an installation for easy reference.
- Added log file output (to complement existing
XR_EXT_debug_utils
support) only warnings and errors are logged by default, but this can be controlled with theULTRALEAP_OPENXR_DEBUG
environment variable. - Clarified in the Readme that this is an implicit OpenXR api layer, and does not need explicitly enabling.
- Removed SteamVR <1.14 specific workaround for
xrGetSystemProperties
extension support. Issue #5
- Fixed support for UWP/AppContainer applications, including WebXR, when used in conjunction with the Ultraleap 4.1 Tracking SDK. Issue #8
1.0.0-beta.1 - 2020-07-09
- Initial support for the
XR_EXT_hand_tracking
extension