pub struct PhysicalDeviceDescriptorIndexingFeatures {
Show 13 fields pub shader_input_attachment_array_dynamic_indexing: bool, pub shader_uniform_texel_buffer_array_dynamic_indexing: bool, pub shader_storage_texel_buffer_array_dynamic_indexing: bool, pub shader_uniform_buffer_array_non_uniform_indexing: bool, pub shader_sampled_image_array_non_uniform_indexing: bool, pub shader_storage_buffer_array_non_uniform_indexing: bool, pub shader_storage_image_array_non_uniform_indexing: bool, pub shader_input_attachment_array_non_uniform_indexing: bool, pub shader_uniform_texel_buffer_array_non_uniform_indexing: bool, pub shader_storage_texel_buffer_array_non_uniform_indexing: bool, pub descriptor_binding_partially_bound: bool, pub descriptor_binding_variable_descriptor_count: bool, pub runtime_descriptor_array: bool,
}
Expand description

Structure describing descriptor indexing features that can be supported by an implementation.

Fields

shader_input_attachment_array_dynamic_indexing: bool

Indicates whether arrays of input attachments can be indexed by dynamically uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT must be indexed only by constant integral expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the InputAttachmentArrayDynamicIndexing capability.

shader_uniform_texel_buffer_array_dynamic_indexing: bool

Indicates whether arrays of uniform texel buffers can be indexed by dynamically uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must be indexed only by constant integral expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the UniformTexelBufferArrayDynamicIndexing capability.

shader_storage_texel_buffer_array_dynamic_indexing: bool

Indicates whether arrays of storage texel buffers can be indexed by dynamically uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must be indexed only by constant integral expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the StorageTexelBufferArrayDynamicIndexing capability.

shader_uniform_buffer_array_non_uniform_indexing: bool

Indicates whether arrays of uniform buffers can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER or VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the UniformBufferArrayNonUniformIndexing capability.

shader_sampled_image_array_non_uniform_indexing: bool

Indicates whether arrays of samplers or sampled images can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_SAMPLER, VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the SampledImageArrayNonUniformIndexing capability.

shader_storage_buffer_array_non_uniform_indexing: bool

Indicates whether arrays of storage buffers can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the StorageBufferArrayNonUniformIndexing capability.

shader_storage_image_array_non_uniform_indexing: bool

Indicates whether arrays of storage images can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the StorageImageArrayNonUniformIndexing capability.

shader_input_attachment_array_non_uniform_indexing: bool

Indicates whether arrays of input attachments can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the InputAttachmentArrayNonUniformIndexing capability.

shader_uniform_texel_buffer_array_non_uniform_indexing: bool

Indicates whether arrays of uniform texel buffers can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the UniformTexelBufferArrayNonUniformIndexing capability.

shader_storage_texel_buffer_array_non_uniform_indexing: bool

Indicates whether arrays of storage texel buffers can be indexed by non-uniform integer expressions in shader code.

If this feature is not enabled, resources with a descriptor type of VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not be indexed by non-uniform integer expressions when aggregated into arrays in shader code. This also indicates whether shader modules can declare the StorageTexelBufferArrayNonUniformIndexing capability.

descriptor_binding_partially_bound: bool

Indicates whether the implementation supports statically using a descriptor set binding in which some descriptors are not valid. If this feature is not enabled, VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT must not be used.

descriptor_binding_variable_descriptor_count: bool

Indicates whether the implementation supports descriptor sets with a variable-sized last binding. If this feature is not enabled, VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT must not be used.

runtime_descriptor_array: bool

Indicates whether the implementation supports the SPIR-V RuntimeDescriptorArray capability.

If this feature is not enabled, descriptors must not be declared in runtime arrays.

Trait Implementations

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.