API reference

HandMicrogestureLocomotionSystem Class

Extends SystemBase
Modifiers: final
Opt-in hand microgesture locomotion system for hands-only teleport and snap-turn navigation.
Thumb taps enter or switch the active locomotion hand, active-hand thumb taps teleport to the current arc target, active-hand left/right swipes pivot, and active-hand forward/back swipes step forwards or backwards. Opening the active hand exits, matching how locomotion is gated in Shell.

Signature

class HandMicrogestureLocomotionSystem(val pivotDegrees: Float = 45.0f, val stepDistanceMeters: Float = 0.5f) : SystemBase

Constructors

HandMicrogestureLocomotionSystem ( pivotDegrees , stepDistanceMeters )
Signature
constructor(pivotDegrees: Float = 45.0f, stepDistanceMeters: Float = 0.5f)
Parameters
pivotDegrees: Float  Degrees applied for each snap-turn. Defaults to 45.
stepDistanceMeters: Float  Distance moved for each forward or back swipe. Defaults to 0.5.
Returns
HandMicrogestureLocomotionSystem

Properties

executeCount : Long
[Get]
The number of times this system's SystemBase.execute method has been called by the system manager. Incremented automatically before each execution cycle. Useful for performance monitoring.
@Volatile guarantees atomic 64-bit reads + happens-before semantics so the introspection reader (which runs on the dump caller's thread) observes a consistent value. Only SystemBase.incrementExecuteCount writes this field, so the non-atomic read-modify-write is safe.
Signature
var executeCount: Long
pivotDegrees : Float
[Get]
Degrees applied for each snap-turn. Defaults to 45.
Signature
val pivotDegrees: Float = 45.0f
stepDistanceMeters : Float
[Get]
Distance moved for each forward or back swipe. Defaults to 0.5.
Signature
val stepDistanceMeters: Float = 0.5f
systemManager : SystemManager
[Get][Set]
The SystemManager that this system is registered with. Provides access to other systems and the scene. Initialized during system registration.
Signature
lateinit var systemManager: SystemManager

Methods

areHandsInUse ()
Returns true while a hand is actively driving microgesture locomotion.
Signature
fun areHandsInUse(): Boolean
Returns
Boolean
associateSystemManager ( systemManager )
Associates this system with a SystemManager. Called during registration. Throws RuntimeException if the system is already associated — each system instance can only belong to one manager.
Signature
fun associateSystemManager(systemManager: SystemManager)
Parameters
systemManager: SystemManager  The system manager that will own and execute this system.
delete ( entity )
Called when an entity is removed from the scene. Override to clean up any per-entity state this system maintains, such as cached components, tracking maps, or native resource handles.
Signature
open fun delete(entity: Entity)
Parameters
entity: Entity
destroy ()
Called during system shutdown to release all resources held by this system. Override to dispose of native handles, close streams, and clear any global state accumulated during the session. Subclasses must call super.destroy() so the framework can clean up auto-registered introspection nodes.
Signature
open fun destroy()
enableHandLocomotion ( enabled )
Enables or disables hand microgesture locomotion at runtime.
Signature
fun enableHandLocomotion(enabled: Boolean)
Parameters
enabled: Boolean
execute ()
Called each frame by the SystemManager to perform this system's per-tick logic. Override to query entities with relevant components and apply updates.
Signature
open override fun execute()
getDependencies ()
Returns the execution ordering dependencies for this system. Override to declare which other systems must run before or after this one using SystemDependencies.
Signature
open fun getDependencies(): SystemDependencies?
Returns
SystemDependencies?  The dependency configuration, or null if this system has no ordering constraints.
getScene ()
Returns the Scene that this system operates within. Delegates to the associated SystemManager to retrieve the active scene instance.
Signature
fun getScene(): Scene
Returns
Scene  The scene containing the entities and rendering state for this system.