Optionalbase基础信息
Optionalparent?: { getBindGroups(): GPUBindGroup[] }drawInfo的dynamicLoadBindGroup为true时,需要绑定的父对象
OptionalafterUpdate?: (scope: any) => Promise<any>callback function :测试使用,生成勿用(影响性能)
进行map操作,由上级程序保障正确性
examp: encoder.copyBufferToBuffer(workgroupBuffer, 0, workgroupReadBuffer, 0, size);
workgroupBuffer=this.unifromBuffer[0][0],对应:@group(0)@binding(0)
OptionalbindGroups?: GPUBindGroup[] | T_uniformEntries[][]Optionalmap?: (scope: any, encode: GPUCommandEncoder) => Promise<any>callback function
正确性由上级程序保障
一、 如果是map操作,需要copy和unmap两步:
1、 await Promise.all([ workgroupReadBuffer.mapAsync(GPUMapMode.READ), localReadBuffer.mapAsync(GPUMapMode.READ), globalReadBuffer.mapAsync(GPUMapMode.READ), ]);
2、 workgroupReadBuffer.unmap();
label
计算命令 参数