NOTE: This version of the documentation tracks unstable development happening on A-Frame’s
masterbranch. If you wish to try it out, grab the unstable build. Otherwise, head to the documentation for the current 0.8.0 version
The tracked-controls component interfaces with tracked controllers. tracked-controls uses the Gamepad API to handle tracked controllers, and is abstracted by the hand-controls component as well as the vive-controls, oculus-touch-controls, windows-motion-controls, and daydream-controls components. This component elects the appropriate controller, applies pose to the entity, observes buttons state and emits appropriate events. For non-6DOF controllers such as daydream-controls, a primitive arm model is used to emulate positional data.
Note that due to recent browser-specific changes, Vive controllers may be returned by the Gamepad API with id values of either “OpenVR Gamepad” or “OpenVR Controller”, so using idPrefix for Vive / OpenVR controllers is recommended.
<a-entity tracked-controls="controller: 0; idPrefix: OpenVR"></a-entity>
|armModel||Whether the arm model is used for positional data if absent.||true|
|controller||Index of the controller in array returned by the Gamepad API.||0|
|id||Selects the controller from the Gamepad API using exact match.|
|idPrefix||Selects the controller from the Gamepad API using prefix match.|
|headElement||Head element for arm model if needed (if not active camera).|
|hand||Which hand to use, if arm model is needed. (left negates X)||right|
|orientationOffset||Offset to apply to model orientation.||x: 0, y: 0, z: 0|
|axismove||Axis changed (e.g., for thumbstick, touchpad). Contains
|buttonchanged||Any touch or press of a button fires this.|
|touchstart||Touch sensitive button touched.|
|touchend||Touch sensitive button released.|