感谢反馈,类似的读取像素或截屏的API会在后续版本中加入
不过,WebGPU 对于 CPU 和 GPU 的数据读写速度可能并不会有额外的帮助。Three 中也是使用 WebGL/2 原生 readPixels 将渲染贴图buffer copy到 CPU/JS 中,这其中 Three 并没有添加额外的处理导致额外的时间,最终传输速度基本取决于设备的 GPU 到 CPU 的物理读取带宽。
使用 WebGPU 并不会加速这一过程,WebGPU 能带来的优势是异步IO,也就是将 readRenderTargetPixels 变成异步读取,减少阻塞主线程的渲染,所消耗的整体时间不一定比 WebGL 快,但主线程渲染帧率不会出现明显掉帧,不会出现ui卡顿,整体体验会好一些