pub struct BindGroupLayoutEntry {
pub binding: u32,
pub visibility: ShaderStages,
pub ty: BindingType,
pub count: Option<NonZeroU32>,
}Expand description
Describes a single binding inside a bind group.
Corresponds to WebGPU GPUBindGroupLayoutEntry.
Fields§
§binding: u32Binding index. Must match shader index and be unique inside a BindGroupLayout. A binding
of index 1, would be described as @group(0) @binding(1) in shaders.
visibility: ShaderStagesWhich shader stages can see this binding.
ty: BindingTypeThe type of the binding
count: Option<NonZeroU32>If the binding is an array of multiple resources. Corresponds to binding_array<T> in the shader.
When this is Some the following validation applies:
- Size must be of value 1 or greater.
- When
ty == BindingType::Texture,Features::TEXTURE_BINDING_ARRAYmust be supported. - When
ty == BindingType::Sampler,Features::TEXTURE_BINDING_ARRAYmust be supported. - When
ty == BindingType::Buffer,Features::BUFFER_BINDING_ARRAYmust be supported. - When
ty == BindingType::Bufferandty.ty == BufferBindingType::Storage,Features::STORAGE_RESOURCE_BINDING_ARRAYmust be supported. - When
ty == BindingType::StorageTexture,Features::STORAGE_RESOURCE_BINDING_ARRAYmust be supported. - When any binding in the group is an array, no
BindingType::Bufferin the group may havehas_dynamic_offset == true - When any binding in the group is an array, no
BindingType::Bufferin the group may havety.ty == BufferBindingType::Uniform.
Trait Implementations§
Source§impl Clone for BindGroupLayoutEntry
impl Clone for BindGroupLayoutEntry
Source§fn clone(&self) -> BindGroupLayoutEntry
fn clone(&self) -> BindGroupLayoutEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BindGroupLayoutEntry
impl Debug for BindGroupLayoutEntry
Source§impl Hash for BindGroupLayoutEntry
impl Hash for BindGroupLayoutEntry
Source§impl PartialEq for BindGroupLayoutEntry
impl PartialEq for BindGroupLayoutEntry
impl Copy for BindGroupLayoutEntry
impl Eq for BindGroupLayoutEntry
impl StructuralPartialEq for BindGroupLayoutEntry
Auto Trait Implementations§
impl Freeze for BindGroupLayoutEntry
impl RefUnwindSafe for BindGroupLayoutEntry
impl Send for BindGroupLayoutEntry
impl Sync for BindGroupLayoutEntry
impl Unpin for BindGroupLayoutEntry
impl UnwindSafe for BindGroupLayoutEntry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more