This commit is contained in:
Akko
2025-08-04 18:57:35 +02:00
parent 8cf6e78a79
commit 9495868c2e
5030 changed files with 518594 additions and 17609 deletions

View File

@@ -0,0 +1,37 @@
import { Buffer } from '../../shared/buffer/Buffer.mjs';
import { BufferUsage } from '../../shared/buffer/const.mjs';
"use strict";
function GpuReadBuffer(buffer, renderer) {
const bufferSize = buffer.descriptor.size;
const device = renderer.gpu.device;
const stagingBuffer = new Buffer({
data: new Float32Array(24e5),
usage: BufferUsage.MAP_READ | BufferUsage.COPY_DST
});
const stagingGPUBuffer = renderer.buffer.createGPUBuffer(stagingBuffer);
const commandEncoder = device.createCommandEncoder();
commandEncoder.copyBufferToBuffer(
renderer.buffer.getGPUBuffer(buffer),
0,
// Source offset
stagingGPUBuffer,
0,
// Destination offset
bufferSize
);
device.queue.submit([commandEncoder.finish()]);
void stagingGPUBuffer.mapAsync(
GPUMapMode.READ,
0,
// Offset
bufferSize
// Length
).then(() => {
stagingGPUBuffer.getMappedRange(0, bufferSize);
stagingGPUBuffer.unmap();
});
}
export { GpuReadBuffer };
//# sourceMappingURL=GpuReadBuffer.mjs.map