WebGPU-1

初衷:一直在从事Web端的3D相关工作,主要集中在3D渲染的研发。偶然间在YouTube看到了一段谷歌发布的介绍WebGPU的视频。觉得这是个很有意思的新技术。而且解决了很多现有的WebGL渲染中的痛点,所以就想跟着这套东西一起把仔细看一下。

WebGL出来已经十几年了,大概有个12年了。网上关于这套API接口的资料和教程浩如烟海,配上很多成熟的在线渲染引擎和游戏。做的比较好的有ThreeJS,BabylonJS和Ceicum等,每一个都拥有很多的开发用户。

本人自己觉得在浏览器端可以看到生动的3D模型是一件无比酷炫的事,因为它实在太方便了:没有APP的束缚,也没有客户端要下载,只需要打开一个页面,不论什么平台,什么设备,有个浏览器就能解决。为什么不呢?

但是这其中还是有很多的问题,WebGL的接口出来是很久了,但是升级却没有那么的多。虽然有了WebGL2,但是接口只是OpenGL的一个子集。这里面最大的痛点,便在于我们被一套N年前的接口死死绑住,没有多大的创新,虽然有了WebGL2,但是也没有得到什么特别大的提升。当然,2比1强大了很多,好些功能是非常实用的。

但是问题的关键是,硬件显卡已经升级了,API却还没有。尤其GPGPU的概念出来之后,包含CUDA和OpenCL之类的出现,使得显卡变得越来越强大了。可是Web端渲染这块却还是那个尿性。明明守着一个宝库(不论是独显还是集显,都已经发展进步了好多),但却因为进山的时候只带了一个塑料袋,所以搬不出多少东西来。

WebGPU也是基于这个原因才发起的一套接口,它注意到了这个问题并试图解决它,让我们可以更好的发挥显卡本身的性能,利用更多之前没办法碰触的区域,解放显卡的潜力。也正基于此,我才觉得,这东西有点意思,可以持续关注。

要强调的是,现阶段WebGPU还完全处在一个基础开发阶段,没有很多的支持,更没有商用,也没有引起多大的关注,甚至胎死腹中都是非常可能发生的。

本人只是出于兴趣,所以很想跟着一起学习下,也算是满足了好奇心。

对于这套东西,首先我会尽量翻译好API的文档内容,把我能理解的部分都做好完善的记录。然后根据这些接口、类型,配上尽量完善的,可运行的例子,实操一把。

作为技术人员,我发现自己在网上搜索一些东西的时候,都有一个问题,那就是“入门”好找,“深入”难寻。要搭个架子出来容易,跑个Hello World也简单,可是要完善的解释所有的特性,却很难再找到自己想要的内容了。

希望我不要做这种半途而废的人,能一点点把这整套文档做好做全。同时也欢迎大家一起留言讨论,其中肯定不乏好多错误需要大家指正。能一起学习进步,才是这件事情最大的意义吧。

好了,瞎BB到这里结束,下面让我们一起来把玩下这个有意思的新玩意吧。

主要资料来源:

Github官网: https://github.com/gpuweb/gpuweb

主要开发进度: https://github.com/gpuweb/gpuweb/wiki/Implementation-Status

接口文档: https://gpuweb.github.io/gpuweb/spec/#toc

 

支持平台:

很遗憾,根据官网的说明,现在这套接口只可以运行在Mac OS下的Chrome Canary以及Safari下。

暂时不支持其他操作系统和平台。总之你得有个苹果,不然玩不转,想偷懒在Windows下的Canary试试,确实是不行的。

本文档记录的内容,均以Canary为准,不涉及Safari(实在用不惯这个浏览器-_-)

 

统一结尾:以上均为个人理解和一家之言,有任何错漏之处欢迎留言讨论,共同进步,一经发现错漏,必立刻更新,且会在修改处指明reporter。谢谢

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值