Gets the disposed status of the entity.
The disposed status.
An array of the elements that this component instance exposes. In the case that this component does not expose any elements of its own, this will be an array of the elements exposed by this component's children.
Returns true if this component, or any of its parents, are marked as locked.
Gets a behavior of a specific type from the component.
The type of behavior to get.
The behavior of the specified type, or undefined if no such behavior exists.
Gets all behaviors of a specific type from the component.
The type of behaviors to get.
An array of behaviors of the specified type.
Get the instance of the ZComponent that constructed this entity.
If you pass the class of a ZComponent as the type
parameter, this function will ensure that it
returns an instance of that ZComponent. If this component or behavior was constructed by a different
ZComponent class, or by a different entity altogether, the function with throw
an error.
Optional
type: ConstructorForComponent<T>The ZComponent class that you are expecting to receive
The instance of the ZComponent that constructed this component or behavior
Register a function to be called when an Event is fired, or an Observable's value changes. The function will only be bound to the underlying Event or Observable while this entity is enabled.
Using this function, rather than attaching your handler directly to the Event or Observable, ensures your handler is automatically released when this entity is disposed.
Rest
...args: ArgsOptional
options: RegisterOptionsOptional
options: RegisterOptionsReadonly
tagsAn array of string 'tags' assocated with this component.
The getComponentsByTag(mgr, tag)
function can be used to get an array of components
with the supplied tag.
By default, tags are scoped to the ZComponent instance that a component is constructed by.
Tags that begin with global:
are scoped to the experience as a whole.
The ID of a layer clip to play when this device location is not in an immersive XR session.
The ID of a layer clip to play when this device location is not being tracked by the hardware.
The ID of a layer clip to play when the device is in an immersive XR session.
The ID of a layer clip to play when the device location is being tracked by the hardware.
Readonly
enabledIf false
, this entity and its children will no longer participate in the experience.
Note - to read this value, you may wish to use enabledResolved
which will be false
if
this entity, or any of its parents, have enabled
set to false.
The precise implications of enabled
being false will vary between entities,
but in general disabled entities:
Readonly
behaviorsThe behaviors attached to this component.
Readonly
childrenThe children of this component.
Readonly
contextOptional
elementThe raw element(s) that this component exposes
Readonly
enabledThis will have value false
if this entity, or any of its parents, have enabled
set to false
.
To change the enabled
status of this entity, use the enabled
property instead.
The precise implications of enabled
being false will vary between entities,
but in general disabled entities:
Disabled entities will typically remain visible (if they have a visible appearance).
true
if the device is currently able to track its location in space.
Optional
lockedIf true, this component can't be selected at design time in the 3D preview.
Readonly
onAn event that is fired as the last act of this entity being destroyed.
Optional
parentThe parent of this component.
If true (the default), this component will emulate pointers for the various input devices reported by the
underlying hardware (e.g. controllers, hands, screen taps). This means that you can use common
pointer events such as click
, pointerdown
, pointerup
, etc, when building your experience.
If true (the default), pointer emulation will be enabled for the index fingers of any tracked hands. Theis allows users to tap on interactive elements by 'touching' with their finger in 3D space.
If true (the default), pointer emulation will be enabled for hands reported by devices that support hand tracking. For hands, the device exposes a 'target ray' direction that determines where the pointer is pointing, and (on most devices) a 'pinch' gesture between the fingers determines 'pointer down'/'pointer up'.
If false, controllers or tracked hands labeled as for the left hand will be ignored for pointer emulation.
If true (the default), pointer emulation will be enabled for any physical controllers reported by the underling device. For these controllers, a ray coming out of the controller determines the direction that the pointer is pointing, and the 'trigger' button determines 'pointer down'/'pointer up'.
If false, controllers or tracked hands labeled as for the right hand will be ignored for pointer emulation.
Some browsers and XR modes (such immersive-ar
mode on Google Chrome for Android) are handheld, where the user has
the ability to tap on the screen. In this mode, browsers do not emit the usual pointer events that they do for
a normal web page (e.g. click
, pointerup
, pointerdown
), instead they pass this information to the page as
XR device inputs. If this property is true (the default), then this component will process inputs for 'screen'
devices and emulate these common pointer events.
If true, rays will be shown in the direction of emulated pointers - typically the controller's 'target ray space'.
If false, controllers or tracked hands without a specified 'handedness' will be ignored for pointer emulation.
The duration (in milliseconds) of the haptic vibration when an emulated pointer 'clicks' on an interactive object.
The duration (in milliseconds) of the haptic vibration when an emulated pointer enters an interactive object.
The intensity (between 0 and 1) of the haptic vibration when an emulated pointer 'clicks' on an interactive object.
The intensity (between 0 and 1) of the haptic vibration when an emulated pointer enters an interactive object.
If true, controllers featuring haptic hardware will vibrate when the emulated pointer 'clicks' on an interactive object.
If true, controllers featuring haptic hardware will vibrate when the emulated pointer enters an interactive object.
A component that manages the settings for a WebXR session, including the ability to launch an XR session when the user taps on the Launch button for an experience. If you're building an experience from scratch, you may wish to use one of the XRRig components - they constitute a pre-defined setup that includes an instance of this component.
You can use this component to handle various events that may take place during the user experience, such as if the device loses its ability to track the user's environment. It also simulates pointers (i.e. click, pointerdown, pointerup) events for input sources (e.g. controllers and screen taps).
Ztag
three/XRManager
Zicon
settings
Zparents
three/Object3D/Group/**