ArConfig

Session configuration.

To configure an ArSession :

  1. Use ArConfig_create to create an ArConfig object.
  2. Call any number of configuration functions on the newly created object.
  3. To apply the configuration to the session, use ArSession_configure .
  4. To release the memory used by the ArConfig object, use ArConfig_destroy .

Note: None of the ArConfig_set*() functions will actually affect the state of the given ArSession until ArSession_configure is called.

Summary

Enumerations

enum
Selects the behavior of Augmented Faces subsystem.
enum
Describes the desired behavior of the ARCore Cloud Anchor API.
enum
Selects the desired depth mode.
enum
Selects the desired behavior of the camera flash subsystem.
enum
Selects the desired behavior of the camera focus subsystem.
enum
Describes the desired behavior of the ARCore Geospatial API.
enum
Describes the behavior of the Electronic Image Stabilization (EIS) API.
enum
Describes the desired behavior of Scene Semantics.
enum
Describes the desired behavior of the Geospatial Streetscape Geometry API.

Typedefs

typedef
struct ArConfig_
An opaque session configuration object ( value type ).

Functions

ArConfig_create (const ArSession *session, ArConfig **out_config)
void
Creates a new configuration object and initializes it to a sensible default configuration.
void
Releases memory used by the provided configuration object.
ArConfig_getAugmentedFaceMode (const ArSession *session, const ArConfig *config, ArAugmentedFaceMode *augmented_face_mode)
void
Stores the currently configured augmented face mode into *augmented_face_mode .
ArConfig_getAugmentedImageDatabase (const ArSession *session, const ArConfig *config, ArAugmentedImageDatabase *out_augmented_image_database)
void
Returns the image database from the session configuration.
ArConfig_getCloudAnchorMode (const ArSession *session, const ArConfig *config, ArCloudAnchorMode *out_cloud_anchor_mode)
void
Gets the current Cloud Anchor mode from the ArConfig .
ArConfig_getDepthMode (const ArSession *session, const ArConfig *config, ArDepthMode *out_depth_mode)
void
Gets the currently configured desired ArDepthMode .
ArConfig_getFlashMode (const ArSession *session, const ArConfig *config, ArFlashMode *out_flash_mode)
void
Gets the current camera flash mode set on this config object.
ArConfig_getFocusMode (const ArSession *session, ArConfig *config, ArFocusMode *focus_mode)
void
Stores the currently configured desired focus mode into *focus_mode .
ArConfig_getGeospatialMode (const ArSession *session, const ArConfig *config, ArGeospatialMode *out_geospatial_mode)
void
Gets the current geospatial mode set on the configuration.
ArConfig_getImageStabilizationMode (const ArSession *session, const ArConfig *config, ArImageStabilizationMode *out_image_stabilization_mode)
void
Gets the camera image stabilization mode set on this config object.
ArConfig_getInstantPlacementMode (const ArSession *session, const ArConfig *config, ArInstantPlacementMode *instant_placement_mode)
void
Gets the current Instant Placement Region mode from the ArConfig .
ArConfig_getLightEstimationMode (const ArSession *session, const ArConfig *config, ArLightEstimationMode *light_estimation_mode)
void
Stores the currently configured ArLightEstimationMode mode into *light_estimation_mode .
ArConfig_getPlaneFindingMode (const ArSession *session, const ArConfig *config, ArPlaneFindingMode *plane_finding_mode)
void
Stores the currently configured plane finding mode into *plane_finding_mode .
ArConfig_getSemanticMode (const ArSession *session, const ArConfig *config, ArSemanticMode *out_semantic_mode)
void
Gets the currently configured ArSemanticMode .
ArConfig_getStreetscapeGeometryMode (const ArSession *session, const ArConfig *config, ArStreetscapeGeometryMode *out_streetscape_geometry_mode)
void
Gets the current Streetscape Geometry mode set on the configuration.
ArConfig_getTextureUpdateMode (const ArSession *session, const ArConfig *config, ArTextureUpdateMode *out_texture_update_mode)
void
Stores the desired texture update mode from the given config into out_texture_update_mode .
ArConfig_getUpdateMode (const ArSession *session, const ArConfig *config, ArUpdateMode *update_mode)
void
Stores the currently configured behavior of ArSession_update into *update_mode .
ArConfig_setAugmentedFaceMode (const ArSession *session, ArConfig *config, ArAugmentedFaceMode augmented_face_mode)
void
Sets the desired face mode.
ArConfig_setAugmentedImageDatabase (const ArSession *session, ArConfig *config, const ArAugmentedImageDatabase *augmented_image_database)
void
Sets the image database in the session configuration.
ArConfig_setCloudAnchorMode (const ArSession *session, ArConfig *config, ArCloudAnchorMode cloud_anchor_mode)
void
Sets the desired cloud configuration.
ArConfig_setDepthMode (const ArSession *session, ArConfig *config, ArDepthMode mode)
void
Sets the desired ArDepthMode .
ArConfig_setFlashMode (const ArSession *session, ArConfig *config, ArFlashMode flash_mode)
void
Sets the camera flash mode.
ArConfig_setFocusMode (const ArSession *session, ArConfig *config, ArFocusMode focus_mode)
void
On supported devices, selects the desired camera focus mode.
ArConfig_setGeospatialMode (const ArSession *session, ArConfig *config, ArGeospatialMode geospatial_mode)
void
Sets the Geospatial mode.
ArConfig_setImageStabilizationMode (const ArSession *session, ArConfig *config, ArImageStabilizationMode image_stabilization_mode)
void
Sets the camera image stabilization mode.
ArConfig_setInstantPlacementMode (const ArSession *session, ArConfig *config, ArInstantPlacementMode instant_placement_mode)
void
Sets the current Instant Placement mode from the ArConfig .
ArConfig_setLightEstimationMode (const ArSession *session, ArConfig *config, ArLightEstimationMode light_estimation_mode)
void
Sets the desired ArLightEstimationMode .
ArConfig_setPlaneFindingMode (const ArSession *session, ArConfig *config, ArPlaneFindingMode plane_finding_mode)
void
Sets the desired plane finding mode.
ArConfig_setSemanticMode (const ArSession *session, ArConfig *config, ArSemanticMode semantic_mode)
void
Sets the desired configuration for the Scene Semantics API.
ArConfig_setStreetscapeGeometryMode (const ArSession *session, ArConfig *config, ArStreetscapeGeometryMode streetscape_geometry_mode)
void
Sets the desired configuration for the Streetscape Geometry API.
ArConfig_setTextureUpdateMode (const ArSession *session, ArConfig *config, ArTextureUpdateMode texture_update_mode)
void
Sets the desired texture update mode.
ArConfig_setUpdateMode (const ArSession *session, ArConfig *config, ArUpdateMode update_mode)
void
Sets the behavior of ArSession_update .

Enumerations

ArAugmentedFaceMode

ArAugmentedFaceMode

Selects the behavior of Augmented Faces subsystem.

Default value is AR_AUGMENTED_FACE_MODE_DISABLED .

Properties

Disable augmented face mode.

Face 3D mesh is enabled.

Augmented Faces is currently only supported when using the front-facing (selfie) camera.

ArCloudAnchorMode

ArCloudAnchorMode

Describes the desired behavior of the ARCore Cloud Anchor API.

The Cloud Anchor API uses feature maps to persist an anchor throughout sessions and across devices. See the Cloud Anchors developer guide for more information.

The default value is AR_CLOUD_ANCHOR_MODE_DISABLED . Use ArConfig_setCloudAnchorMode to set the Cloud Anchor API mode and ArSession_configure to configure the session.

Properties

The Cloud Anchor API is disabled.

Calling ArSession_hostCloudAnchorAsync and ArSession_resolveCloudAnchorAsync will return AR_ERROR_CLOUD_ANCHORS_NOT_CONFIGURED .

This is the default value.

The Cloud Anchor API is enabled.

ArSession_hostCloudAnchorAsync and ArSession_resolveCloudAnchorAsync can be used to host and resolve Cloud Anchors.

Using this mode requires your app to do the following:

Use ArConfig_setCloudAnchorMode to set the Cloud Anchor API mode and ArSession_configure to configure the session.

ArDepthMode

ArDepthMode

Selects the desired depth mode.

Not all devices support all modes, use ArSession_isDepthModeSupported to find whether the current device and the selected camera support a particular depth mode.

Properties

On supported devices the best possible depth is estimated based on hardware and software sources.

Available sources of automatic depth are:

  • Depth from motion, using the main RGB camera
  • Hardware depth sensor, such as a time-of-flight sensor (or ToF sensor)

Provides depth estimation for every pixel in the image, and works best for static scenes. For a list of supported devices, see: https://developers.google.com/ar/devices Adds significant computational load.

With this mode enabled, ArFrame_hitTest also returns ArDepthPoint in the output ArHitResultList , which are sampled from the generated depth image for the current frame if available.

On ARCore supported devices that also support the Depth API, provides a "raw", mostly unfiltered, depth image ( ArFrame_acquireRawDepthImage16Bits ) and depth confidence image ( ArFrame_acquireRawDepthConfidenceImage ).

The raw depth image is sparse and does not provide valid depth for all pixels. Pixels without a valid depth estimate have a pixel value of 0.

Raw depth data is also available when AR_DEPTH_MODE_AUTOMATIC is selected.

Raw depth is intended to be used in cases that involve understanding of the geometry in the environment.

ArFlashMode

ArFlashMode

Selects the desired behavior of the camera flash subsystem.

See the documentation page for more information on using the device's flash.

Properties

Flash is off.

Flash is on.

ArFocusMode

ArFocusMode

Selects the desired behavior of the camera focus subsystem.

Properties

Auto-focus is enabled.

Focus is fixed.

ArGeospatialMode

ArGeospatialMode

Describes the desired behavior of the ARCore Geospatial API.

The Geospatial API uses a combination of Google's Visual Positioning System (VPS) and GPS to determine the geospatial pose.

The Geospatial API is able to provide the best user experience when it is able to generate high accuracy poses. However, the Geospatial API can be used anywhere, as long as the device is able to determine its location, even if the available location information has low accuracy.

  • In areas with VPS coverage, the Geospatial API is able to generate high accuracy poses. This can work even where GPS accuracy is low, such as dense urban environments. Under typical conditions, VPS can be expected to provide positional accuracy typically better than 5 meters and often around 1 meter, and a rotational accuracy of better than 5 degrees. Use ArSession_checkVpsAvailabilityAsync to determine if a given location has VPS coverage.
  • In outdoor environments with few or no overhead obstructions, GPS may be sufficient to generate high accuracy poses. GPS accuracy may be low in dense urban environments and indoors.

A small number of ARCore supported devices do not support the Geospatial API. Use ArSession_isGeospatialModeSupported to determine if the current device is supported. Affected devices are also indicated on the ARCore supported devices page .

When the Geospatial API and the Depth API are enabled, output images from the Depth API will include terrain and building geometry when in a location with VPS coverage. See the Geospatial Depth Developer Guide for more information.

The default value is AR_GEOSPATIAL_MODE_DISABLED . Use ArConfig_setGeospatialMode to set the desired mode.

Properties

The Geospatial API is disabled.

When a configuration with AR_GEOSPATIAL_MODE_DISABLED becomes active on the ArSession , current ArEarth and ArAnchor objects created from ArEarth_acquireNewAnchor will stop updating; have their ArTrackingState set to AR_TRACKING_STATE_STOPPED and should be released; and ArSession_acquireEarth will return NULL . If re-enabled, you will need to call ArSession_acquireEarth to acquire ArEarth again.

The Geospatial API is enabled.

ArSession_acquireEarth will create valid ArEarth objects when a configuration becomes active with this mode through ArSession_configure .

Using this mode requires your app do the following:

Location is tracked only while ArSession is resumed. While ArSession is paused, ArEarth 's ArTrackingState will be AR_TRACKING_STATE_PAUSED .

For more information, see documentation on the Geospatial API on Google Developers .

When the Geospatial API and the Depth API are enabled, output images from the Depth API will include terrain and building geometry when in a location with VPS coverage. See the Geospatial Depth Developer Guide for more information.

This mode is not compatible with the front-facing (selfie) camera. If ArGeospatialMode is AR_GEOSPATIAL_MODE_ENABLED on a session using AR_CAMERA_CONFIG_FACING_DIRECTION_FRONT , ArSession_configure will return AR_ERROR_UNSUPPORTED_CONFIGURATION .

Not all devices support AR_GEOSPATIAL_MODE_ENABLED , use ArSession_isGeospatialModeSupported to check if the current device and selected camera support enabling this mode.

ArImageStabilizationMode

ArImageStabilizationMode

Describes the behavior of the Electronic Image Stabilization (EIS) API.

When enabled, EIS smoothes the camera feed and helps correct video shakes in the camera preview. See the Electronic Image Stabilization Developer Guide for more information.

Not all devices support all modes. Use ArSession_isImageStabilizationModeSupported to detect if a ArImageStabilizationMode is supported with the selected camera configuration.

Attempting to use ArSession_configure to configure a ArImageStabilizationMode mode on a device that isn't supported, ArSession_configure will return AR_ERROR_UNSUPPORTED_CONFIGURATION .

The default value is AR_IMAGE_STABILIZATION_MODE_OFF . Use ArConfig_setImageStabilizationMode to set the desired mode.

Properties

Image stabilization is off.

This is the default mode.

ArLightEstimationMode

ArLightEstimationMode

Select the behavior of the Lighting Estimation subsystem.

Properties

Lighting Estimation is enabled, generating a single-value intensity estimate and three (R, G, B) color correction values.

Lighting Estimation is disabled.

Lighting Estimation is enabled, generating inferred Environmental HDR Lighting Estimation in linear color space.

Note, AR_LIGHT_ESTIMATION_MODE_ENVIRONMENTAL_HDR is not supported when using the front-facing (selfie) camera.

ArPlaneFindingMode

ArPlaneFindingMode

Select the behavior of the plane detection subsystem.

Properties

Plane detection is disabled.

Detection of only horizontal planes is enabled.

Detection of horizontal and vertical planes is enabled.

Detection of only vertical planes is enabled.

ArSemanticMode

ArSemanticMode

Describes the desired behavior of Scene Semantics.

Scene Semantics uses a machine learning model to label each pixel from the camera feed with a ArSemanticLabel . See the Scene Semantics Developer Guide for more information.

The Scene Semantics API is currently able to distinguish between outdoor labels specified by ArSemanticLabel . Usage indoors is currently unsupported and may yield unreliable results.

A small number of ARCore supported devices do not support the Scene Semantics API. Use ArSession_isSemanticModeSupported to query for support for Scene Semantics. Affected devices are also indicated on the ARCore supported devices page .

The default value is AR_SEMANTIC_MODE_DISABLED . Use ArConfig_setSemanticMode to set the desired mode.

Properties

The Scene Semantics API is disabled.

Calls to ArFrame_acquireSemanticImage , ArFrame_acquireSemanticConfidenceImage , and ArFrame_getSemanticLabelFraction will not return valid results.

This is the default mode.

The Scene Semantics API is enabled.

Calls to ArFrame_acquireSemanticImage , ArFrame_acquireSemanticConfidenceImage , and ArFrame_getSemanticLabelFraction will return valid results.

Use ArConfig_setSemanticMode to set this mode.

ArStreetscapeGeometryMode

ArStreetscapeGeometryMode

Describes the desired behavior of the Geospatial Streetscape Geometry API.

The Streetscape Geometry API provides polygon meshes of terrain, buildings, and other structures in a radius surrounding the device. See the Streetscape Geometry Developer Guide for additional information.

When Streetscape Geometry is enabled, ArSession_getAllTrackables and ArFrame_getUpdatedTrackables may additionally return ArStreetscapeGeometry trackables.

The Streetscape Geometry API requires both ArStreetscapeGeometryMode to be set to AR_STREETSCAPE_GEOMETRY_MODE_ENABLED and ArGeospatialMode to be set to AR_GEOSPATIAL_MODE_ENABLED .

The default value is AR_STREETSCAPE_GEOMETRY_MODE_DISABLED . Use ArConfig_setStreetscapeGeometryMode to set the desired mode.

Properties

The Streetscape Geometry API is disabled.

This is the default mode.

The Streetscape Geometry API is enabled.

ArSession_getAllTrackables and ArFrame_getUpdatedTrackables may additionally return ArStreetscapeGeometry trackables. This mode requires ArGeospatialMode to be set to AR_GEOSPATIAL_MODE_ENABLED .

Use ArConfig_setStreetscapeGeometryMode to set this mode.

ArTextureUpdateMode

ArTextureUpdateMode

Describes how ARCore will update the camera texture.

See Vulkan Rendering developer guide for more information.

The default value is AR_TEXTURE_UPDATE_MODE_BIND_TO_TEXTURE_EXTERNAL_OES . Use ArConfig_setTextureUpdateMode to set the desired mode.

Properties

ARCore provides the camera image through the GL_TEXTURE_EXTERNAL_OES texture provided to ArSession_setCameraTextureName or ArSession_setCameraTextureNames .

This is the default mode.

ARCore provides the camera image through an AHardwareBuffer .

The hardware buffer for an ArFrame is accessible via ArFrame_getHardwareBuffer . See documentation on Native Hardware Buffer in the Android NDK.

The client app is responsible for binding it to a GL_TEXTURE_EXTERNAL_OES (OpenGL ES) or VkImage (Vulkan).

When a configuration is active with AR_TEXTURE_UPDATE_MODE_EXPOSE_HARDWARE_BUFFER , texture names provided to ArSession_setCameraTextureName and ArSession_setCameraTextureNames are ignored.

This is only available on Android API levels 27 and above. Using ArSession_configure to set AR_TEXTURE_UPDATE_MODE_EXPOSE_HARDWARE_BUFFER on an incompatible device will return AR_ERROR_UNSUPPORTED_CONFIGURATION .

ArUpdateMode

ArUpdateMode

Selects the behavior of ArSession_update .

Properties

ArSession_update will wait until a new camera image is available, or until the built-in timeout (currently 66ms) is reached.

On most devices the camera is configured to capture 30 frames per second. If the camera image does not arrive by the built-in timeout, then ArSession_update will return the most recent ArFrame object.

ArSession_update will return immediately without blocking.

If no new camera image is available, then ArSession_update will return the most recent ArFrame object.

Typedefs

ArConfig

struct ArConfig_ ArConfig

An opaque session configuration object ( value type ).

Functions

ArConfig_create

 void 
  
 ArConfig_create 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 ** 
 out_config 
 ) 

Creates a new configuration object and initializes it to a sensible default configuration.

Plane detection and Lighting Estimation are enabled, and blocking update is selected. This configuration is guaranteed to be supported on all devices that support ARCore.

ArConfig_destroy

void ArConfig_destroy( ArConfig 
*config
)

Releases memory used by the provided configuration object.

ArConfig_getAugmentedFaceMode

 void 
  
 ArConfig_getAugmentedFaceMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArAugmentedFaceMode 
 
  
 * 
 augmented_face_mode 
 ) 

Stores the currently configured augmented face mode into *augmented_face_mode .

ArConfig_getAugmentedImageDatabase

 void 
  
 ArConfig_getAugmentedImageDatabase 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArAugmentedImageDatabase 
 
  
 * 
 out_augmented_image_database 
 ) 

Returns the image database from the session configuration.

This function returns a copy of the internally stored image database, so any changes to the copy will not affect the current configuration or session.

If no ArAugmentedImageDatabase has been configured, a new empty database will be constructed using ArAugmentedImageDatabase_create .

ArConfig_getCloudAnchorMode

 void 
  
 ArConfig_getCloudAnchorMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArCloudAnchorMode 
 
  
 * 
 out_cloud_anchor_mode 
 ) 

Gets the current Cloud Anchor mode from the ArConfig .

ArConfig_getDepthMode

 void 
  
 ArConfig_getDepthMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArDepthMode 
 
  
 * 
 out_depth_mode 
 ) 

Gets the currently configured desired ArDepthMode .

ArConfig_getFlashMode

 void 
  
 ArConfig_getFlashMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArFlashMode 
 
  
 * 
 out_flash_mode 
 ) 

Gets the current camera flash mode set on this config object.

Details
Parameters
session
The ARCore session.
config
The configuration object.
out_flash_mode
The current camera flash mode.

ArConfig_getFocusMode

 void 
  
 ArConfig_getFocusMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArFocusMode 
 
  
 * 
 focus_mode 
 ) 

Stores the currently configured desired focus mode into *focus_mode .

Note: The desired focus mode may be different from the actual focus mode. See the ARCore supported devices page for a list of affected devices.

ArConfig_getGeospatialMode

 void 
  
 ArConfig_getGeospatialMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArGeospatialMode 
 
  
 * 
 out_geospatial_mode 
 ) 

Gets the current geospatial mode set on the configuration.

Details
Parameters
session
The ARCore session.
config
The configuration object.
out_geospatial_mode
The current geospatial mode set on the config.

ArConfig_getImageStabilizationMode

 void 
  
 ArConfig_getImageStabilizationMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArImageStabilizationMode 
 
  
 * 
 out_image_stabilization_mode 
 ) 

Gets the camera image stabilization mode set on this config object.

Details
Parameters
session
The ARCore session.
config
The configuration object.
out_image_stabilization_mode
The current EIS mode.

ArConfig_getInstantPlacementMode

 void 
  
 ArConfig_getInstantPlacementMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArInstantPlacementMode 
 
  
 * 
 instant_placement_mode 
 ) 

Gets the current Instant Placement Region mode from the ArConfig .

ArConfig_getLightEstimationMode

 void 
  
 ArConfig_getLightEstimationMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArLightEstimationMode 
 
  
 * 
 light_estimation_mode 
 ) 

Stores the currently configured ArLightEstimationMode mode into *light_estimation_mode .

ArConfig_getPlaneFindingMode

 void 
  
 ArConfig_getPlaneFindingMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArPlaneFindingMode 
 
  
 * 
 plane_finding_mode 
 ) 

Stores the currently configured plane finding mode into *plane_finding_mode .

ArConfig_getSemanticMode

 void 
  
 ArConfig_getSemanticMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArSemanticMode 
 
  
 * 
 out_semantic_mode 
 ) 

Gets the currently configured ArSemanticMode .

ArConfig_getStreetscapeGeometryMode

 void 
  
 ArConfig_getStreetscapeGeometryMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArStreetscapeGeometryMode 
 
  
 * 
 out_streetscape_geometry_mode 
 ) 

Gets the current Streetscape Geometry mode set on the configuration.

Details
Parameters
session
The ARCore session.
config
The configuration object.
out_streetscape_geometry_mode
The current ArStreetscapeGeometry mode set on the config.

ArConfig_getTextureUpdateMode

 void 
  
 ArConfig_getTextureUpdateMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArTextureUpdateMode 
 
  
 * 
 out_texture_update_mode 
 ) 

Stores the desired texture update mode from the given config into out_texture_update_mode .

ArConfig_getUpdateMode

 void 
  
 ArConfig_getUpdateMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
 const 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArUpdateMode 
 
  
 * 
 update_mode 
 ) 

Stores the currently configured behavior of ArSession_update into *update_mode .

ArConfig_setAugmentedFaceMode

 void 
  
 ArConfig_setAugmentedFaceMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArAugmentedFaceMode 
 
  
 augmented_face_mode 
 ) 

Sets the desired face mode.

See ArAugmentedFaceMode for available options. Augmented Faces is currently only supported when using the front-facing (selfie) camera.

ArConfig_setAugmentedImageDatabase

 void 
  
 ArConfig_setAugmentedImageDatabase 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
 const 
  
  ArAugmentedImageDatabase 
 
  
 * 
 augmented_image_database 
 ) 

Sets the image database in the session configuration.

Any images in the currently active image database that have a AR_TRACKING_STATE_TRACKING or AR_TRACKING_STATE_PAUSED state will immediately be set to the AR_TRACKING_STATE_STOPPED state if a different or NULL image database is set.

This function makes a copy of the image database.

ArConfig_setCloudAnchorMode

 void 
  
 ArConfig_setCloudAnchorMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArCloudAnchorMode 
 
  
 cloud_anchor_mode 
 ) 

Sets the desired cloud configuration.

See ArCloudAnchorMode for available options.

ArConfig_setDepthMode

 void 
  
 ArConfig_setDepthMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArDepthMode 
 
  
 mode 
 ) 

Sets the desired ArDepthMode .

Notes:

ArConfig_setFlashMode

 void 
  
 ArConfig_setFlashMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArFlashMode 
 
  
 flash_mode 
 ) 

Sets the camera flash mode.

See ArFlashMode for available options. The default flash mode is AR_FLASH_MODE_OFF . Note, on devices where camera flash hardware is not supported, calling this function will do nothing. See the documentation page for more information on how to query device flash capability.

Details
Parameters
session
The ARCore session.
config
The configuration object.
flash_mode
The desired camera flash mode.

ArConfig_setFocusMode

 void 
  
 ArConfig_setFocusMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArFocusMode 
 
  
 focus_mode 
 ) 

On supported devices, selects the desired camera focus mode.

On these devices, the default desired focus mode is currently AR_FOCUS_MODE_FIXED , although this default might change in the future. See the ARCore supported devices page for a list of devices on which ARCore does not support changing the desired focus mode.

For optimal AR tracking performance, use the focus mode provided by the default session config. While capturing pictures or video, use AR_FOCUS_MODE_AUTO . For optimal AR tracking, revert to the default focus mode once auto focus behavior is no longer needed. If your app requires fixed focus camera, set AR_FOCUS_MODE_FIXED before enabling the AR session. This ensures that your app always uses fixed focus, even if the default camera config focus mode changes in a future release.

To determine whether the configured ARCore camera supports auto focus, check ACAMERA_LENS_INFO_MINIMUM_FOCUS_DISTANCE , which is 0 for fixed-focus cameras.

The desired focus mode is ignored while an MP4 dataset file is being played back.

ArConfig_setGeospatialMode

 void 
  
 ArConfig_setGeospatialMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArGeospatialMode 
 
  
 geospatial_mode 
 ) 

Sets the Geospatial mode.

See ArGeospatialMode for available options.

ArConfig_setImageStabilizationMode

 void 
  
 ArConfig_setImageStabilizationMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArImageStabilizationMode 
 
  
 image_stabilization_mode 
 ) 

Sets the camera image stabilization mode.

See ArImageStabilizationMode for available options. Currently, the default image stabilization mode is AR_IMAGE_STABILIZATION_MODE_OFF .

Details
Parameters
session
The ARCore session.
config
The configuration object.
image_stabilization_mode
The desired camera image stabilization mode.

ArConfig_setInstantPlacementMode

 void 
  
 ArConfig_setInstantPlacementMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArInstantPlacementMode 
 
  
 instant_placement_mode 
 ) 

Sets the current Instant Placement mode from the ArConfig .

ArConfig_setLightEstimationMode

 void 
  
 ArConfig_setLightEstimationMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArLightEstimationMode 
 
  
 light_estimation_mode 
 ) 

Sets the desired ArLightEstimationMode .

See ArLightEstimationMode for available options.

ArConfig_setPlaneFindingMode

 void 
  
 ArConfig_setPlaneFindingMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArPlaneFindingMode 
 
  
 plane_finding_mode 
 ) 

Sets the desired plane finding mode.

See ArPlaneFindingMode for available options.

ArConfig_setSemanticMode

 void 
  
 ArConfig_setSemanticMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArSemanticMode 
 
  
 semantic_mode 
 ) 

Sets the desired configuration for the Scene Semantics API.

See ArSemanticMode for available options and usage information.

Not all devices support all modes. Use ArSession_isSemanticModeSupported to determine whether the current device and the selected camera support a particular semantic mode.

ArConfig_setStreetscapeGeometryMode

 void 
  
 ArConfig_setStreetscapeGeometryMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArStreetscapeGeometryMode 
 
  
 streetscape_geometry_mode 
 ) 

Sets the desired configuration for the Streetscape Geometry API.

See ArStreetscapeGeometryMode for available options and usage information.

ArConfig_setTextureUpdateMode

 void 
  
 ArConfig_setTextureUpdateMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArTextureUpdateMode 
 
  
 texture_update_mode 
 ) 

Sets the desired texture update mode.

See ArTextureUpdateMode for available options.

Some values for texture_update_mode may not be supported on the current device. If an unsupported value is set, ArSession_configure will throw AR_ERROR_UNSUPPORTED_CONFIGURATION .

ArConfig_setUpdateMode

 void 
  
 ArConfig_setUpdateMode 
 ( 
  
 const 
  
  ArSession 
 
  
 * 
 session 
 , 
  
  ArConfig 
 
  
 * 
 config 
 , 
  
  ArUpdateMode 
 
  
 update_mode 
 ) 

Sets the behavior of ArSession_update .

See ArUpdateMode for available options.

Create a Mobile Website
View Site in Mobile | Classic
Share by: