WebGL 2.0实现了所有主要Web浏览器的普遍支持

2022-02-18 23:15:46

开发用于在线部署的交互式图形应用程序的最大难题之一是覆盖所有基础。你的目标可能包括几乎无限的浏览器供应商、浏览器版本和图形硬件组合。Khronos集团创建了WebGL来解决这个棘手的问题,在任何兼容的浏览器和任何图形处理单元上呈现高性能的交互式图形,而不需要插件。现在,在Safari 15中,macOS和iOS都支持WebGL 2.0,我们很高兴地报告,“兼容浏览器”几乎包括了所有浏览器。

当WebGL 2.0于2017年首次发布时,它在图形功能方面向前迈出了一大步。WebGL 2.0提供了OpenGL ES 3.0功能集,增加了对关键功能的访问,包括变换反馈、实例渲染、多个渲染目标、统一缓冲区对象、遮挡查询,以及对原始WebGL 1.0基于着色器的可编程图形管道更广泛的纹理支持。该规范在Firefox和Chrome发布时就已经发布,但要在所有WebGL实现者中推广该规范还有很长的路要走。多年来,开发人员需要WebGL 1.0回退路径才能接触到大量浏览器和设备。不再有了:WebGL 2.0已经全面面世,应用程序作者可以满怀信心地瞄准它。

2019年6月,将WebGL 2.0引入Safari的工作正式开始。该项目产生了一些积极的副作用。苹果采用ANGLE作为Safari WebGL实现的基础,因此,他们的工程团队花了一年多的时间为ANGLE的Metal后端做出了巨大贡献。Safari现在在最新的iOS和macOS设备上运行WebGL。苹果和谷歌工程团队之间的合作仍在继续,包括在WebKit中采用树顶ANGLE,为未来的开发创建一个通用的代码库,以及将Chrome转换为使用ANGLE的金属后端。尽管WebGL 2.0实现了普及,但该规范的工作仍在继续推动其他领域的互操作性和一致性。

“我们的工程团队之间的成功合作将提升和简化网络上的图形生态系统,”Khronos WebGL工作组主席、谷歌的肯·拉塞尔(Ken Russell)说。";开发者最终可以满怀信心地瞄准WebGL 2.0,我们期待WebGPU为网络图形应用提供进一步的发展在不久的将来会有更多的申请"

Mozilla WebGL负责人凯尔西·吉尔伯特(Kelsey Gilbert)表示:“作为WebGL的早期倡导者,我们非常高兴地看到WebGL 2的真正广泛支持成为现实。”。“在Firefox for iOS上安装WebGL 2.0是一件令人兴奋的事情,我们期待看到WebGL-2-first开发为所有类型的应用程序和所有用户带来更强大的功能、更大的灵活性和更高的效率。”

“微软Edge很高兴能完全支持WebGL 2.0,让网络开发者能够使用GPU的强大功能,”微软合作伙伴小组项目经理贾廷德·曼说。“与开源渲染框架Babylon.js的简单性相结合,在Microsoft edge上访问尖端图形功能只需几行javascript即可。”

基于浏览器的交互式图形功能正在迅速成熟——几乎与对新功能的需求增长一样快。W3C和#39;s的WebGPU API正在其GPU中为Web工作组积极开发,浏览器的实现正在进行中。该API目前是一个工作草案,将向web浏览器展示Direct3D 12、Metal和Vulkan提供的现代计算机图形功能。

“W3C很高兴能与Khronos合作,并与他们一起祝贺实现者,他们为Web平台提供了强大的3D图形API,现在可以在各种设备上使用,”沉浸式Web W3C策略师多米尼克·哈扎埃尔-马西尤(Dominique Hazaël-Massieux)说。“Khronos和#39;在Vulkan和SPIR-V上的工作是W3C WebGPU API及其附带的着色语言WGSL的关键输入,该语言旨在为Web提供更强大的3D图形和计算API,建立在现代原生GPU功能之上。”

任何新规范的全面推出都需要时间。WebGL 1.0最初于2011年3月发布,三年半后的2014年9月,超过80%的浏览器完全支持WebGL 1.0。WebGL 2.0现在已经达到了同样的普及性基准——超过80%的可用性——但也花了相似的时间。即使WebGPU规范正式发布,从WebGL 1.0到WebGL 2.0再到WebGPU的旅程仍将继续。

与此同时,WebGL仍在不断发展。我们最近宣布,所有浏览器都可以使用压缩纹理格式——开发人员保证至少可以访问ETC2或S3TC中的一种——以及一个新的多画图扩展,它可以通过几何体批处理显著提高性能。我们还提供了OES_draw_buffers_indexed功能,以支持高级的订单无关透明技术。最后,我们将继续致力于扩展一致性测试:作为一个工作组,性能和质量是我们的最高优先事项。

NVIDIA开发生态系统副总裁尼尔·特雷维特(Neil Trevett)和Khronos总裁表示:“WebGL 2.0的普及证明了浏览器供应商的持续承诺,我们祝贺他们将这一重要的新功能带到了有史以来最广泛使用和可访问的3D平台:Web。”。“Khronos致力于WebGL的持续支持,并与W3C和浏览器供应商密切合作,以确保世界各地的web开发人员未来能够顺利地从WebGL过渡到WebGPU。”

我们鼓励所有开发人员从WebGL 1.0迁移到WebGL 2.0,如果您还没有这样做的话。我们还鼓励您加入充满活力的WebGL在线社区:您可以加入WebGL开发人员列表,了解产品发布、演示、问题、讨论等内容,或者进入WebGL矩阵聊天室,与浏览器实现人员和其他开发人员交谈。让我们知道您是如何使用WebGL的,以及您希望我们接下来做什么。