Occlusion only works after disabling/enabling ARDepthManager

  • Issue category: Occlusion
  • Device type & OS version: iOS
  • Host machine & OS version: M1 MacBook Pro on macOS Monterey 12.5
  • Issue Environment : Unity Mock / On Device
  • ARDK version: 2.1.0
  • Unity version: 2021.3.7

I am trying to get the ScreenSpace Mesh occlusion working using the ARDepthManager and it doesn’t seem to work when the scene starts. It only starts working when I disable and then re-enable the ARDepthManager component in the Unity editor. The behavior is the same on the actual iOS device.
I tried changing the occlusion type in the ARDepthManager to None or Depth Buffer but that still doesn’t get the occlusion working.

I noticed that the order of the Command Buffers on the main camera changes when I disable/re-enable the ARDepthManager component… could it be something with the order of those that matters? Also, if I just remove the MockFrameRenderer command buffer from the main camera, the occlusion starts working again, although the mock frame isn’t rendered.



Hello Julian,

I tried reproducing the issue with the same ARDK version, though I was not able to recreate your issue. Disabling/enabling ARDepthManager doesn’t make a difference on my end.

For more information on enabling occlusions using ScreenSpaceMesh please refer to this developer documentation.

Please let me know if this helps.

Just reporting back that this issue seems to have been resolved for me with ARDK 2.2. Now occlusion is working normally again from the first app startup.

1 Like

This topic was automatically closed 2 hours after the last reply. New replies are no longer allowed.