WebGPU时代,为什么不是Three.js or Babylon.js? (上)

对于Web3D领域的两个非常优秀的引擎,大家肯定都不陌生,他们就是Three.js和Babylon.js。

说到构建WebGPU引擎,你一定会问为什么不是Three.js或Babylon.js?

Three.js是JavaScript语言开发。2010年,西班牙开发者Ricardo Cabello (Twitter: mrdoob)在Github上放出了第一个public版本。

WebGPU时代,为什么不是Three.js or Babylon.js? (上)_第1张图片

https://threejs.org/

我们熟知的WebGL是在2009年被Khnoros组织提出,可以说Three.js的发展史,就是WebGL标准的发展史。

Bablyon.js是TypeScript语言开发,是由微软内部团队,于2013年主导的另外一款引擎。它的封装更加高层,功能也相对复杂很多,而且拥有很多比较成熟的工具,比如Node Material Editor。相比Three.js,Babylon.js可以说更像一款比较成熟的Web3D游戏引擎。

WebGPU时代,为什么不是Three.js or Babylon.js? (上)_第2张图片
https://www.babylonjs.com/

但是由于timing的原因,Github上的Star数量,截止2022年2月,Three.js(78.8k)远高于 Babylon.js(15.8k),Three.js依然是基于WebGL标准下最为流行的Web 3D引擎。

为什么不是Three.js or Babylon.js?

WebGPU标准的发展,也一直被广泛关注。Three.js和Babylon.js,已经在相应的分支,做了WebGPU能力的接入和一些Demo的展示。我们看到了他们的实现和demo,也更加的相信,WebGPU引擎这件事儿,大概率他们做不成。

因为Three.js和Babylon.js两个引擎架构都是为了WebGL而设计的,而WebGPU对比WebGL可以说发生了翻天覆地的变化,取消了全局状态机,给了开发者过多的权限来控制内存,增加了Compute Shader等等。因此,Three.js和Babylon.js不能说是支持了WebGPU,只能说接入了WebGPU,但是由于历史包袱,根本无法发挥出来WebGPU的优势。

口说无凭,通过一系列的测试,我们得出这样的结论。测试环境和具体数据,请听下回分解。

Three.js的WebGPU Demo,跟WebGL Demo来比,几乎没有什么提升。封装更加高层和复杂的Babylon.js,WebGPU 的Demo的实现竟然比WebGL还要慢。

相比之下,目前我们的Orillusion官方放出的Demo,比WebGL引擎快了将近5倍。下一个版本的对比特性,我们已经快了10倍。如果发挥到WebGPU性能的极致,可以快出30倍。

WebGPU时代,为什么不是Three.js or Babylon.js? (上)_第3张图片

https://demo.orillusion.com/ecs/example/asteroids.html

如果Three.js和Babylon.js真的想做一款可以充分发挥WebGPU性能的引擎出来,那只能壮士断腕,对引擎框架进行彻底的重构。因为Three.js和Babylon.js的历史包袱太重了,他们有大量的用户,有大量的功能实现,完全放弃而进行重新开发,这是需要巨大勇气的,而且我们目前没有看到任何这样的迹象。

所以有的时候,做的早不一定做的好,这也就是技术迭代带来的新机遇。

我们可以等未来某天Three.js和Babylon.js重构架构支持WebGPU,可能是半年?甚至是一年?但是,在这么好的一个时间节点,为什么中国的团队不能做出一款同样优秀的Web 3D引擎,实现弯道超车呢?

之前我们擅长于场景创新和商业模式创新。但是,在这样一个好的时间节点,我们应该把精力放在底层的技术研究上:这是一种思维模式的改变,更是一种认知的改变。

元宇宙正在朝我们走来,3D渲染的场景未来会暴增。有了核心的3D底层技术,上层场景才会有无限的可能。中国的技术开发者需要时间,中国的基础软件需要时间。在这个过程中,Orillusion希望能做出一点儿贡献。


欢迎更多开发者留言,

加入Orillusion社区参与讨论!

长按下图,扫码添加管理员微信

WebGPU时代,为什么不是Three.js or Babylon.js? (上)_第4张图片

欢迎更多的小伙伴可以加入我们的Orillusion社区,陪我们一起见证WebGPU的发展。我们会尽自己最大的努力把最干货最前沿的WebGPU技术分享给每一位社区成员,也诚心的希望大家为Orillusion开源社区做出自己的贡献。我们一直坚信,开源社区的技术留痕是每一位技术人员最崇高的追求。因此,我们尊重,我们认可,我们更期待,加入Orillusion,让我们共同进步!

——Link uncharted, 链接未来世界

Orillusion 团队介绍


Orillusion团队由帝国理工大学可视化渲染方向博后创建,团队成员具备顶级的学术背景,包括来自海内外名校的硕士博士,如港大,哈工大,北邮等,而且核心技术研发成员也均为行业内深耕10年以上的技术专家,来自白鹭,AutoDesk等优秀企业。我们也一直持续关注优秀企业和开源社区的相关人才,期待更多热爱开源的小伙伴加入Orillusion,一起改变世界!


团队专注于引擎底层技术研发,主要工作是打造全世界第一款完全开源的WebGPU轻量级通用渲染引擎,目标是在浏览器中实现桌面级的渲染效果,以及支持超大复杂场景的3D呈现。未来团队会一直专注于引擎底层的技术突破,打造优秀的开源软件及开源区,为3D场景爆发时代提供引擎基础工具。



你可能感兴趣的:(WebGPU时代,为什么不是Three.js or Babylon.js? (上))