XR Trackable Items
A trackable is something that can be tracked during application execution. This is, and object which changes on its position and orientation can be detected. Then, you can use that information to add 3D elements assoiciated to those trackables. While a trackable is detected, its world transform matrix is updated depending on real-world object changes. There are different types of trackables that can be detected by Evergine: planes, images and faces. They all extend XRTrackableItem as base class.
Supported Devices
Currently in Evergine, the following devices has Trackable Items support:
Device | XR Platform |
---|---|
Android | ARCore |
XRTrackableItem
This base class holds information that is common to any trackable element.
Properties and Methods
Property | Description |
---|---|
ID | Gets trackable identifier. This is internally generated by Evergine and will be unique for all detected trackables. |
Transform | Stores position and orientation information for the detected trackable. Will be continuously updated while application is running with real-world object information. |
XRPlaneTrackable
This class represents plane detection. Depending on XR platform implementation you can use XRPlaneDetectionType to detect just vertical or horizontal planes, or even enable both types of plane detection.
Properties and Methods
Property | Description |
---|---|
BoundaryPolygon | Holds information of vertices for an approximation of polygon boundaries for a detected plane. Values are relative to XZ plane that should be transformed by trackable transform information to get boundaries in world-relative coordinates. |
Size | Estimated width and length of the plane. |
Type | Type of detected plane: horizontal with upward or downward facing, or vertical plane. |
XRImageTrackable
Trackable for images, no matter they are static or in movement.
Properties and Methods
Property | Description |
---|---|
DatabaseIndex | Indicates index of the image in the internal images database. |
Name | Indicates name of the image in the internal images database. |
Size | Size of detected image. |
TrackingMethod | Depending on tracking state: if image is not being tracked, is tracked by last pose information or full tracking. |
XRFaceTrackable
This class is used to face tracking. A single face at the same time would be detected.
Properties and Methods
Property | Description |
---|---|
MeshVerticesPointer | Pointer to native face mesh vertices buffer. |
MeshVerticesCount | Number of face mesh vertices. |
MeshTextureCoordinatesPointer | Pointer to native face texture coordinates buffer. |
MeshTextureCoordinatesCount | Number of texture coordinates. |
MeshNormalsPointer | Pointer to native face mesh normals buffer. |
MeshNormalsCount | Number of normals. |
MeshTriangleIndicesPointer | Pointer to native mesh index buffer. |
MeshTriangleIndicesCount | Number indexes. |
LeftForeheadPose | Pose for the left forehead. |
RightForeheadPose | Pose for the right forehead. |
NosePose | Pose for the nose. |