Skip to main content

Limits

Struct Limits 

Source
pub struct Limits {
Show 55 fields pub max_image_1d_size: Size, pub max_image_2d_size: Size, pub max_image_3d_size: Size, pub max_image_cube_size: Size, pub max_image_array_layers: Layer, pub max_texel_elements: usize, pub max_uniform_buffer_range: Offset, pub max_storage_buffer_range: Offset, pub max_push_constants_size: usize, pub max_memory_allocation_count: usize, pub max_sampler_allocation_count: usize, pub max_bound_descriptor_sets: DescriptorSetIndex, pub max_framebuffer_layers: usize, pub descriptor_limits: DescriptorLimits, pub max_vertex_input_attributes: usize, pub max_vertex_input_bindings: usize, pub max_vertex_input_attribute_offset: usize, pub max_vertex_input_binding_stride: usize, pub max_vertex_output_components: usize, pub max_patch_size: PatchSize, pub max_geometry_shader_invocations: usize, pub max_geometry_input_components: usize, pub max_geometry_output_components: usize, pub max_geometry_output_vertices: usize, pub max_geometry_total_output_components: usize, pub max_fragment_input_components: usize, pub max_fragment_output_attachments: usize, pub max_fragment_dual_source_attachments: usize, pub max_fragment_combined_output_resources: usize, pub max_compute_shared_memory_size: usize, pub max_compute_work_group_count: WorkGroupCount, pub max_compute_work_group_invocations: usize, pub max_compute_work_group_size: [u32; 3], pub max_draw_indexed_index_value: IndexCount, pub max_draw_indirect_count: InstanceCount, pub max_sampler_lod_bias: f32, pub max_sampler_anisotropy: f32, pub max_viewports: usize, pub max_viewport_dimensions: [Size; 2], pub max_framebuffer_extent: Extent, pub min_memory_map_alignment: usize, pub buffer_image_granularity: Offset, pub min_texel_buffer_offset_alignment: Offset, pub min_uniform_buffer_offset_alignment: Offset, pub min_storage_buffer_offset_alignment: Offset, pub framebuffer_color_sample_counts: NumSamples, pub framebuffer_depth_sample_counts: NumSamples, pub framebuffer_stencil_sample_counts: NumSamples, pub timestamp_compute_and_graphics: bool, pub max_color_attachments: usize, pub standard_sample_locations: bool, pub optimal_buffer_copy_offset_alignment: Offset, pub optimal_buffer_copy_pitch_alignment: Offset, pub non_coherent_atom_size: usize, pub min_vertex_input_binding_stride_alignment: Offset,
}
Expand description

Resource limits of a particular graphics device.

Fields§

§max_image_1d_size: Size

Maximum supported image 1D size.

§max_image_2d_size: Size

Maximum supported image 2D size.

§max_image_3d_size: Size

Maximum supported image 3D size.

§max_image_cube_size: Size

Maximum supported image cube size.

§max_image_array_layers: Layer

Maximum supporter image array size.

§max_texel_elements: usize

Maximum number of elements for the BufferView to see.

§max_uniform_buffer_range: Offset
§max_storage_buffer_range: Offset
§max_push_constants_size: usize
§max_memory_allocation_count: usize
§max_sampler_allocation_count: usize
§max_bound_descriptor_sets: DescriptorSetIndex
§max_framebuffer_layers: usize
§descriptor_limits: DescriptorLimits
§max_vertex_input_attributes: usize

Maximum number of vertex input attributes that can be specified for a graphics pipeline.

§max_vertex_input_bindings: usize

Maximum number of vertex buffers that can be specified for providing vertex attributes to a graphics pipeline.

§max_vertex_input_attribute_offset: usize

Maximum vertex input attribute offset that can be added to the vertex input binding stride.

§max_vertex_input_binding_stride: usize

Maximum vertex input binding stride that can be specified in a vertex input binding.

§max_vertex_output_components: usize

Maximum number of components of output variables which can be output by a vertex shader.

§max_patch_size: PatchSize

Maximum number of vertices for each patch.

§max_geometry_shader_invocations: usize
§max_geometry_input_components: usize
§max_geometry_output_components: usize
§max_geometry_output_vertices: usize
§max_geometry_total_output_components: usize
§max_fragment_input_components: usize
§max_fragment_output_attachments: usize
§max_fragment_dual_source_attachments: usize
§max_fragment_combined_output_resources: usize
§max_compute_shared_memory_size: usize
§max_compute_work_group_count: WorkGroupCount
§max_compute_work_group_invocations: usize
§max_compute_work_group_size: [u32; 3]
§max_draw_indexed_index_value: IndexCount
§max_draw_indirect_count: InstanceCount
§max_sampler_lod_bias: f32
§max_sampler_anisotropy: f32

Maximum degree of sampler anisotropy.

§max_viewports: usize

Maximum number of viewports.

§max_viewport_dimensions: [Size; 2]
§max_framebuffer_extent: Extent
§min_memory_map_alignment: usize
§buffer_image_granularity: Offset
§min_texel_buffer_offset_alignment: Offset

The alignment of the start of buffer used as a texel buffer, in bytes, non-zero.

§min_uniform_buffer_offset_alignment: Offset

The alignment of the start of buffer used for uniform buffer updates, in bytes, non-zero.

§min_storage_buffer_offset_alignment: Offset

The alignment of the start of buffer used as a storage buffer, in bytes, non-zero.

§framebuffer_color_sample_counts: NumSamples

Number of samples supported for color attachments of framebuffers (floating/fixed point).

§framebuffer_depth_sample_counts: NumSamples

Number of samples supported for depth attachments of framebuffers.

§framebuffer_stencil_sample_counts: NumSamples

Number of samples supported for stencil attachments of framebuffers.

§timestamp_compute_and_graphics: bool

Timestamp queries are supported on all compute and graphics queues.

§max_color_attachments: usize

Maximum number of color attachments that can be used by a subpass in a render pass.

§standard_sample_locations: bool
§optimal_buffer_copy_offset_alignment: Offset

The alignment of the start of the buffer used as a GPU copy source, in bytes, non-zero.

§optimal_buffer_copy_pitch_alignment: Offset

The alignment of the row pitch of the texture data stored in a buffer that is used in a GPU copy operation, in bytes, non-zero.

§non_coherent_atom_size: usize

Size and alignment in bytes that bounds concurrent access to host-mapped device memory.

§min_vertex_input_binding_stride_alignment: Offset

The alignment of the vertex buffer stride.

Trait Implementations§

Source§

impl Clone for Limits

Source§

fn clone(&self) -> Limits

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Limits

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Limits

Source§

fn default() -> Limits

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Limits

Source§

fn eq(&self, other: &Limits) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Limits

Source§

impl StructuralPartialEq for Limits

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.