XRHandTracker

package
v0.0.0-...-a66c66c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 12, 2025 License: MIT Imports: 26 Imported by: 0

Documentation

Overview

Package XRHandTracker provides methods for working with XRHandTracker object instances.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Advanced

type Advanced = class

Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.

type Any

type Any interface {
	gd.IsClass
	AsXRHandTracker() Instance
}

type Extension

type Extension[T gdclass.Interface] struct{ gdclass.Extension[T, Instance] }

Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension

func (*Extension[T]) AsObject

func (self *Extension[T]) AsObject() [1]gd.Object

func (*Extension[T]) AsRefCounted

func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted

func (*Extension[T]) AsXRHandTracker

func (self *Extension[T]) AsXRHandTracker() Instance

func (*Extension[T]) AsXRPositionalTracker

func (self *Extension[T]) AsXRPositionalTracker() XRPositionalTracker.Instance

func (*Extension[T]) AsXRTracker

func (self *Extension[T]) AsXRTracker() XRTracker.Instance

type HandJoint

type HandJoint int //gd:XRHandTracker.HandJoint
const (
	/*Palm joint.*/
	HandJointPalm HandJoint = 0
	/*Wrist joint.*/
	HandJointWrist HandJoint = 1
	/*Thumb metacarpal joint.*/
	HandJointThumbMetacarpal HandJoint = 2
	/*Thumb phalanx proximal joint.*/
	HandJointThumbPhalanxProximal HandJoint = 3
	/*Thumb phalanx distal joint.*/
	HandJointThumbPhalanxDistal HandJoint = 4
	/*Thumb tip joint.*/
	HandJointThumbTip HandJoint = 5
	/*Index finger metacarpal joint.*/
	HandJointIndexFingerMetacarpal HandJoint = 6
	/*Index finger phalanx proximal joint.*/
	HandJointIndexFingerPhalanxProximal HandJoint = 7
	/*Index finger phalanx intermediate joint.*/
	HandJointIndexFingerPhalanxIntermediate HandJoint = 8
	/*Index finger phalanx distal joint.*/
	HandJointIndexFingerPhalanxDistal HandJoint = 9
	/*Index finger tip joint.*/
	HandJointIndexFingerTip HandJoint = 10
	/*Middle finger metacarpal joint.*/
	HandJointMiddleFingerMetacarpal HandJoint = 11
	/*Middle finger phalanx proximal joint.*/
	HandJointMiddleFingerPhalanxProximal HandJoint = 12
	/*Middle finger phalanx intermediate joint.*/
	HandJointMiddleFingerPhalanxIntermediate HandJoint = 13
	/*Middle finger phalanx distal joint.*/
	HandJointMiddleFingerPhalanxDistal HandJoint = 14
	/*Middle finger tip joint.*/
	HandJointMiddleFingerTip HandJoint = 15
	/*Ring finger metacarpal joint.*/
	HandJointRingFingerMetacarpal HandJoint = 16
	/*Ring finger phalanx proximal joint.*/
	HandJointRingFingerPhalanxProximal HandJoint = 17
	/*Ring finger phalanx intermediate joint.*/
	HandJointRingFingerPhalanxIntermediate HandJoint = 18
	/*Ring finger phalanx distal joint.*/
	HandJointRingFingerPhalanxDistal HandJoint = 19
	/*Ring finger tip joint.*/
	HandJointRingFingerTip HandJoint = 20
	/*Pinky finger metacarpal joint.*/
	HandJointPinkyFingerMetacarpal HandJoint = 21
	/*Pinky finger phalanx proximal joint.*/
	HandJointPinkyFingerPhalanxProximal HandJoint = 22
	/*Pinky finger phalanx intermediate joint.*/
	HandJointPinkyFingerPhalanxIntermediate HandJoint = 23
	/*Pinky finger phalanx distal joint.*/
	HandJointPinkyFingerPhalanxDistal HandJoint = 24
	/*Pinky finger tip joint.*/
	HandJointPinkyFingerTip HandJoint = 25
	/*Represents the size of the [enum HandJoint] enum.*/
	HandJointMax HandJoint = 26
)

type HandJointFlags

type HandJointFlags int //gd:XRHandTracker.HandJointFlags
const (
	/*The hand joint's orientation data is valid.*/
	HandJointFlagOrientationValid HandJointFlags = 1
	/*The hand joint's orientation is actively tracked. May not be set if tracking has been temporarily lost.*/
	HandJointFlagOrientationTracked HandJointFlags = 2
	/*The hand joint's position data is valid.*/
	HandJointFlagPositionValid HandJointFlags = 4
	/*The hand joint's position is actively tracked. May not be set if tracking has been temporarily lost.*/
	HandJointFlagPositionTracked HandJointFlags = 8
	/*The hand joint's linear velocity data is valid.*/
	HandJointFlagLinearVelocityValid HandJointFlags = 16
	/*The hand joint's angular velocity data is valid.*/
	HandJointFlagAngularVelocityValid HandJointFlags = 32
)

type HandTrackingSource

type HandTrackingSource int //gd:XRHandTracker.HandTrackingSource
const (
	/*The source of hand tracking data is unknown.*/
	HandTrackingSourceUnknown HandTrackingSource = 0
	/*The source of hand tracking data is unobstructed, meaning that an accurate method of hand tracking is used. These include optical hand tracking, data gloves, etc.*/
	HandTrackingSourceUnobstructed HandTrackingSource = 1
	/*The source of hand tracking data is a controller, meaning that joint positions are inferred from controller inputs.*/
	HandTrackingSourceController HandTrackingSource = 2
	/*No hand tracking data is tracked, this either means the hand is obscured, the controller is turned off, or tracking is not supported for the current input type.*/
	HandTrackingSourceNotTracked HandTrackingSource = 3
	/*Represents the size of the [enum HandTrackingSource] enum.*/
	HandTrackingSourceMax HandTrackingSource = 4
)

type ID

type ID Object.ID

ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.

func (ID) Instance

func (id ID) Instance() (Instance, bool)

type Instance

type Instance [1]gdclass.XRHandTracker

A hand tracking system will create an instance of this object and add it to the [XRServer]. This tracking system will then obtain skeleton data, convert it to the Godot Humanoid hand skeleton and store this data on the [XRHandTracker] object. Use [XRHandModifier3D] to animate a hand mesh using hand tracking data.

var Nil Instance

Nil is a nil/null instance of the class. Equivalent to the zero value.

func New

func New() Instance

func (Instance) AsObject

func (self Instance) AsObject() [1]gd.Object

func (Instance) AsRefCounted

func (self Instance) AsRefCounted() [1]gd.RefCounted

func (Instance) AsXRHandTracker

func (self Instance) AsXRHandTracker() Instance

func (Instance) AsXRPositionalTracker

func (self Instance) AsXRPositionalTracker() XRPositionalTracker.Instance

func (Instance) AsXRTracker

func (self Instance) AsXRTracker() XRTracker.Instance

func (Instance) GetHandJointAngularVelocity

func (self Instance) GetHandJointAngularVelocity(joint HandJoint) Vector3.XYZ

Returns the angular velocity for the given hand joint.

func (Instance) GetHandJointFlags

func (self Instance) GetHandJointFlags(joint HandJoint) HandJointFlags

Returns flags about the validity of the tracking data for the given hand joint (see [enum XRHandTracker.HandJointFlags]).

func (Instance) GetHandJointLinearVelocity

func (self Instance) GetHandJointLinearVelocity(joint HandJoint) Vector3.XYZ

Returns the linear velocity for the given hand joint.

func (Instance) GetHandJointRadius

func (self Instance) GetHandJointRadius(joint HandJoint) Float.X

Returns the radius of the given hand joint.

func (Instance) GetHandJointTransform

func (self Instance) GetHandJointTransform(joint HandJoint) Transform3D.BasisOrigin

Returns the transform for the given hand joint.

func (Instance) HandTrackingSource

func (self Instance) HandTrackingSource() HandTrackingSource

func (Instance) HasTrackingData

func (self Instance) HasTrackingData() bool

func (Instance) ID

func (self Instance) ID() ID

func (Instance) SetHandJointAngularVelocity

func (self Instance) SetHandJointAngularVelocity(joint HandJoint, angular_velocity Vector3.XYZ)

Sets the angular velocity for the given hand joint.

func (Instance) SetHandJointFlags

func (self Instance) SetHandJointFlags(joint HandJoint, flags HandJointFlags)

Sets flags about the validity of the tracking data for the given hand joint.

func (Instance) SetHandJointLinearVelocity

func (self Instance) SetHandJointLinearVelocity(joint HandJoint, linear_velocity Vector3.XYZ)

Sets the linear velocity for the given hand joint.

func (Instance) SetHandJointRadius

func (self Instance) SetHandJointRadius(joint HandJoint, radius Float.X)

Sets the radius of the given hand joint.

func (Instance) SetHandJointTransform

func (self Instance) SetHandJointTransform(joint HandJoint, transform Transform3D.BasisOrigin)

Sets the transform for the given hand joint.

func (Instance) SetHandTrackingSource

func (self Instance) SetHandTrackingSource(value HandTrackingSource)

func (Instance) SetHasTrackingData

func (self Instance) SetHasTrackingData(value bool)

func (*Instance) SetObject

func (self *Instance) SetObject(obj [1]gd.Object) bool

func (Instance) Virtual

func (self Instance) Virtual(name string) reflect.Value

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL