Struct vulkano::buffer::BufferUsage
source · pub struct BufferUsage {
pub transfer_source: bool,
pub transfer_destination: bool,
pub uniform_texel_buffer: bool,
pub storage_texel_buffer: bool,
pub uniform_buffer: bool,
pub storage_buffer: bool,
pub index_buffer: bool,
pub vertex_buffer: bool,
pub indirect_buffer: bool,
}
Expand description
Describes how a buffer is going to be used. This is not just an optimization.
If you try to use a buffer in a way that you didn’t declare, a panic will happen.
Some methods are provided to build BufferUsage
structs for some common situations. However
there is no restriction in the combination of BufferUsages that can be enabled.
Fields
transfer_source: bool
transfer_destination: bool
uniform_texel_buffer: bool
storage_texel_buffer: bool
uniform_buffer: bool
storage_buffer: bool
index_buffer: bool
vertex_buffer: bool
indirect_buffer: bool
Implementations
sourceimpl BufferUsage
impl BufferUsage
sourcepub fn none() -> BufferUsage
pub fn none() -> BufferUsage
Builds a BufferUsage
with all values set to false.
sourcepub fn all() -> BufferUsage
pub fn all() -> BufferUsage
Builds a BufferUsage
with all values set to true. Can be used for quick prototyping.
sourcepub fn transfer_source() -> BufferUsage
pub fn transfer_source() -> BufferUsage
Builds a BufferUsage
with transfer_source
set to true and the rest to false.
sourcepub fn transfer_destination() -> BufferUsage
pub fn transfer_destination() -> BufferUsage
Builds a BufferUsage
with transfer_destination
set to true and the rest to false.
sourcepub fn vertex_buffer() -> BufferUsage
pub fn vertex_buffer() -> BufferUsage
Builds a BufferUsage
with vertex_buffer
set to true and the rest to false.
sourcepub fn vertex_buffer_transfer_destination() -> BufferUsage
pub fn vertex_buffer_transfer_destination() -> BufferUsage
Builds a BufferUsage
with vertex_buffer
and transfer_destination
set to true and the rest
to false.
sourcepub fn index_buffer() -> BufferUsage
pub fn index_buffer() -> BufferUsage
Builds a BufferUsage
with index_buffer
set to true and the rest to false.
sourcepub fn index_buffer_transfer_destination() -> BufferUsage
pub fn index_buffer_transfer_destination() -> BufferUsage
Builds a BufferUsage
with index_buffer
and transfer_destination
set to true and the rest to false.
sourcepub fn uniform_buffer() -> BufferUsage
pub fn uniform_buffer() -> BufferUsage
Builds a BufferUsage
with uniform_buffer
set to true and the rest to false.
sourcepub fn uniform_buffer_transfer_destination() -> BufferUsage
pub fn uniform_buffer_transfer_destination() -> BufferUsage
Builds a BufferUsage
with uniform_buffer
and transfer_destination
set to true and the rest
to false.
sourcepub fn indirect_buffer() -> BufferUsage
pub fn indirect_buffer() -> BufferUsage
Builds a BufferUsage
with indirect_buffer
set to true and the rest to false.
sourcepub fn indirect_buffer_transfer_destination() -> BufferUsage
pub fn indirect_buffer_transfer_destination() -> BufferUsage
Builds a BufferUsage
with indirect_buffer
and transfer_destination
set to true and the rest
to false.
Trait Implementations
sourceimpl BitOr<BufferUsage> for BufferUsage
impl BitOr<BufferUsage> for BufferUsage
type Output = BufferUsage
type Output = BufferUsage
|
operator.sourceimpl Clone for BufferUsage
impl Clone for BufferUsage
sourcefn clone(&self) -> BufferUsage
fn clone(&self) -> BufferUsage
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more