pub(super) struct WebGPULimits {Show 31 fields
pub(super) max_bind_groups: u32,
pub(super) max_bindings_per_bind_group: u32,
pub(super) max_buffer_size: u64,
pub(super) max_color_attachments_bytes_per_sample: u32,
pub(super) max_color_attachments: u32,
pub(super) max_compute_invocations_per_workgroup: u32,
pub(super) max_compute_workgroup_size_x: u32,
pub(super) max_compute_workgroup_size_y: u32,
pub(super) max_compute_workgroup_size_z: u32,
pub(super) max_compute_workgroup_storage_size: u32,
pub(super) max_compute_workgroups_per_dimension: u32,
pub(super) max_dynamic_storage_buffers_per_pipeline_layout: u32,
pub(super) max_dynamic_uniform_buffers_per_pipeline_layout: u32,
pub(super) max_inter_stage_shader_components: u32,
pub(super) max_inter_stage_shader_variables: u32,
pub(super) max_sampled_textures_per_shader_stage: u32,
pub(super) max_samplers_per_shader_stage: u32,
pub(super) max_storage_buffer_binding_size: u64,
pub(super) max_storage_buffers_per_shader_stage: u32,
pub(super) max_storage_textures_per_shader_stage: u32,
pub(super) max_texture_array_layers: u32,
pub(super) max_texture_dimension_1d: u32,
pub(super) max_texture_dimension_2d: u32,
pub(super) max_texture_dimension_3d: u32,
pub(super) max_uniform_buffer_binding_size: u64,
pub(super) max_uniform_buffers_per_shader_stage: u32,
pub(super) max_vertex_attributes: u32,
pub(super) max_vertex_buffer_array_stride: u32,
pub(super) max_vertex_buffers: u32,
pub(super) min_storage_buffer_offset_alignment: u32,
pub(super) min_uniform_buffer_offset_alignment: u32,
}Expand description
Limits and capabilities for WebGPU
Contains various maximum values and limits that apply to WebGPU operations like binding groups, buffers, textures, and compute operations.
Fields§
§max_bind_groups: u32§max_bindings_per_bind_group: u32§max_buffer_size: u64§max_color_attachments_bytes_per_sample: u32§max_color_attachments: u32§max_compute_invocations_per_workgroup: u32§max_compute_workgroup_size_x: u32§max_compute_workgroup_size_y: u32§max_compute_workgroup_size_z: u32§max_compute_workgroup_storage_size: u32§max_compute_workgroups_per_dimension: u32§max_dynamic_storage_buffers_per_pipeline_layout: u32§max_dynamic_uniform_buffers_per_pipeline_layout: u32§max_inter_stage_shader_components: u32§max_inter_stage_shader_variables: u32§max_sampled_textures_per_shader_stage: u32§max_samplers_per_shader_stage: u32§max_storage_buffer_binding_size: u64§max_storage_buffers_per_shader_stage: u32§max_storage_textures_per_shader_stage: u32§max_texture_array_layers: u32§max_texture_dimension_1d: u32§max_texture_dimension_2d: u32§max_texture_dimension_3d: u32§max_uniform_buffer_binding_size: u64§max_uniform_buffers_per_shader_stage: u32§max_vertex_attributes: u32§max_vertex_buffer_array_stride: u32§max_vertex_buffers: u32§min_storage_buffer_offset_alignment: u32§min_uniform_buffer_offset_alignment: u32Trait Implementations§
source§impl Clone for WebGPULimits
impl Clone for WebGPULimits
source§fn clone(&self) -> WebGPULimits
fn clone(&self) -> WebGPULimits
Returns a copy 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 WebGPULimits
impl Debug for WebGPULimits
source§impl<'de> Deserialize<'de> for WebGPULimits
impl<'de> Deserialize<'de> for WebGPULimits
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl From<&Limits> for WebGPULimits
impl From<&Limits> for WebGPULimits
Converts from browser profile limits DTO to WebGPU limits
source§impl PartialEq for WebGPULimits
impl PartialEq for WebGPULimits
source§impl Serialize for WebGPULimits
impl Serialize for WebGPULimits
impl StructuralPartialEq for WebGPULimits
Auto Trait Implementations§
impl Freeze for WebGPULimits
impl RefUnwindSafe for WebGPULimits
impl Send for WebGPULimits
impl Sync for WebGPULimits
impl Unpin for WebGPULimits
impl UnwindSafe for WebGPULimits
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.