Blink实现了在浏览器页签中所有的渲染工作
Chromium拥有一套多进程架构。Chromium有一个浏览器进程和多个带有沙盒能力的渲染进程。Blink则运行在渲染进程中。
Mojo是一系列库的集合,用于提供一种进程内或跨进程的通信方案
Blink 接口由在chrome/browser/vr/ 提供了如渲染模型,输入监听,或element的事件
而 device/vr/是调用openxr api的地方,即和一切runtime相关都经过这里,如实现了XRSystem requestSession的接口
The web-exposed interface to WebXR begins in Blink This Blink module implements the “core” WebXR Device API 如瞄点 如requestSession
也就是实现这些接口添加链接描述
对设备信息的manager
BrowserXRRuntimeImpl* XRRuntimeManagerImpl::GetImmersiveVrRuntime() {
#if BUILDFLAG(IS_ANDROID)
auto* gvr = GetRuntime(device::mojom::XRDeviceId::GVR_DEVICE_ID);
if (gvr)
return gvr;
#endif
#if BUILDFLAG(ENABLE_OPENXR)
auto* openxr = GetRuntime(device::mojom::XRDeviceId::OPENXR_DEVICE_ID);
if (openxr)
return openxr;
#endif
return nullptr;
}