#[repr(C)]pub struct BufferDescriptor<L> {
pub label: L,
pub size: BufferAddress,
pub usage: BufferUsages,
pub mapped_at_creation: bool,
}
Expand description
Describes a Buffer
.
Corresponds to WebGPU GPUBufferDescriptor
.
Fields§
§label: L
Debug label of a buffer. This will show up in graphics debuggers for easy identification.
size: BufferAddress
Size of a buffer, in bytes.
usage: BufferUsages
Usages of a buffer. If the buffer is used in any way that isn’t specified here, the operation will panic.
Specifying only usages the application will actually perform may increase performance.
Additionally, on the WebGL backend, there are restrictions on BufferUsages::INDEX
;
see DownlevelFlags::UNRESTRICTED_INDEX_BUFFER
for more information.
mapped_at_creation: bool
Allows a buffer to be mapped immediately after they are made. It does not have to be BufferUsages::MAP_READ
or
BufferUsages::MAP_WRITE
, all buffers are allowed to be mapped at creation.
If this is true
, size
must be a multiple of
COPY_BUFFER_ALIGNMENT
.
Implementations§
Source§impl<L> BufferDescriptor<L>
impl<L> BufferDescriptor<L>
Sourcepub fn map_label<K>(&self, fun: impl FnOnce(&L) -> K) -> BufferDescriptor<K>
pub fn map_label<K>(&self, fun: impl FnOnce(&L) -> K) -> BufferDescriptor<K>
Takes a closure and maps the label of the buffer descriptor into another.
Trait Implementations§
Source§impl<L: Clone> Clone for BufferDescriptor<L>
impl<L: Clone> Clone for BufferDescriptor<L>
Source§fn clone(&self) -> BufferDescriptor<L>
fn clone(&self) -> BufferDescriptor<L>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more