create static method

GpuBuffer create({
  1. required int size,
  2. required int usage,
})

Implementation

static GpuBuffer create({required int size, required int usage}) {
  final wgpu = WebgpuRend.instance.wgpu;
  return using((arena) {
    final desc = arena<WGPUBufferDescriptor>();
    desc.ref.nextInChain = nullptr;
    desc.ref.label.data = nullptr;
    desc.ref.label.length = 0;
    desc.ref.size = size;
    desc.ref.usage = usage;
    desc.ref.mappedAtCreation = 0;
    final handle =
        wgpu.wgpuDeviceCreateBuffer(WebgpuRend.instance.device, desc);
    return GpuBuffer._(handle.cast(), size, usage);
  });
}