pub enum PipelineExecutionError {
Show 34 variants
SyncCommandBufferBuilderError(SyncCommandBufferBuilderError),
RequirementNotMet {
required_for: &'static str,
requires_one_of: RequiresOneOf,
},
DescriptorResourceInvalid {
set_num: u32,
binding_num: u32,
index: u32,
error: DescriptorResourceInvalidError,
},
DescriptorSetNotBound {
set_num: u32,
},
DynamicColorWriteEnableNotEnoughValues {
color_write_enable_count: u32,
attachment_count: u32,
},
DynamicPrimitiveTopologyClassMismatch {
provided_class: PrimitiveTopologyClass,
required_class: PrimitiveTopologyClass,
},
DynamicPrimitiveTopologyInvalid {
topology: PrimitiveTopology,
},
DynamicStateNotSet {
dynamic_state: DynamicState,
},
DynamicViewportScissorCountMismatch {
viewport_count: u32,
scissor_count: u32,
},
ForbiddenInsideRenderPass,
ForbiddenOutsideRenderPass,
ForbiddenWithSubpassContents {
subpass_contents: SubpassContents,
},
IndexBufferNotBound,
IndexBufferRangeOutOfBounds {
highest_index: u32,
max_index_count: u32,
},
IndirectBufferMissingUsage,
MaxComputeWorkGroupCountExceeded {
requested: [u32; 3],
max: [u32; 3],
},
MaxDrawIndirectCountExceeded {
provided: u32,
max: u32,
},
MaxMultiviewInstanceIndexExceeded {
highest_instance: u64,
max: u32,
},
NotSupportedByQueueFamily,
PipelineColorAttachmentCountMismatch {
pipeline_count: u32,
required_count: u32,
},
PipelineColorAttachmentFormatMismatch {
color_attachment_index: u32,
pipeline_format: Option<Format>,
required_format: Format,
},
PipelineDepthAttachmentFormatMismatch {
pipeline_format: Option<Format>,
required_format: Format,
},
PipelineLayoutNotCompatible,
PipelineNotBound,
PipelineRenderPassNotCompatible,
PipelineRenderPassTypeMismatch,
PipelineSubpassMismatch {
pipeline: u32,
current: u32,
},
PipelineStencilAttachmentFormatMismatch {
pipeline_format: Option<Format>,
required_format: Format,
},
PipelineViewMaskMismatch {
pipeline_view_mask: u32,
required_view_mask: u32,
},
PushConstantsNotCompatible,
PushConstantsMissing,
VertexBufferNotBound {
binding_num: u32,
},
VertexBufferInstanceRangeOutOfBounds {
instances_needed: u64,
instances_in_buffers: u64,
},
VertexBufferVertexRangeOutOfBounds {
vertices_needed: u64,
vertices_in_buffers: u64,
},
}
Expand description
Error that can happen when recording a bound pipeline execution command.
Variants
SyncCommandBufferBuilderError(SyncCommandBufferBuilderError)
RequirementNotMet
DescriptorResourceInvalid
The resource bound to a descriptor set binding at a particular index is not compatible with the requirements of the pipeline and shaders.
DescriptorSetNotBound
Fields
set_num: u32
The pipeline layout requires a descriptor set bound to a set number, but none was bound.
DynamicColorWriteEnableNotEnoughValues
The bound pipeline uses a dynamic color write enable setting, but the number of provided enable values is less than the number of attachments in the current render subpass.
DynamicPrimitiveTopologyClassMismatch
The bound pipeline uses a dynamic primitive topology, but the provided topology is of a different topology class than what the pipeline requires.
DynamicPrimitiveTopologyInvalid
Fields
topology: PrimitiveTopology
The bound pipeline uses a dynamic primitive topology, but the provided topology is not compatible with the shader stages in the pipeline.
DynamicStateNotSet
Fields
dynamic_state: DynamicState
The pipeline requires a particular dynamic state, but this state was not set.
DynamicViewportScissorCountMismatch
The bound pipeline uses a dynamic scissor and/or viewport count, but the scissor count does not match the viewport count.
ForbiddenInsideRenderPass
Operation forbidden inside a render pass.
ForbiddenOutsideRenderPass
Operation forbidden outside a render pass.
ForbiddenWithSubpassContents
Fields
subpass_contents: SubpassContents
Operation forbidden inside a render subpass with the specified contents.
IndexBufferNotBound
An indexed draw command was recorded, but no index buffer was bound.
IndexBufferRangeOutOfBounds
The highest index to be drawn exceeds the available number of indices in the bound index buffer.
IndirectBufferMissingUsage
The indirect_buffer
usage was not enabled on the indirect buffer.
MaxComputeWorkGroupCountExceeded
The max_compute_work_group_count
limit has been exceeded.
MaxDrawIndirectCountExceeded
The max_draw_indirect_count
limit has been exceeded.
MaxMultiviewInstanceIndexExceeded
The max_multiview_instance_index
limit has been exceeded.
NotSupportedByQueueFamily
The queue family doesn’t allow this operation.
PipelineColorAttachmentCountMismatch
The color attachment count in the bound pipeline does not match the count of the current render pass.
PipelineColorAttachmentFormatMismatch
The format of a color attachment in the bound pipeline does not match the format of the corresponding color attachment in the current render pass.
PipelineDepthAttachmentFormatMismatch
The format of the depth attachment in the bound pipeline does not match the format of the depth attachment in the current render pass.
PipelineLayoutNotCompatible
The bound pipeline is not compatible with the layout used to bind the descriptor sets.
PipelineNotBound
No pipeline was bound to the bind point used by the operation.
PipelineRenderPassNotCompatible
The bound graphics pipeline uses a render pass that is not compatible with the currently active render pass.
PipelineRenderPassTypeMismatch
The bound graphics pipeline uses a render pass of a different type than the currently active render pass.
PipelineSubpassMismatch
The bound graphics pipeline uses a render subpass index that doesn’t match the currently active subpass index.
PipelineStencilAttachmentFormatMismatch
The format of the stencil attachment in the bound pipeline does not match the format of the stencil attachment in the current render pass.
PipelineViewMaskMismatch
The view mask of the bound pipeline does not match the view mask of the current render pass.
PushConstantsNotCompatible
The push constants are not compatible with the pipeline layout.
PushConstantsMissing
Not all push constants used by the pipeline have been set.
VertexBufferNotBound
Fields
binding_num: u32
The bound graphics pipeline requires a vertex buffer bound to a binding number, but none was bound.
VertexBufferInstanceRangeOutOfBounds
The number of instances to be drawn exceeds the available number of indices in the bound vertex buffers used by the pipeline.
VertexBufferVertexRangeOutOfBounds
The number of vertices to be drawn exceeds the lowest available number of vertices in the bound vertex buffers used by the pipeline.
Trait Implementations
sourceimpl Clone for PipelineExecutionError
impl Clone for PipelineExecutionError
sourcefn clone(&self) -> PipelineExecutionError
fn clone(&self) -> PipelineExecutionError
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for PipelineExecutionError
impl Debug for PipelineExecutionError
sourceimpl Display for PipelineExecutionError
impl Display for PipelineExecutionError
sourceimpl Error for PipelineExecutionError
impl Error for PipelineExecutionError
sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()