diff --git a/CHANGELOG.md b/CHANGELOG.md index a0e04e61..edb90895 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,18 +17,35 @@ This is a minor release focusing mainly on bringing OpenXR-compatible hand track - Added the SGTrackingTypes header to the SenseGloveTypes module in order to define and share SenseGloveTracking module types through this header across the plugin modules. - Added ESGHeadMountedDisplayDevice enum with supported HMDs list. - Added the SGGloveTracer utility class, exposed to both C++ and Blueprint, in order to easily check left or right glove connectivity or retrieve the connected glove instances. +- GetMotionControllerData() has been introduced by USGVitualHandComponent in order to retrieve the OpenXR-compatible glove data in Unreal's FXRMotionControllerData format. +- Added FSGVirtualHandAnimInstanceProxy::GetMotionControllerData usable only by child classes. +- USGVirtualHandComponent introduced new uproperties AnimationBoneRotationCorrectionOffset and bAnimationShouldApplyBoneLocation with their equivalent getters and setters. +- Added USGVirtualHandComponent::GetMotionControllerData(). - Added the SenseGloveDebugKismet module in order to allow drawing of debug gizmos and virtual hands from Blueprint. +- Added a new static Draw() method overload to DebugGizmo which allows passing a FQuat instead of a FRotator. ### Changed - The SGSettings constructor visibility has been changed from public to private. - The SenseGlove libraries have been updated to v2.103.0-4a8bd81d. +- GetHandPose() has been replaced by GetMotionControllerData inside USGVirtualHandComponent (see the relevant entry in the Added and Removed sections). +- Many functions inside USGVirtualHandComponent for retrieving bone names or reference transforms has been renamed to return different data types; e.g. GetLeftHandFingerBoneNames(), GetRightHandFingerBoneNames(), GetLeftHandFingerBoneName(), and GetRightHandFingerBoneName() renamed to GetLeftHandBoneNames(), GetRightHandBoneNames(), GetLeftHandBoneName(), and GetRightHandBoneName() respectively. +- bHiddenInGameIfNoGloveDetected UPROPERTY from USGVirtualHandComponent has been renamed to bHiddenInGameIfNoHandDataAvailable and accordingly all of its getters and setters. +- SGWristTrackerComponent now uses FXRMotionControllerData for wrist tracking instead of caluclating the wrist location by calling the SenseGlove API. +- FSGVirtualHandAnimInstanceProxy now relies on FXRMotionControllerData to animate the hands instead of a TMap of bone names and rotations which allows it to also apply the bone locations. +- FSGDebugVirtualHand::Draw now accepts a FXRMotionControllerData parameter instead of all WristLocation, WristRotation, JointPositions, and JointRotations parameters. - Updated the Directory Structure section of the main README file to reflect the latest toolchain support status. ### Removed - Dropped support for Unreal Engine 5.1 and Epic Native Toolchain v20 (used to build UE 5.0 and 5.1 Linux dependencies). - Removed ASGVirtualHandActor as it was experimental and we no longer maintain it and haven't been doing so for a long time. +- Removed FSGVirtualHandAnimInstanceProxy::GetBonesRotations(). +- Removed USGVirtualHandComponent::GetFingerBoneName(). +- Removed USGVirtualHandComponent::GetFingerBoneRefTransform(). +- Removed USGVirtualHandComponent::GetFingerBoneRefRotation(). +- Removed USGVirtualHandComponent::GetFingerBoneRefRotation(). +- Removed USGVirtualHandComponent::GetHandPose() and it's no longer possible to get the hand pose data from USGVirtualHandComponent as GetHandPose() has been removed. If you need it, you could always use the SenseGlove low-level API to retrieve it from the glove. ## [2.0.2] - 2024-04-25