WebGPU是一个非常简单的系统。它所做的只是在GPU上运行3中类型的函数:Vertex Shaders, Fragment Shaders, Computed Shaders

下图是WebGPU使用vertex 和 fragment shader绘制三角形的简化配置图:

https://webgpufundamentals.org/webgpu/lessons/resources/webgpu-draw-diagram.svg

知识点:

执行shader

为了可以在GPU上执行shaders,需要创建所有这些resources,并且配置好这些state。resources的创建相对简单,大多数WebGPU resources创建后就不可更改(可以更改其内容,但是size usage format…不可以)。可以创建一个新的销毁旧的

一些state是在创建并执行command buffers时配置好的。**Command buffers(指令buffers),创建command encoders,command encoders会编码这些指令到command buffers里面。然后finish the encoder,它会返回其创建command buffer。然后submit 这个 command buffer,让WebGPU执行这些commands**