Build guide for VisionOS - WEKIT-ECS/MIRAGE-XR GitHub Wiki
Tool / SDK | Version | Notes |
---|---|---|
Unity | 6000.0.40 LTS + VisionOS Support (PolySpatial 2.0.4) | Install via Unity Hub → Add Modules → visionOS Support |
Xcode | 16.2 | Includes visionOS 2.0 SDK |
Apple Developer Program | Individual / Org | Must be a member of the WEKIT team |
This section will go through the build process step by step.
- Make sure you are on the right branch. There are three repositories that you need to check are up to date and on the right branch.
- MirageXR
- lib-lee
From MirageXR root:
cd Packages/com.wekit-ecs.lib-lee
- MirageXR-conciliator
From MirageXR root:
cd Packages/com.wekit-ecs.MirageXR-conciliator
- Moving into Unity, in the top left find
File > Build Profiles
and check that you are on the correct platform and have the correct target SDK set. It should look something like this:
-
To build the addressables on VisionOS navigate to
Window > Asset Management > Addressables > Groups
. It should open a floating window that can be pinned to any collection of windows. -
In the addressables groups window click on
Play Mode Script
and ensure it is set toUse Existing Build (VisionOS)
. Then clickBuild > New Build > Default Build Script
- If the build is successful you can find a message in the console saying the Addressable content build was a success and the Addressables Report window should show up with the time since last successful build started. (Should be around 10-12 minutes for an M2 Mac)
⚠️ Note:
The Addressables build is not required every time there are changes. However if there is no time pressure and as a sanity check it is good to preform. For more info on the asset bundles checkAssets Mapping Table
under theCompiling MirageXR
page. If the Library folder is deleted the addressables will have to be rebuilt
- After the addressables are built navigate back to the build profiles (
File > Build Profiles
) and click Build. Select a directory to build the project to, preferably an empty directory or one that already has a previous build in it.
- If the build was successful it should open the files in a Finder window. Double click the .xcodeproj file.
- Navigate to the general tab by opening up the Project Navigator in the top left and selecting Unity-VisionOS:
- Under the General page check that the version number is correct and increment it if needed.
- Navigate to the Signing and capabilities tab and select Automatically manage signing.
- For Team select WEKIT EXPERIENCE CAPTURING SOLUTIONS LIMITED
- To archive the build got to the top menu bar and select
Product > Archive
. The build should now start.
- Once the build have completed the Organizer window should open showing all the saved archived builds. If it does not open you can find it under
Window > Organizer
.
- In the Organizer window select the latest build and press Distribute App
- A window should pop up, App Store Connect should already be selected and you can press distribute.
- A progress bar will show up and show when the build has been uploaded successfully.
- Log into App Store Connect and select Apps. Then select MirageXR XRDevelop.
- Select the TestFlight page.
- Once on the TestFlight page find the build by the version number. Initially the build will show up as depicted below.
- After some time (this might be anywhere from 10 seconds to 10 minutes) it should show up like this.
- Click Manage and select None of the algorithms mentioned above then press Save.
- Click the build number to be able to write a description once done press Save.
Errors | How to Fix |
---|---|
Missing provisioning profile error in Xcode |
Ensure your Apple Developer account is configured in Xcode. And the app is properly signed. |
Undefined symbols for architecture arm64 |
Clean the build folder ( |
Vuforia errors in unity console when building addressables. |
Find the Vuforia scripts folder in Packages and edit the assembly definitions folder to exclude "visionOS". |
GLTF errors that do not disappear when clearing the console. |
Remove the Andreas Atteneder GLTF package from Package manager. Re-install it, then update the dependency installed Unity GLTF package. Once it is updated to the latest Remove the package. The latest version should be removed and replaced with a unity GLTF 6.0.1. To re-install the Andreas Atteneder GLTF package, navigate as shown and paste this: |
The VisisonOS build has no interaction (impossible to press any buttons or interact with anything). |
Open Project settings, under XR Plugin Management make sure the VisionOS settings looks like this: |
The VisionOS build does not open/crashes on start. |
This is more often than not caused by errors in the code, however if there is a splash image set and Show Splash Screen is turned on make sure this is turned of in |
⚠️ Note:
If the Unity or the Xcode build fails it can often be fixed by closing unity, deleting the Library folder and starting the build process from the top. The Library folder is in the MirageXR root and can be deleted from finder or in MirageXR root:rm -rf Library/