Metal API Validation error when running in AVP simulator

I am porting a Quest VR app to AVP, with the latest supported version (2022.3.18f1). I can build in Unity & generate an Xcode project. But when building & running in the AVP simulator of Xcode, I get this error in the debug navigator, that causes my app to pause in the simulator:
Metal API Validation Enabled
Could not locate file ‘default-binaryarchive.metallib’ in bundle.

Any ideas how I can solve this?

1 Like

For now you need to disable Metal API Validation, details on how here: Validating your app’s Metal API usage | Apple Developer Documentation

Thanks for the tip - but it didn`t work: I get the same error, but now precedented by different log lines:

Metal GPU Frame Capture Enabled (/System/Library/PrivateFrameworks/GPUToolsCapture.framework/GPUToolsCapture)

Could not locate file 'default-binaryarchive.metallib' in bundle.

I’d also note, the VisionsOS simulator is locked to AppleGPUFamily2, a very low spec GPU. Things that would work just fine on the device may report validation errors in the simulator. Even if metal API validation is disabled, it may still produce deeper errors that would not occur on the actual device.

This does unfortunately make any serious development quite difficult in the simulator as some of the more advanced rendering functionality in Unity may just not work, or produce errors.

I’ve reported this issue to Apple and tried to convey to them the importance, but I’ve unfortunately not heard any word on if they intend to increase the AppleGPUFamily to higher than 2.

Just keep in mind, right now if you run into lots of metal API errors in the simulator, it may only be the simulator.

1 Like

Thanks for the input. Not being able to work with the simulator is really a problem if you can’t buy an actual device in your country… I’ve requested an AVP Developer Kit, but didn’t get any reply…