Inspiration
Apple has various APIs that allow efficient 3D space capturing, rendering and previewing. A user can capture his physical space with great ease, add virtual content inside, share it with his friends, preview it on the Vision Pro and much more.
Instead of taking the Unity / Unreal route, we decided to really harness Apple native APIs and build an immersive experience with them.
What it does
It allows for the user to capture his surrounding space as a 3D model on his phone. The polygonal representation, positions and orientations of each object are saved with relationship to an image tracker that the user scans to start the experience.
Once the space has been scanned, all kinds of virtual content can be further put inside. In the case of Puma, 3D models of the apparel and shoes can easily be imported and placed around the scene.
Once done, the whole 3D environment can be shared to the Vision Pro for easy preview.
How we built it
We use Apple native APIs extensively allowing for best performance and speed.
The surrounding space shape and its polygonal representation is generated with the Room Plan API. The 3D rendering is done with RealityKit. A set of custom eye catching shaders have been developed to showcase the Vision Pro capabilities.
Challenges we ran into
Correctly positioning the scanned environment models according to the image tracker required some matrix math.
Accomplishments that we're proud of
- Ease of use
- Responsiveness and speed
- Visuals
What we learned
We learned all about working with the Room Plan API and using RealityKit for low level rendering.
Issues
There were problems trying to build the project onto the Vision Pro with the Spielfeld Wi-Fi, so the final assembly and video recording had to be done at home.
What's next for Instant Showroom
The sky is the limit really:
- Image tracking can be employed to show prices / label texts for each piece of apparel in 3D
- Collaborative showroom editing
- Space for remarks, notes writing and feedback
- More advanced visuals
Built With
- realitykit
- roomplan


Log in or sign up for Devpost to join the conversation.