simulator crash on "Depth Clip Mode is not supported on this device"

working on an app with SceneKit and Metal. I can build and run the project on device (iPhone 11 Pro), but when I run on the simulator, it crashes with this error message. I'm using SCNTechnique, SCNProgram, and SCNNodeRenderDelegate to achieve various effects during rendering.

MacBook Pro (2016), macOS 11 beta 4 (20A5343i), Xcode 12 beta 4 (12A8179i)

Anyone else?

Replies

Yes, I have the same issue. When using SCNNodeRenderDelegate the simulator crashes. I cannot find any call for Depth Clip Mode in my code, but when creating a MTLRenderPipelineDescriptor I have to set the clip mode to always pass. Using Xcode 11 this worked in the simulator, but when using Xcode 12 beta 4 up to beta 6 (12A8189n) most simulators crash (did not test all). I'm not sure how to avoid this except disabling all these nodes from SceneKit rendering. While debugging I saw that the call to setDepthClipMode is already done before the rendering occurs.

However, I'm not sure - until now I cannot be sure that this is not just my own mistake and I just cannot find it. Please check if you are calling "setDepthClipMode" from inside your code and if not please reply. Maybe, then we have found a bug in the simulator.

Side note: The documentation says:

Use depth clipping to ignore fragments outside the z-axis boundaries of a viewing volume. Depth clipping is supported on all macOS GPU families and iOS family 4 and later.

The simulator is supporting family 2 or at least not family 4 - for this reason you will also have trouble with 16k textures.


Regards,
Jürgen
I have the same problem in an app using ARKit, SCNKit and Metal. I do not call setDepthClipMode anywhere. Everything worked fine in the simulator in XCode 11, but from XCode 12 beta 4 to 6 (at least) I get this error when running in the simulator and the app crashes. I works on device, though. I have no clue what to do, I hope someone finds a solution.
I have the same issue using XCode 12 release version. My Scenekit app worked fine on Xcode 11, but now fails in multiple XCode iPad simulators. However, my app runs fine on device (iPad Air, Gen3). In my code, the crash appears to occur when I enable an overlay scene. App runs fine on the Simulator if I select OpenGL ES as the rendering API instead of Default (Metal).
I just got this error after doing the 5.3 update today. Works on device but not on simulator.
I did find that commenting out SCNCamera's zNear and zFar prevented the app from crashing immediately. Not a practical solution as it doesn't display the scene either. I don't call "setDepthClipMode".
I have resolved the issue in our own project by unchecking "API Validation" under scheme -> Diagnostics.