MCPcopy Create free account
hub / github.com/processing/p5.js / _getUniformBufferFromPool

Method _getUniformBufferFromPool

src/webgpu/p5.RendererWebGPU.js:1607–1630  ·  view source on GitHub ↗
(bufferGroup)

Source from the content-addressed store, hash-verified

1605 //////////////////////////////////////////////
1606
1607 _getUniformBufferFromPool(bufferGroup) {
1608 // Try to get a buffer from the pool
1609 if (bufferGroup.bufferPool.length > 0) {
1610 const bufferInfo = bufferGroup.bufferPool.pop();
1611 bufferGroup.buffersInUse.add(bufferInfo);
1612 return bufferInfo;
1613 }
1614
1615 // No buffers available, create a new one
1616 const newBuffer = this.device.createBuffer({
1617 size: bufferGroup.size,
1618 usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST,
1619 });
1620 const newData = new Float32Array(bufferGroup.size / 4);
1621 const newDataView = new DataView(newData.buffer);
1622 const bufferInfo = {
1623 buffer: newBuffer,
1624 data: newData,
1625 dataView: newDataView
1626 };
1627
1628 bufferGroup.buffersInUse.add(bufferInfo);
1629 return bufferInfo;
1630 }
1631
1632 _getDynamicUniformBufferFromPool(bufferGroup) {
1633 //

Callers 1

setupShaderBindGroupsMethod · 0.95

Calls 2

popMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected