This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Basics
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API Reference
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine::VRHandTracking Class

Header: #include <UnigineVRHandTracking.h>

This class manages the VR hand tracking feature. It allows visualizing the bones basis, velocity and size to check and configure the hands configuration.

Notice

Hand tracking is natively supported only when using the OpenXR backend. This includes any VR device that supports OpenXR hand tracking (e.g., Meta Quest, Varjo, Vive with appropriate runtimes). For varjo and openvr backends, hand tracking requires additional plugins such as LeapMotion Plugin or Ultraleap Plugin.

Refer to this article to properly configure hand tracking in your project and choose the right backend.

VRHandTracking Class

Members

bool isAvailable() const#

Returns the current

Return value

true if is enabled; otherwise false.

Ptr<VRHand> getHandLeft() const#

Returns the current left hand.

Return value

Current left hand.

Ptr<VRHand> getHandRight() const#

Returns the current right hand.

Return value

Current right hand.

void setVisualizerEnabled ( bool enabled = 0 ) #

Console: vr_hand_tracking_visualizer_enabled
Sets a new value indicating if the visualizer for hands is enabled. When set to 1, the engine will draw a simple debug skeleton of the hands, showing bones only. This option requires the Visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Arguments

  • bool enabled - Set true to enable the visualizer for hands; false - to disable it. The default value is false.

bool isVisualizerEnabled() const#

Console: vr_hand_tracking_visualizer_enabled
Returns the current value indicating if the visualizer for hands is enabled. When set to 1, the engine will draw a simple debug skeleton of the hands, showing bones only. This option requires the Visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Return value

true if the visualizer for hands is enabled; otherwise false. The default value is false.

void setShowBasis ( bool basis = 0 ) #

Console: vr_hand_tracking_show_basis
Sets a new value indicating if the visualizer for the coordinate axes (basis) of each hand bone is enabled. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Arguments

  • bool basis - Set true to enable the visualizer for the basis of each hand bone; false - to disable it. The default value is false.

bool isShowBasis() const#

Console: vr_hand_tracking_show_basis
Returns the current value indicating if the visualizer for the coordinate axes (basis) of each hand bone is enabled. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Return value

true if the visualizer for the basis of each hand bone is enabled; otherwise false. The default value is false.

void setShowVelocity ( bool velocity = 0 ) #

Console: vr_hand_tracking_show_velocity
Sets a new value indicating if the visualizer for the velocity vectors of each hand bone is enabled. Useful for debugging motion-based interactions like swipes or throws. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Arguments

  • bool velocity - Set true to enable the visualizer for the velocity vectors of each hand bone; false - to disable it. The default value is false.

bool isShowVelocity() const#

Console: vr_hand_tracking_show_velocity
Returns the current value indicating if the visualizer for the velocity vectors of each hand bone is enabled. Useful for debugging motion-based interactions like swipes or throws. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Return value

true if the visualizer for the velocity vectors of each hand bone is enabled; otherwise false. The default value is false.

void setShowBoneSizes ( bool sizes = 0 ) #

Console: vr_hand_tracking_show_bone_sizes
Sets a new value indicating if the visualizer for the size of each hand bone is enabled. Displays red spheres representing the size (radius) of each bone, providing a visual reference for the physical dimensions of the tracked hand. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Arguments

  • bool sizes - Set true to enable the visualizer for the size of each hand bone; false - to disable it. The default value is false.

bool isShowBoneSizes() const#

Console: vr_hand_tracking_show_bone_sizes
Returns the current value indicating if the visualizer for the size of each hand bone is enabled. Displays red spheres representing the size (radius) of each bone, providing a visual reference for the physical dimensions of the tracked hand. This option requires the Hand visualizer to be enabled.

This parameter is stored in the following configuration file: *.boot.

Return value

true if the visualizer for the size of each hand bone is enabled; otherwise false. The default value is false.

The information on this page is valid for UNIGINE 2.20 SDK.

Last update: 2025-06-09
Build: ()