tree: ea515992bd386e0241d73e47183e3767d27c88a0 [path history] [tgz]
  1. BUILD.gn
  2. DEPS
  3. DIR_METADATA
  4. OWNERS
  5. README.md
  6. android/
  7. buildflags/
  8. empty.cc
  9. gl_bindings.h
  10. openxr/
  11. orientation/
  12. public/
  13. test/
  14. util/
  15. vr_device.h
  16. vr_device_base.cc
  17. vr_device_base.h
  18. vr_device_base_unittest.cc
  19. vr_export.h
  20. vr_gl_util.cc
  21. vr_gl_util.h
  22. windows/
device/vr/README.md

VR

device/vr abstracts WebXR features across multiple platforms.

Although the directory is named “vr” both VR and AR features are implemented here. The name is an artifact from the time when it was associated with the now deprecated WebVR API.

Platform support

Windows and Android are the primary supported platforms, largely because they're the only platforms with significant XR device traction at this point. Several native APIs are supported for various use cases, though things are trending towards OpenXR being the only API used on desktops.

APIOSSupportsEnabled by Default
OpenXRWindows*VR*Yes**
AR CoreAndroidARYes
Google VRAndroidVRYes
Windows Mixed RealityWindowsVRNo
  • * OpenXR may support multiple OSes and AR use cases as well. Currently we only use it for VR on Windows since that's what the majority of existing runtimes support.
  • ** OpenXR runtimes are only enabled by default if they implement the “XR_EXT_win32_appcontainer_compatible” extension.

Integrations with some APIs (such as AR Core) are partially locaed in chrome/browser/vr due to architectural and historical limitations. In the future those will ideally be migrated to this directory as well.

Testing

See XR Browser Tests documentation.