VrControllerArmModel class

Head-relative pseudo-6DoF position model for a 3DoF phone controller.

It never claims measured translation. Instead, it starts at a comfortable rest position and moves that virtual hand within a bounded envelope using the controller orientation. The local offset is smoothed while head motion remains immediate, avoiding the sensation that the controller lags behind the user when they turn their head.

Constructors

VrControllerArmModel({VrControllerHandedness handedness = VrControllerHandedness.right, Vector3? restOffset, double horizontalReach = 0.12, double verticalReach = 0.10, double depthReach = 0.08, double responsiveness = 18})

Properties

depthReach double
final
handedness VrControllerHandedness
final
hashCode int
The hash code for this object.
no setterinherited
horizontalReach double
final
responsiveness double
final
restOffset → Vector3
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
verticalReach double
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reset() → void
toString() String
A string representation of this object.
inherited
update({required CameraRig cameraRig, required Quaternion controllerOrientation, required double dt, required Vector3 out}) → void
Writes the estimated world-space hand position into out.

Operators

operator ==(Object other) bool
The equality operator.
inherited