category
AI summary
tags
password
summary
date
icon
status
字数统计
type
slug
orgsrc
URL
在 6 月份的苹果开发者大会上,苹果介绍了将 Unity 作为 Apple Vision Pro VR 内容开发工具的官方教程(Bring your Unity VR App to a full immersive space),这在历届 WWDC 应该都是非常罕见的,以封闭生态著称的苹果竟然引入并宣传第三方开发平台。当然这也是出于 Apple Vision Pro 缺少(3D)内容的焦虑,以及自己的 RealitKit 在手机 AR 场景中一直没有激起什么水花。
![notion image](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F46266459-3bda-4e7f-8f52-0581c4cf2220%2FUntitled.png?table=block&id=19dc7072-d928-4ed9-be01-7bd2da3e8933)
除了 Unity 之外,苹果也宣布 Apple Vision Pro 将支持 WebXR 标准,这也是非常令人惊讶(喜)的,如果说有什么比苹果生态更加封闭的,那可能就是苹果系统浏览器 Safari 了。
![visionOS Simulator 开启 Safari 对 WebXR 的支持选项](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F0a1822a3-7eda-4103-8df5-e1463112c8c2%2FUntitled.png?table=block&id=16b0da7f-674f-408d-8f93-b78101ea1e54)
不仅仅是宣布支持,苹果在 WebXR 标准制定中参与积极(如果想了解苹果和其它开源标准如 OpenXR 之间的矛盾以及接纳并推动 WebXR 背后的历史,推荐参考连接中英文播客):
There have been some movements in terms of Apple's participation in the WebXR standard, most significantly Ada joining. Ada is one of the chairs. She's a very important part of the WebXR standards process. | 苹果公司在 WebXR 标准方面的参与有了一些进展,最重要的是 Ada 加入了。Ada是 WebXR 主席团的一员。她在 WebXR 标准制定过程中扮演着非常重要的角色。
![《2023中国WebXR开发者报告》|93913 Pro 产业智库](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2Febece11f-d1b4-46a0-ac69-746a921d0629%2FUntitled.png?table=block&id=f388237e-6817-497d-a528-7b42630dc535)
WebXR 开发生态
目前主流的 WebXR 开发框架(3D 引擎)如下,更详细的列表可参考 Awesome WebXR :
![WebXR 开发工具](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2Fafafe12a-a310-4540-a9dd-87718a2c13ce%2FUntitled.png?table=block&id=faef5bd4-01a9-42f0-930a-430817743ce3)
在前面几篇文章里我开发的几个原型应用,都是基于 A-FRAME 框架,该框架基于 three.js 3D 引擎,最大限度地封装了繁琐的语句,该框架的设计理念和 Unity 类似,通过 component 绑定场景中对象的各种行为。我把几个项目总结了一份开发模板,详见文章结尾参考资料。
和所有的 Web 生态一样,WebXR 的优势在跨平台兼容、开发效率高、易于分享与发布,例如 PICO 已经支持将网页添加为 Web 应用,可以直接保存到资源库中:
![Pico WebApp](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F3b1283af-73b3-4d75-818a-a50eeec683ad%2FUntitled.png?table=block&id=b0698272-5d92-49e3-a5ed-848513779bb2)
当然 WebXR 也继承 Web 生态的劣势:相比原生(Native)应用性能远远不足。例如我开发的这个简单的游戏 demo(「接头」霸王:neck.v2xr.xyz),在不使用复杂高清大尺寸素材的情况下, 仅使用简单的 Shader 编程可以生成相当不错的 VR 游戏素材:
![Shader 效果](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F3c0dcb65-1577-4a94-bd35-a366b1927a87%2Fshader2.gif?table=block&id=7d95febf-e6c2-40f6-8547-83efe2681624)
但可惜的是,上面的效果是在 PC 端运行的效果,如果放在 VR 一体机的浏览器中运行(如 PICO 浏览器),可能刷新率只有个位数,完全无法流畅运行,于是只能选择下面静态纹理的效果:
![无 Shader 效果](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F81e4e314-13e0-45dc-879c-62a3269ec346%2Fnoshader.gif?table=block&id=60cfb643-f8a8-4d86-8506-271682eadcb5)
WebXR 性能答案 — WebGPU
Chrome 113(2023.4.6)开始正式支持 WebGPU,关于 WebGPU 的细节我将在下一篇文章中展开,这里想要说明的有两点:1)WebGPU 将赋予 WebXR 更强悍的 3D 渲染能力;2)苹果同样是 WebGPU 的积极推动者。
![WebGL vs WebGPU: BabylonJS](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2F4c9e0653-04cf-4303-96b8-18be1396f80e%2FUntitled.png?table=block&id=2b54df87-36da-4ea7-8588-fe9eff17b880)
![WebGPU](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2Fc55b8130-cefe-44f6-a3cd-a2f9d68e40b7%2FUntitled.png?table=block&id=e54ffead-27b8-4c4d-b690-83c0d293c300)
借用《I want to talk about WebGPU》中的一句话:
使用 OpenGL ES 的 iPhone 为大众市场提供了学习和使用 OpenGL 的坚实理由。
希望支持 WebXR/WebGPU 的 Vision Pro 将为大众提供学习和使用它们的坚实理由!
![Apple Vision Pro 搭载的 M2 芯片](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F3c35714a-89c3-4d33-ad58-389eb4cfea25%2Fc886c111-880f-4360-b7f9-01495e703c9f%2FUntitled.png?table=block&id=3cf3a72d-59cf-4ca3-b50b-e45824ccaf89)
参考
- 《2023中国WebXR开发者报告》|93913 Pro 产业智库
- #1213: Primer on WebGPU & Bringing High-Performance 3D Graphics and Parallel Compute to the Web | voicesofvr.com
- Awesome WebXR | https://project-awesome.org/msub2/awesome-webxr
- A-FRAME 本地开发项目模板 | https://gitee.com/v2xr/a-frame-template
- https://developer.chrome.com/blog/webgpu-release/
- 作者:V2XR
- 链接:https://hackvision.pro/post/webxr-as-an-alternative-to-unity
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。