SuperAPI AI 工具集

webgpu-impl-multipass

通用与其它

查看项目

更新于 10-15 22:18

技能介绍

用途:在 WebGPU 1.0-stable(Chrome 113+、Safari 26+、Firefox 141+)上构建多通道渲染,让前序通道写入中间渲染纹理,后续通道再采样。覆盖后处理链、延迟着色、阴影贴图和乒乓缓冲。

主要能力:提供通道模式速查(后处理链、乒乓、延迟着色、阴影贴图各自的前序写入、后续读取与关键要求)、决策树,以及六类核心模式:中间纹理用法标志、读写分离通道、无顶点缓冲的全屏三角形、乒乓双纹理、MRT 延迟着色 G-buffer、阴影贴图通道设置。还列出常见反模式与关键警告。

必要用法:中间渲染纹理必须同时带 GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.TEXTURE_BINDING;不得在同一通道内采样仍作为颜色或深度附件的纹理,须先 pass.end() 再开新通道;全屏通道用 @builtin(vertex_index) 生成 3 顶点大三角形,不绑定顶点缓冲;乒乓需两张纹理并每通道交换读写角色;G-buffer 用 MRT,管线 fragment.targets 数量与格式须与 colorAttachments 完全一致;阴影通道用 depthStencilAttachment 且 colorAttachments 为空,主通道用 comparison 采样器与 textureSampleCompare。

限制与注意:不得缓存 context.getCurrentTexture() 或其视图跨帧使用;当后续通道依赖前序通道位级一致的深度时,须在顶点 @builtin(position) 上加 @invariant;不得在通道未结束时调用 encoder.finish()。参考文件包括 references/methods.md、references/examples.md、references/anti-patterns.md。相关技能有 webgpu-impl-render-targets、webgpu-impl-render-usecases、webgpu-syntax-textures、webgpu-wgsl-textures。具体安装与调用方式暂未提供。