ARCoreManager
- Last UpdatedDec 07, 2023
- 3 minute read
The ARCoreManager node is available in Android to support various AR functionalities. On activating the node, it starts the ARSession and tracks the world. It uses simultaneous localization and mapping or SLAM to track camera and distinct feature points in the real world in virtual coordinate system. it estimates virtual camera pose (position and orientation) by combining tracked visual information with inertial measurement from Device’s IMU (inertial measurement unit). The virtual coordinate system’s origin is the position of camera pose when the session started.
ARCoreManager node requires Camera permission enabled to start ARSession. Therefore, it asks for permission at runtime if camera permission is granted. If user denies camera permission, then only a black screen is shown with no camera preview, as if active field set to false. As soon as permission is granted, the node starts to show camera preview and to work with full functionality.
Note: ARCoreManager node manages the Anchor nodes created during an ARCore session and their data. When using Anchor nodes, the ARCore session tracking may slow down while activating and deactivating the ARCoreManager node. This happens only if an Anchor node is present.
Platform support
This node is supported on Android only.
|
XR-WIN |
XR-P-WIN |
XR-P-IOS |
XR-P-AND |
XR-P-WASM |
|---|---|---|---|---|
|
No support |
No support |
No support |
Full support |
No support |
|
|
|
|
|
|
Device support
Since this node is based on Android ARCore SDK. so, devices supports ARCore via Google Play Services for AR, which enables AR experience built with an ARCore SDK if following conditions are met by devices:
1.The device originally shipped with the Google Play Store.
2.The device is running the minimum Android version listed in table below.
If no version is listed, the device must be running Android 7.0 or later.
|
AR Optional apps |
Must declare minSdkVersion ≥ 14 (API Level 14) |
|
AR Required apps |
Must declare minSdkVersion ≥ 24 (API Level 24) |
For a list of supported devices, go to: https://developers.google.com/ar/devices
Devices without Google Play
Devices from China are not shipped with Google Play Store.
Instead, devices from China support ARCore via Google Play Services for AR, which is available as a separate downloadable service from these app stores:
-
Xiaomi App store
-
Huawei Apps Gallery
-
OPPO App Market
-
Samsung Galaxy Apps
-
V-Appstore
Code example
This is a code example for the ARCoreManager node.
<ARCoreManager name="arManager" active="false" />
Fields
These are the fields for the ARCoreManager node. Only the node-specific fields are indicated, not fields obtained by inheritance.
Field inheritance: NodeBase > ARCoreManager
|
Field |
Type |
Use |
Default value |
Description |
|---|---|---|---|---|
|
active |
sbool |
Optional |
false |
Activates and deactivates an ARSession. When true, the video camera output is shown, and SLAM is started to map the position of the camera and understands the feature points in the scene. |
|
isTracking |
sbool |
Read only |
false |
This value is updated each frame to report whether scene tracking is running or not. If the isTracking value is false it means that the ARCoreManager was not able to track the currentFrame in the ARSession |