To preface, I’m as nooby as they come, but playing around with Unity to learn some new skills and having a great time!
I want to play around with AR/MR (as opposed to VR). In this particular case I want to have a turtle that walks around my apartment floor. I can get the basics of this working with the base AR template in Unity and running it on iOS, however I cannot seem to get it working at all on my Meta Quest 3. Running the project just results in a black screen.
On the flip side, if I use the MR project template, I can get it running on Meta Quest 3, but on iOS there’s no passthrough camera feed and no way to select any of the options.
Am I doing something really silly here that’s an obvious fix? I don’t really need input controls per se (in terms of hand tracking or anything), if anything I might use an external game controller, but I just want a core base that can detect and spawn things on the floor of my apartment for both iOS and Meta Quest 3.
If the features you need are available with the Meta OpenXR plugin for AR Foundation, I suggest to use that. Then you develop for AR Foundation and should be able to deploy on different devices.
If you want to do more complex input handling XR IT could help.
Did you follow a guide for the setup you currently have? what did you already try?
The templates are not always up to date, so I usually start from a blank project and build from there
When you change platforms, be sure to also update the plugin provider for the appropriate platform in Project Settings > XR Plug-in Management. For Meta you need to select OpenXR and NOT Google ARCore.
What is the recommended way for projects that target both, Android handheld devices AND Android on Quest 3? Is there any way to have OpenXR and Google ARCore checked at the same time?
No, you cannot have them both checked at the same time. Like DevDunk said, you will need to make a separate build for each platform you want to target. The same way you would need to make a separate build for any Unity project that targets different platforms.
As for the recommended way, as long as your write your app in a cross platform way, building for different targets is very straight forward. You would first build for Meta Quest platforms and then change your build target and settings for iOS and build for iOS. Refer to our docs on how to safely write cross platform code like checking if a feature is supported on your target platform.