Deconstructing Reality Composer Pro (Viewport)

Illustration of a blob melting in the center of a grill, representing a three-dimensional viewpoint.

Viewport is deep (modes, debug views, presets/history). We are going to implement just a working viewer + camera for this pass; chasing full parity will balloon scope.

The main viewport is built with RealityKit, and we'll add a layer for gestures, a grid, and a simple Arcball implementation to allow navigation. Also, given we have access to camera history in the .rcuserdata metadata, implementing this function is easy, though I don't use it much myself.

Scene Lighting

Reality Composer Pro also provides environment lighting through a popover panel accessible from the floating toolbar. The panel exposes:

  • Environment presets—HDR panoramas that provide both lighting (IBL) and optional skybox background
  • Rotation—spins the environment around Y-axis (0-360°)
  • Exposure—adjusts light intensity in EV stops (-3 to +3)
  • Background toggle—this feature allows you to display the environment as a skybox or as a solid color.

Each one of these features is essential for art direction, so we will add them using ImageBasedLightComponent.

Release 3-viewport · elkraneo/Deconstructed
Viewport menu + framing, grid toggle, camera history