XR Trackable Items
A trackable is something that can be tracked during application execution. This is an object whose position and orientation can be detected. You can use that information to add 3D elements associated with those trackables. While a trackable is detected, its world transform matrix is updated based 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 the base class.
Supported Devices
Currently, in Evergine, the following devices have 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 the 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. It will be continuously updated while the application is running with real-world object information. |
XRPlaneTrackable
This class represents plane detection. Depending on the 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 about the vertices for an approximation of the polygon boundaries for a detected plane. Values are relative to the XZ plane and should be transformed by the 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, whether they are static or in motion.
Properties and Methods
Property | Description |
---|---|
DatabaseIndex | Indicates the index of the image in the internal images database. |
Name | Indicates the name of the image in the internal images database. |
Size | Size of the detected image. |
TrackingMethod | Depending on the tracking state: if the image is not being tracked, is tracked by the last pose information, or full tracking. |
XRFaceTrackable
This class is used for face tracking. A single face at a time will be detected.
Properties and Methods
Property | Description |
---|---|
MeshVerticesPointer | Pointer to the native face mesh vertices buffer. |
MeshVerticesCount | Number of face mesh vertices. |
MeshTextureCoordinatesPointer | Pointer to the native face texture coordinates buffer. |
MeshTextureCoordinatesCount | Number of texture coordinates. |
MeshNormalsPointer | Pointer to the native face mesh normals buffer. |
MeshNormalsCount | Number of normals. |
MeshTriangleIndicesPointer | Pointer to the native mesh index buffer. |
MeshTriangleIndicesCount | Number of indices. |
LeftForeheadPose | Pose for the left forehead. |
RightForeheadPose | Pose for the right forehead. |
NosePose | Pose for the nose. |