GPUCanvas
一个 GPU 画布 —— 1× 呈现目标,作用类似于 WebGPU surface texture。使用 .image 配合 renderer:drawImage() 来合成结果。通过 canvas:beginRenderPass({ color = {{ loadOp = 'clear', storeOp = 'store', ... }} }) 渲染到它。MSAA 需要由用户自行分配 GPUTexture.new({ sampleCount = N, renderTarget = true }) 作为显式 color view,并将画布的 colorView() 设置为 resolveTarget。其格式始终为 'rgba8unorm',在延迟分配纹理的 deferred canvas 上也会报告该格式。
字段
image
renderer:drawImage() 的后备图像。
方法
resize
resize(width: number, height: number) -> ()
调整画布大小。重新创建 1× 后备纹理。任何由用户自行分配的 MSAA / 深度纹理必须由脚本重新创建以匹配新的尺寸。
colorView
colorView() -> GPUTextureView
画布后备纹理的视图。用作颜色附件、MSAA 解析目标,或在后续 pass 中用作采样器输入。