Instance Property

environmentTexturing

The behavior ARKit uses for generating environment textures.

Declaration

var environmentTexturing: ARWorldTrackingConfiguration.EnvironmentTexturing { get set }

Discussion

Environment textures are cube-map textures that depict the view in all directions from a specific point in a scene. In 3D asset rendering, environment textures are the basis for image-based lighting algorithms where surfaces can realistically reflect light from their surroundings. ARKit can generate environment textures during an AR session using camera imagery, allowing SceneKit or a custom rendering engine to provide realistic image-based lighting for virtual objects in your AR experience.

To enable texture map generation for your configuration, change this property (from its default value of ARWorldTrackingConfiguration.EnvironmentTexturing.none):

In both cases, ARKit automatically generates environment textures as the session collects camera imagery. Use a delegate method such as session(_:didUpdate:) to find out when a texture is available, and access it from the anchor's environmentTexture property.

If you display AR content using ARSCNView and the automaticallyUpdatesLighting option, SceneKit automatically retrieves AREnvironmentProbeAnchor texture maps and uses them to light the scene.

See Also

Using Environment-Based Lighting

enum ARWorldTrackingConfiguration.EnvironmentTexturing

Options for generating environment textures in a world-tracking AR session.

class AREnvironmentProbeAnchor

An object that provides environmental lighting information for a specific area of space in a world-tracking AR session.