• v2.7.0 d7e61f63e1

    This minor release focuses on delivering performance improvements, made possible by major optimizations in the underlying proprietary SenseGlove libraries, while also introducing some breaking changes.

    mamadou.babaei released this 2025-11-18 03:20:41 +00:00 | 108 commits to master since this release

    Added

    • Added support for UE 5.7.
    • Added support for Android NDK r27c, which is the recommend Android SDK since UE 5.6.1 and the default for UE 5.7+ for Android Standalone builds.
    • Added support for Epic Cross and Native Toolchains v26, which is shipped with the UE 5.7 and GNU/Linux support.
    • Added prebuilt binaries for third-party library {fmt} Formatting Library on all supported platforms. This third-party library is a required dependency of SenseGlove libraries >= v2.300.0.
    • Added prebuilt binaries for third-party library: Loguru Logging Library on all supported platforms. This third-party library is a required dependency of SenseGlove libraries >= v2.300.0.
    • Added third-party module SGCommonThirdPartyLibs.
    • Added third-party module SGConnectShmThirdPartyLibs.
    • Added third-party module SGCoreShmThirdPartyLibs.
    • Added third-party module SGCoreThirdPartyHeaders.
    • Added third-party module SGFmtThirdPartyLibs.
    • Added third-party module SGLogThirdPartyLibs.
    • Added third-party module SGLoguruThirdPartyLibs.
    • Added third-party module SGWjwwoodSerialThirdPartyLibs to replace SGSerialThirdPartyLibs while retaining SGSerialThirdPartyLibs for a different purpose. See the relevant comment in the Changed section below.
    • Added UPROPERTY USGTouchComponent::VibrotactileAmplitude.
    • Added UPROPERTY USGTouchComponent::VibrotactileFrequency.
    • Added method USGTouchComponent::GetVibrotactileAmplitude().
    • Added method USGTouchComponent::SetVibrotactileAmplitude().
    • Added method USGTouchComponent::GetVibrotactileFrequency().
    • Added method USGTouchComponent::SetVibrotactileFrequency().
    • Added Blueprint-accessible method USGTouchComponentKismetLibrary::GetVibrotactileAmplitude().
    • Added Blueprint-accessible method USGTouchComponentKismetLibrary::SetVibrotactileAmplitude().
    • Added Blueprint-accessible method USGTouchComponentKismetLibrary::GetVibrotactileFrequency().
    • Added Blueprint-accessible method USGTouchComponentKismetLibrary::SetVibrotactileFrequency().

    Fixed

    • Fix a typo in the function name SGDeviceList::SenseCommRunning(). This fix breaks ABI and API compatibility with previous versions of the plugin and affects both C++ and Blueprint code.

    Changed

    • SGDeviceList::SenseCommRunning() has been renamed to SGDeviceList::SenseComRunning() due to a typo. This change breaks ABI and API compatibility with previous versions of the plugin and affects both C++ and Blueprint code.
    • Bumped the SenseGlove libraries to v2.305.3-17a820b6e. This release of the SenseGlove libraries disables RTTI/Exceptions for the most parts and isolates it to a minor portion of the code base, which yields noticable performance gains. Futhermore, some optiomizations are done in the multi-threaded code, such as replacing Spinlocks with Adaptive Mutexes (a hybrid Mutex/Spinlock).
    • As a result of SenseGlove libraries >= v2.300.0 changing it's directory structure, the ThirdParty folder's directory structure has been revamped.
    • Renamed third-party module SGSerialThirdPartyLibs to SGWjwwoodSerialThirdPartyLibs since SenseGlove libraries >= v2.300.0 ships a new static library named sgserial. Thus, to avoid confusion and naming conflicts the third-party serial static library is now provided by the SGWjwwoodSerialThirdPartyLibs module and sgserial is provided by the SGSerialThirdPartyLibs module.
    • FSGGloveTrackingSettings::GloveConnectivityCheckInterval settings have been renamed to FSGGloveTrackingSettings::DataRetrievalRefreshRate for adoption other than glove connectivity use cases.
    • USGVirtualHandComponent::GetMotionControllerData() signature has changed.
    • USGVirtualHandComponent::GetHandTrackingState() signature has changed.
    • USGWristTrackerComponent::GetMotionControllerData() signature has changed.
    • USGWristTrackerComponent::GetHandTrackingState() signature has changed.
    • USGVirtualHandComponentKismetLibrary::GetMotionControllerData() signature has changed.
    • USGVirtualHandComponentKismetLibrary::GetHandTrackingState() signature has changed.
    • SGPawn and SGTouchComponent no longer use the legacy QueueVibroLevels method for applying vibrotactile feedback. Instead it's been replaced with SendCustomWaveform.
    • Changed USGTouchComponent::VibrotactileDuration UPROPERTY's maximum value to 1.0f. Previously it was uncapped, and now any value beyond 1.0f seconds is clamped.

    Removed

    • Dropped support for Unreal Engine 5.3, which was already deprecated in the v2.6.x release series.
    • Dropped support for MSVC v142 (Visual Studio 2019), since UE 5.3 was the last supported version relying on it.
    • Cleaned up remnants of the long-removed Unreal Engine 5.2 from third-party module *.Build.cs files.
    • Cleaned up remnants of the long-removed Unreal Engine 5.2 from SenseGlove.Build.cs, SenseGloveKismet.Build.cs, SenseGloveTracking.Build.cs, files.
    • Cleaned up remnants of the long-removed Unreal Engine 5.2 from SenseGloveTracking module.
    • USGVirtualHandComponent::GetMotionControllerState() has been removed.
    • USGWristTrackerComponent::GetMotionControllerState() has been removed.
    • USGVirtualHandComponentKismetLibrary::GetMotionControllerState() has been removed.
    • USGWristTrackerComponentKismetLibrary::GetMotionControllerState() has been removed.
    • USGTouchComponent::VibrotactileLevel UPROPERTY has been removed.
    • USGTouchComponent::GetVibrotactileLevel() method has been removed.
    • USGTouchComponent::SetVibrotactileLevel() method has been removed.
    • USGTouchComponentKismetLibrary::GetVibrotactileLevel() method has been removed and is no longer available to Blueprint.
    • USGTouchComponentKismetLibrary::SetVibrotactileLevel() method has been removed and is no longer available to Blueprint.

    Deprecated

    • This is the last major/minor release to support Unreal Engine 5.4, and its support will be removed in future minor or major releases. This is important to keep in mind if your target development and deployment platform is HTC VIVE in Standalone Mode. Unfortunately, HTC has not released any updates to their HTC ViveOpenXR plugin since December 6, 2024. Their latest release [1] [2], ViveOpenXR Plugin v2.5.0, supports only Unreal Engine 5.3 and 5.4. HTC VIVE PCVR Mode is unaffected and will remain fully functional because, on Microsoft Windows, it is supported via the OpenXRViveTracker Plugin, which is bundled with Unreal Engine and officially maintained by Epic Games. If you still intend to target HTC in Standalone Mode, you are welcome to continue using the latest SenseGlove Unreal Engine Plugin v2.7.x, which will retain HTC Standalone Mode support. However, please keep in mind that once newer versions of the SenseGlove Unreal Engine Plugin are released and UE 5.4 is no longer supported, the latest release of the plugin supporting UE 5.4 will not receive new features, hardware support, or bug fixes. If at any point in the future HTC releases a new version of their ViveOpenXR plugin that supports any Unreal Engine version we actively support, in accordance with our support policy and Platform Support Matrix, we will make every reasonable effort to reintroduce HTC Standalone Mode support.

    Documentation

    Downloads