????????个人电脑或智能手机通常包含两个计算单元:CPU(用于中央处理单元)和GPU(图形处理单元)。在对应用程序进行编程时,主要为CPU编写指令。这就是大多数编程语言的用途。
????????CPU和GPU是两种不同的处理器。我们对CPU进行编程,使其通过图形API和驱动程序指示GPU做什么。
如果希望应用程序在GPU上执行指令(例如,渲染3D图像),则CPU代码必须向GPU的驱动程序发送指令。图形API是CPU代码用来与GPU对话的编程接口。
存在许多这样的API,例如,您可能听说过OpenGL、DirectX、Vulkan或Metal。
提示
????????理论上,任何人都可以发明自己的图形API。每个GPU供应商都有自己的底层协议,用于驱动程序与硬件进行对话,在此之上,更常见的API是简单的
在本文档中,我们将学习一种称为WebGPU的图形API。此API设计用于提供对GPU的统一访问,无论GPU供应商和应用程序运行的操作系统是什么。
WebGPU是一个基于驱动程序/OS提供的各种API构建的渲染硬件接口,具体取决于您的平台。这种重复的开发工作由web浏览器完成一次,并通过它们提供的webgpu.h标头提供给我们。
为什么选择WebGPU?
🤔 是的,我为什么要使用web API来开发桌面应用程序?
很高兴你问,简短的回答是:
合理的抽象水平
性能良好
跨平台
足够标准
经得起未来考验
它实际上是唯一一个图形API受益于所有这些属性!
是的,WebGPU API主要是为网络设计的,作为JavaScript和GPU之间的接口。这并不是一个缺点,因为到目前为止,对网页性能的要求是