I’m exploring WebXR and considering purchasing a Quest 2 for development. I have what feels like an obvious question but can’t find it explicitly stated in the BJS WebXR documentation. I understand that the api provides A) Teleportation, B) Controller Joystick Movement, and C) Walking in Place. However, can I just walk around a 10’x10’ scene with a Quest headset and the built-in tracking/play area?
In BJS WebXRSessionManager we have:
const referenceSpace = sessionManager.setReferenceSpaceTypeAsync( /*referenceSpaceType = 'local-floor'*/ );
XRReferenceSpaceType in the docs the link for this type is broken 404. However, found this in the LibDeclarations:
type XRReferenceSpaceType = "viewer" | "local" | "local-floor" | "bounded-floor" | "unbounded";
After a bit of digging, I found this from WebXR. So it appears we can set the WebXR BJS experience to
bounded-floor to allow for the user to walk around their play area but could someone confirm this? I haven’t seen an example of a demo video, it seems like most people are keeping their projects at the default…
There are several types of reference spaces:
unbounded, each mapping to a type of XR experience an app may wish to build. A bounded experience (
bounded-floor) is one in which the user will move around their physical environment to fully interact, but will not need to travel beyond a fixed boundary defined by the XR hardware. An unbounded experience (
unbounded) is one in which a user is able to freely move around their physical environment and travel significant distances. A local experience is one which does not require the user to move around in space, and may be either a “seated” (
local) or “standing” (
local-floor) experience. Finally, the
viewerreference space can be used for experiences that function without any tracking (such as those that use click-and-drag controls to look around) or in conjunction with another reference space to track head-locked objects. Examples of each of these types of experiences can be found in the detailed sections below.