If disabled, the Component will stop enacting its behavior.
Used to access rotation tracking settings.
Readonly
sceneThe scene object this component is on.
Used to access surface tracking settings.
Helps to improve surface tracking accuracy while the target SceneObject
is being moved.
Readonly
uniqueReturns the WorldOptions object of this component, which can be used to control World Tracking settings.
Readonly
worldReturns the World Tracking Capabilities of the current device.
Calculates a histogram of world mesh surfaces within a sphere at the given world position and radius. Only available when world mesh tracking is supported and enabled.
Creates a TrackedPoint at world position worldPos
and world rotation worldRot
.
Returns the actual DeviceTrackingMode being used. This may be different from the requested DeviceTrackingMode.
Returns an array of BasicTransform objects describing each point that the camera travels through. Each item in the array matches the camera's basic transform in the corresponding frame of the video feed that the Lens is applied to. Only available in some cases, such as in Lenses for Spectacles 3. When not available, it will return an empty array. See the Lenses for Spectacles guide for more information.
Returns the current frame index of the video feed that the Lens is being applied to.
This can be used as an index to access the current BasicTransform in getDevicePath()
.
Only available in some cases, such as in Lenses for Spectacles 3. When not available, it will return -1.
See the Lenses for Spectacles guide for more information.
Exposes User Data
Returns the 3D point cloud representing important features visible by the camera.
Returns the DeviceTrackingMode currently requested to be used. This may be different from the actual DeviceTrackingMode being used.
Returns the SceneObject the component is attached to.
Returns an array of TrackedMeshHitTestResult that intersect with a ray cast from screen position screenPos. Only available when world mesh tracking is supported and enabled.
Returns whether the DeviceTrackingMode is supported.
Returns true if this object is the same as other
. Useful for checking if two references point to the same thing.
Returns an array of TrackedMeshHitTestResult that intersect with a ray cast from the world position from
and continuing through the world position to
. Only available when world mesh tracking is supported and enabled.
Requests that a DeviceTrackingMode be used. This requested change may not happen immediately.
Resets the World Tracking origin to the point on the surface plane aligned with the screen position position
.
Screen positions are represented in the range ([0-1], [0-1]), (0,0) being the top-left of the screen and (1,1) being the bottom-right.
Offsets the default position of the World Tracking surface origin by offset
.
Avoid using a y
value of zero in offset
, because it may cause problems with tracking.
If used outside of Initialized
or TurnOnEvent
, you will need to call resetTracking()
to apply the offset.
Note: calling resetTracking()
will overwrite the x
and z
components of the offset.
Moves or rotates the SceneObject to match device orientation.
If using "Surface" tracking mode, adding this to a SceneObject enables surface tracking for the scene, and moves the object to a position and rotation that matches the physical camera's pose in the world. Surface tracking can also be enhanced with native AR by enabling the "Use Native AR" option in the Inspector panel, or through script by setting the component's
surfaceOptions.enhanceWithNativeAR
property.If using "Rotation" tracking mode, adding this to a SceneObject will apply the device's real world rotation to the object.
If using "World" tracking mode, adding this to a SceneObject enables native AR tracking for the scene, and moves the object to a position and rotation that matches the physical camera's pose in the world.
See the Tracking Modes guide for more information.
Note:* This component was named "WorldTracking" in previous versions of Lens Studio.
Example
Set the surface tracking target.
Position an object further ahead on the Device Path every frame. Meant for cases where the Device Path is available, such as Lenses for Spectacles 3. See the Lenses for Spectacles guide for more information.