readBufferSync method
ByteData
readBufferSync(
- StorageBuffer buffer, {
- int offsetInBytes = 0,
- int? sizeInBytes,
override
The bytes of buffer (a range of them), read back in the calling turn.
A stall, on purpose. The call waits for every pass submitted before
it, which is the price WebGL2's getBufferSubData charges and the
reason WebGPU has no such call. For a tool or a test that would rather
block than restructure; a frame loop wants
GraphicsDevice.readBuffer or GraphicsDevice.mapBuffer. buffer
must be BufferUsage.hostReadable.
Implementation
@override
ByteData readBufferSync(
StorageBuffer buffer, {
int offsetInBytes = 0,
int? sizeInBytes,
}) {
features.require(DeviceFeature.synchronousReadback, backend: _name);
return ByteData(sizeInBytes ?? buffer.lengthInBytes - offsetInBytes);
}