Far plane forced to 100 meters

Include the following details (edit as applicable):

  • Issue category: Semantic Segmentation / Real-time Mapping-Depth
  • Device type & OS version: Android / iOS / Other Ex. iPhone 8+ on iOS 13
  • Host machine & OS version: Mac / Windows / Linux / Other Ex. Mac on Big Sur x.x
  • Issue Environment : Unity Remote / Unity Mock / On Device / Dev Portal
  • Xcode version:
  • ARDK version: 1.2.0
  • Unity version: 2020.3.28f1

Description of the issue:

I’ve noticed that the camera far clip is locked at 100m and in many other parts of ARDK’s code the same value is hard coded to keep the far plane at a maximum of 100m.
This is a big issue in my project, since I need to render objects that appear much farther than 100m.

Is there a way to go around this limitation?

P.S.: at the moment we are stuck at 1.2.0 and it’s unlikely that we’re going to upgrade the version, because it may break the code base, so VPS is not an option for placing objects far from the camera.

Hi Filippo,

You’re correct, depth will only report up to 100m, so the occlusion may break your rendering. Keep in mind the clipping planes can be modified to your preference.

In reference to your question about objects farther than 100m, try using sky segmentation or another technique for occluding far objects.

Another option is to use layers + scale to produce the illusion of a far away object.

Instead of setting the x,y,z pose of the object to 100m away, set it to 10m away, manipulate the scale, and have all other virtual objects draw over your very far object.

Apologies i know this is a dead thread but for people (like me) coming back here later i managed to fix this doing the following:

  • have a base camera with depth occlusion for objects close by or on the ground
  • have an overlay camera that renders objects on the horizon or in the sky, add segmentation manager to this one.
  • finally add the camera as an overlay to the base camera

In this way you can use depth for objects in the vicinity of the user and segmentation for large scale objects. The far away objects will still be occluded by objects close by, just in a lower quality (segmented instead of depth tested)