Prepare your experience
- Expand your app beyond the window, by default apps launch into the shared space, like multiple apps on the desktop
- You can do Shared Spaces, and Full Space – this gives you more features like AnchorEntities and ARKit
- Prepare you content
- Use usd to create your 3D content, it is at the heart of 3D content, you can use them directly in Reality Composer Pro
- If you have custom materials you will need to rebuild them in the shader app in Reality Composer Pro
- You can access Reality Composer Pro directly in Xcode
Use RealityView
- You can add both 2d and 3D content side by side
- But you must use RealityView as discussed in the session – https://michaelrowe01.com/index.php/blog/enhance-your-spatial-computing-app-with-realitykit/
- A lot of the concepts of Spatial Computing come over from ARView in iOS
Bring in your content
- In shared Space – just add them directly to the RealityView Content, you can see more details in the session above
- In a Full Space – a key value is you can an Anchor the app to specific surroundings. Different than iOS you do not need to ask for permission to use Anchor Entities
- ARKit can allow of WorldAnchors and Anchor persistence – you will be required to have user permission to use ARKit capabilties
Recasting
- Allows you to reach out beyond arm’s length
- Requires collision components
- You can RayCast with system Gestures or Hand Tracking
- By generating a Mesh Anchor of the environment to reconstruct the scene, you then create an Entity to recognize the time, and you create a transform and collision entity to track the environment. These entities represent the surroundings.
- This Recasting allows you to then add an input target to all you to hold a position in world space.
- By using a HandAnchor from ARKit you can build an RayCasting to identify the collision in the scene – then create a world Anchor in space to save the position. You now place the entity and transform it to the world anchor – you can now place the item in the real world.
- By taking the placed item and creating a collision model you can now interact with it as if it is really there.
ARKit updates
- Receiving anchors has changed to address Spatial Computing
- Now you have an Ala carte selection of things to create your items you wish to receive.
- On xrOS data providers provide an asynchronous anchor update that is decoupled from other updates. You don’t get ARFrames anymore, this is automatically done by the system, which reduces latency
- World anchor persistence
- System continuously persists this mapping for you
- Just use the world anchor and use WorldTrackingProvider which will allow you to load and unload virtual content