Skip to content

Admitting a VR Habitat

A participant may need a seated experience with captions; another may require a bounded room-scale space. Habitat admission establishes which exact virtual place can support the requested experience and how it must make exit available.

Bind the place and its capabilities

spectre.admit_habitat@1 begins with exact world/scene reference, engine/runtime capability snapshot, reference-space policy, comfort, accessibility, retention, and exit policy. It returns immutable VRHabitat@1 or refusal.

Tie the Habitat record to an exact world/build and capability epoch. Record the adapter/runtime revision, requested, required, granted, missing, and revoked features, and the admitted spatial context/reference-space policy. Bind comfort/accessibility, retention, disclosure, and exit to that same admission. The record describes the eligible place without taking ownership of its source project, engine build, headset, reference-space handle, multiplayer service, or persistent world.

Refuse admission if a required capability is missing; record an explicit downgrade for an optional one. The label “VR” cannot establish hands, haptics, room bounds, eye/face tracking, passthrough, anchors, or body tracking. If the world/build digest, required features, reference-space, comfort/accessibility, retention, or exit contract changes, require a new Habitat revision or epoch. A runtime restart alone must not rewrite the admitted Habitat.

Admit the space the participant will use

OpenXR reference spaces distinguish view-relative, seated/local, floor-relative, and room-scale arrangements. Pin required floor/stage bounds, recenter and reference-space-change policy, permitted locomotion, and downgrade/refusal when the runtime cannot supply them. Runtime handles and observed bounds remain volatile provider facts.

Seated, standing, captioned, controller-free, companion-screen, and audio-led routes enter only when explicitly supported. An Encounter records each person's actual modality. A flat/audio companion route can support access without claiming equivalent spatial tracking, reference space, haptics, privacy, or embodiment. Every admitted modality must preserve visible exit and its declared recovery path.

Foundry may supply an exact world/build/profile and playtest evidence; it retains project, controllers, derivatives, build judgment, and playability. Blockworld keeps persistent-world effects, and Reach keeps external social events, audience, platform delivery, and replies. Avatar may independently bind a Lich presentation to the Habitat, without owning runtime, locomotion, tracking, or entry.

Prism and Kinesis retain spatial and motion sources. The media ownership comparison follows separately admitted speech, music, dialogue, and sound handoffs; a shared VR runtime does not merge their judgments.

First integration hypothesis

The design uses OpenXR 1.1 as protocol baseline; an adapter still enumerates the actual runtime and extensions. Its first engine candidate is Godot, with a standalone Quest 3 application as the smallest hardware hypothesis. WiVRn and Monado remain later Linux/FOSS-first candidates; SteamVR/vendor runtimes are optional compatibility profiles. These are hypotheses, not newly proved hardware compatibility.

The minimum profile requires stereo view, head pose, a tested action/input profile, explicit reference space, visible exit, and runtime-loss handling. Additional tracking, passthrough, anchors, haptics, and room bounds remain optional and honestly absent when unavailable. Revision one's scope did not promise multiplayer, persistent social worlds, full-body embodiment, eye/face tracking, mixed-reality mapping, or a production hardware profile.

Continue with Encounter for participants, chronology, interruption, and exit, or return to Spectre.