WebXR – 网络扩展现实技术解决方案 (Web XR)
语言选择 📢
发布日期:2021年12月27日 / 更新日期:2022年2月23日 – 作者:Konrad Wolfenstein
WebXR 是一种 JavaScript 应用程序编程接口 (API),它允许应用程序在 Web 浏览器中与 HTC Vive、Oculus Rift、Google Cardboard 或开源虚拟现实 (OSVR) 等增强现实和虚拟现实设备进行交互。WebXR API 由 W3C 规范集定义,并由沉浸式 Web 社区组和沉浸式 Web 工作组共同管理。.
2018年,WebXR API取代了WebVR,因为它同时支持增强现实和虚拟现实设备。WebVR曾在Firefox和基于Chromium的浏览器中实现,但随后因过时而被移除。沉浸式Web工作组于2018年9月24日正式成立。.

因此,WebXR 是面向 Web 开发人员的全新 API 标准,使他们无需直接操作硬件即可创建 VR 或 AR 应用程序。用户只需使用 Web 浏览器即可查看 VR/AR 内容,无需安装任何额外的插件或软件。.
关于 WebXR、WebVR 或 WebAR,您应该了解哪些内容!
数字化领域的下一个革命性步骤是什么?
简而言之:它可以是与 WebXR、WebVR 或 WebAR 技术关联的二维码或图像。您只需将智能手机对准二维码或图像进行扫描,CAD 或 3D 产品模型就会立即显示在您的网络浏览器中。此外,还可以显示其他信息。根据 WebXR 3D 建模技术的不同,您不再只是被动的观察者,而是可以与这个 3D 世界进行互动。.
在桌面版中,您可以通过链接在浏览器中查看和操作 3D 可视化效果。.
前身:WebVR - 网络虚拟现实
WebVR 是一个实验性的 JavaScript API,只能渲染虚拟现实内容。它后来被 WebXR 取代了。.
开发此API的目标如下:
- 检测可用的虚拟现实设备
- 查询设备的功能
- 查询设备的位置和方向
- 以适当的帧速率在设备上显示图像
WebVR API 最初由 Vladimir Vukićević 于 2014 年春季为 Mozilla 开发。Brandon Jones、Boris Smus 以及 Mozilla 团队的其他成员也为该 API 做出了贡献。2016 年 3 月 1 日,Mozilla VR 团队和 Google Chrome 团队宣布发布 WebVR API 提案的 1.0 版本。此次 API 重构为 WebVR 带来了诸多改进。.
最新版本为 1.1,最后编辑于 2017 年 4 月 5 日。该文档的编辑人员包括 Mozilla 和 Google 团队的成员。此外,一些微软成员也已加入,并积极参与 WebVR API 2.0 版本的起草工作。.
WebVR API
WebVR API 提供了几个新的接口(例如 VR Display、VR Pose),使 Web 应用程序能够通过使用 WebGL 以及必要的相机设置和设备交互(例如控制器或视角)来显示虚拟现实内容。该 API 的设计遵循特定的路径,与其他侵入式 Web API(例如 Geolocation API)非常相似。必要的步骤如下:
- 查询可用VR设备列表
- 检查所需设备是否支持应用程序要求的显示模式。
- 如果是这样,该应用程序是否为用户提供VR功能?
- 用户执行一个操作,表明他们希望切换到VR模式。
- 申请VR会话以展示VR内容
- 开始渲染循环,生成要在 VR 设备上显示的图形帧。
- 帧生成将持续进行,直到用户表示他们想要退出VR模式。
- 结束虚拟现实体验
WebVR 1.0 在 Windows 版 Firefox 55 及更高版本(仅限 64 位版本)中得到支持,并且在 Android 版 Chrome 80 及更高版本中作为 Origin 试用版使用,这意味着开发者可以申请一个令牌添加到他们的网站,从而无缝启用 WebVR。WebVR 1.1 在 Microsoft Edge 15002 及更高版本中得到支持,并且在 Samsung Internet、Chromium、Servo 和 Oculus Carmel 中也得到支持。.
Windows 版 Chrome 浏览器通过特殊版本支持 WebVR 1.1。macOS 版 Firefox 55 及更高版本也支持 WebVR,但需要用户启用相关设置。.
尽管 WebVR 作为 API 独树一帜,但大多数设备都拥有原生应用程序,可以实现互联体验并访问网络内容。一些主流工具,例如 Unity 和 Blender,也可以将内容导出到网络,使用户无需安装专用应用程序即可使用其内容。.
WebGL
WebGL(Web Graphics Library 的缩写)是一个 JavaScript API,它允许在任何兼容的 Web 浏览器中渲染交互式 2D 和 3D 图形,并支持硬件加速,无需插件。WebGL 与其他 Web 标准完全集成,并支持在网页渲染过程中使用 GPU 加速图像处理和特效。WebGL 元素可以与其他 HTML 元素混合使用,并与页面的其他部分或页面背景结合。.
WebGL程序由用JavaScript编写的控制代码和用OpenGL ES着色语言(GLSL ES)编写的着色器代码组成。GLSL ES是一种类似于C或C++的语言,运行在计算机的图形处理器(GPU)上。WebGL由非营利组织Khronos开发和维护。.
2009年初,非营利性技术联盟Khronos Group成立了WebGL工作组,最初的成员包括苹果、谷歌、Mozilla、Opera等公司。WebGL规范1.0版于2011年3月发布。.
WebGL 规范的第一个版本于 2011 年 3 月 3 日在旧金山举行的游戏开发者大会上发布。2011 年 3 月,谷歌 Chrome 和 Mozilla Firefox 浏览器开始支持 WebGL,苹果 Safari 和 Opera 浏览器的预发布版本也默认启用了 WebGL。.
2011 年 11 月,谷歌于 2011 年 3 月推出的 Angle 项目(全称为 Almost Native Graphics Layer Engine)获得了 OpenGL ES 2.0 版的认证,从而可以开发支持 WebGL 的跨平台应用程序,支持包括 Windows、Mac 和 Linux 在内的三大最知名的操作系统平台。.
Zygote Body 是 WebGL 最早的应用之一。2012 年 11 月,Autodesk 宣布已将其大部分运行在本地 WebGL 客户端上的应用程序迁移到云端,其中包括 Fusion 360 和 AutoCAD 360。.
WebGL 2 规范的开发始于 2013 年,并于 2017 年 1 月完成。该规范基于 OpenGL ES 3.0。最初的实现可以在 Firefox 51、Chrome 56 和 Opera 43 中找到。.
自 2017 年以来,W3C 一直在致力于 WebGPU 的后续发展。.
WebGPU
WebGPU 是一个未来的 Web 标准和 JavaScript API 的暂定名称,它用于底层加速图形和计算,目标是取代 WebGL。它由来自苹果、Mozilla、微软、谷歌以及其他公司(包括 W3C GPU for the Web 社区组)的软件工程师共同开发。.
与基于 OpenGL ES 的 WebGL 不同,WebGPU 并非现有图形接口的直接移植。然而,它借鉴了 Vulkan、Metal 和 Direct3D 12 等底层接口的概念。预计移动设备和桌面平台都将受益于速度的提升。.
2017年2月7日,苹果公司的WebKit团队展示了一个概念验证,并提出了基于其“Metal”接口的名为“WebGPU”的标准构想。他们还提议成立一个W3C社区小组。.
W3C“Web GPU”社区组于2017年2月16日启动了相关工作。当时,苹果、谷歌和Mozilla都已开展了相关实验,但只有苹果提出了正式提案。Mozilla随后于2017年3月21日提出了自己的WebGPU标准提案。.
2018 年 6 月 1 日,谷歌 Chrome 浏览器的开发人员宣布,他们已经就最重要的几个方面达成了一致,并计划在未来实施该标准。.
“WebGPU”这个名称后来被社区组织采纳为开放标准的暂定名称。为了避免混淆,苹果公司最初的演示文稿被更名为“Web-Metal”。.
相关PDF库:
您是否正在寻找扩展现实网络解决方案的技术和战略支持?Xpert.Digital 可以帮到您!
我非常乐意担任您在扩展现实解决方案方面的私人顾问。.
您可以通过填写下面的联系表格与我联系,或者直接拨打+49 89 89 674 804 (慕尼黑)。
我期待着我们的合作项目。.
Xpert.Digital – Konrad Wolfenstein
Xpert.Digital 是一个专注于数字化、机械工程、物流/内部物流和光伏领域的行业中心。.
凭借我们的 360° 业务发展解决方案,我们为知名企业提供从新业务拓展到售后服务的全方位支持。.
市场情报、社交媒体营销、营销自动化、内容开发、公关、邮件营销活动、个性化社交媒体和潜在客户培养是我们数字工具的一部分。.
您可以在以下网站找到更多信息: www.xpert.digital – www.xpert.solar – www.xpert.plus























