AR Foundation supports the new iPhone 12 Pro LiDAR features with 4.0 (verified) and 4.1 (preview) versions. AR Foundation 4.0 introduced ARKit scene mesh reconstruction support which is now available on the new iPhone 12 Pro through the ARMeshManager. AR Foundation 4.1-preview introduced environment depth textures and automatic occlusion. These functionalities also operate on the new iPhone 12 Pro through the AROcclusionManager. With the addition of a LiDAR scanner, AR developers need to consider thermal effects that come with the new hardware. iOS exposes 4 levels of thermal state as described in the thermal state documentation. The “ThermalState” scene in the arfoundation-samples project provides a basic example for how to interact with thermal state changes by disabling nonessential features as the thermal state increases. AR developers should note that ARKit on devices in the Serious thermal state will automatically be throttled to a maximum 30 FPS. Furthermore, devices in the Critical thermal state will stop all ARKit functionalities. These measures serve to protect the device and adapt AR experiences as the temperature of the device changes. In the arfoundation-samples project, the following two files provide an interface for querying the current thermal state and for subscribing to thermal state change events. ThermalStateForIOS.cs ThermalStateForIOSProvider.mm The sample “ThemalState” scene demonstrates how to use this thermal state information to disable less critical AR features as the thermal state increases. The ThermalStateHandling.cs illustrates how to query for the current thermal state and how to subscribe to the thermal state event. For the purposes of this sample, the sets of AR features serve to exhibit how to respond to thermal state changes. In developing an AR app, developers must choose which AR features are critical to the functioning of the app and which AR features are nonessential. Understanding the thermal impact of an app is crucial to providing a robust experience to the users. Finally, testing an app’s response to thermal state changes is easy in Xcode. In the main menu in Xcode with an iOS device connected, open the menu Window> Devices and Simulators. With a connected iOS device selected, setting a thermal state device condition simulates the thermal state on the connected device. When running an iOS app, the Energy Impact tab on the Xcode Debug Navigator illustrates the current and historical thermal state as well as any simulated device condition. More information on using Xcode thermal state conditions is available in this video for Designing for Adverse Network and Temperature Conditions.