pub enum RenderPassCreationError {
Show 34 variants OomError(OomError), RequirementNotMet { required_for: &'static str, requires_one_of: RequiresOneOf, }, AttachmentFirstUseLoadOpInvalid { attachment: u32, first_use_subpass: u32, }, AttachmentLayoutInvalid { attachment: u32, }, CorrelatedViewMasksMultiviewNotEnabled, CorrelatedViewMasksOverlapping, DependencyAccessNotSupportedByStages { dependency: u32, }, DependencyBothSubpassesExternal { dependency: u32, }, DependencySelfDependencyFramebufferStagesWithoutByRegion { dependency: u32, }, DependencySelfDependencySourceStageAfterDestinationStage { dependency: u32, }, DependencySelfDependencyViewLocalNonzeroOffset { dependency: u32, }, DependencySelfDependencyViewMaskMultiple { dependency: u32, subpass: u32, }, DependencySourceSubpassAfterDestinationSubpass { dependency: u32, }, DependencyStageNotSupported { dependency: u32, }, DependencySubpassOutOfRange { dependency: u32, subpass: u32, }, DependencyViewLocalExternalDependency { dependency: u32, }, DependencyViewLocalMultiviewNotEnabled { dependency: u32, }, SubpassAttachmentAspectsNotEmpty { subpass: u32, attachment: u32, }, SubpassAttachmentLayoutInvalid { subpass: u32, attachment: u32, usage: &'static str, }, SubpassAttachmentLayoutMismatch { subpass: u32, attachment: u32, }, SubpassAttachmentOutOfRange { subpass: u32, attachment: u32, }, SubpassAttachmentUsageColorDepthStencil { subpass: u32, attachment: u32, }, SubpassAttachmentFormatUsageNotSupported { subpass: u32, attachment: u32, usage: &'static str, }, SubpassColorAttachmentWithResolveNotMultisampled { subpass: u32, attachment: u32, }, SubpassColorDepthStencilAttachmentSamplesMismatch { subpass: u32, attachment: u32, samples: SampleCount, first_samples: SampleCount, }, SubpassInputAttachmentAspectsNotCompatible { subpass: u32, attachment: u32, }, SubpassMaxColorAttachmentsExceeded { subpass: u32, color_attachment_count: u32, max: u32, }, SubpassMaxMultiviewViewCountExceeded { subpass: u32, view_count: u32, max: u32, }, SubpassMultiviewMismatch { subpass: u32, multiview: bool, first_subpass_multiview: bool, }, SubpassPreserveAttachmentUsedElsewhere { subpass: u32, attachment: u32, }, SubpassResolveAttachmentsColorAttachmentsLenMismatch { subpass: u32, }, SubpassResolveAttachmentFormatMismatch { subpass: u32, resolve_attachment: u32, color_attachment: u32, }, SubpassResolveAttachmentMultisampled { subpass: u32, attachment: u32, }, SubpassResolveAttachmentWithoutColorAttachment { subpass: u32, },
}
Expand description

Error that can happen when creating a RenderPass.

Variants

OomError(OomError)

Not enough memory.

RequirementNotMet

Fields

required_for: &'static str
requires_one_of: RequiresOneOf

AttachmentFirstUseLoadOpInvalid

Fields

attachment: u32
first_use_subpass: u32

An attachment is first used in the render pass with a read-only layout or as an input attachment, but its load_op or stencil_load_op is LoadOp::Clear.

AttachmentLayoutInvalid

Fields

attachment: u32

An attachment has an initial_layout or final_layout value that is invalid for the provided format.

CorrelatedViewMasksMultiviewNotEnabled

Correlated view masks were included, but multiview is not enabled on the render pass.

CorrelatedViewMasksOverlapping

The provided correlated view masks contain a bit that is set in more than one element.

DependencyAccessNotSupportedByStages

Fields

dependency: u32

A subpass dependency specified an access type that was not supported by the given stages.

DependencyBothSubpassesExternal

Fields

dependency: u32

A subpass dependency has both src_subpass and dst_subpass set to None.

DependencySelfDependencyFramebufferStagesWithoutByRegion

Fields

dependency: u32

A subpass dependency specifies a subpass self-dependency and includes framebuffer stages in both src_stages and dst_stages, but the by_region dependency was not enabled.

DependencySelfDependencySourceStageAfterDestinationStage

Fields

dependency: u32

A subpass dependency specifies a subpass self-dependency and includes non-framebuffer stages, but the latest stage in src_stages is after the earliest stage in dst_stages.

DependencySelfDependencyViewLocalNonzeroOffset

Fields

dependency: u32

A subpass dependency specifies a subpass self-dependency and has the view_local dependency enabled, but the inner offset value was not 0.

DependencySelfDependencyViewMaskMultiple

Fields

dependency: u32
subpass: u32

A subpass dependency specifies a subpass self-dependency without the view_local dependency, but the referenced subpass has more than one bit set in its view_mask.

DependencySourceSubpassAfterDestinationSubpass

Fields

dependency: u32

A subpass dependency has a src_subpass that is later than the dst_subpass.

DependencyStageNotSupported

Fields

dependency: u32

A subpass dependency has a bit set in the src_stages or dst_stages that is not supported for graphics pipelines.

DependencySubpassOutOfRange

Fields

dependency: u32
subpass: u32

A subpass index in a subpass dependency is not less than the number of subpasses in the render pass.

DependencyViewLocalExternalDependency

Fields

dependency: u32

A subpass dependency has the view_local dependency enabled, but src_subpass or dst_subpass were set to None.

DependencyViewLocalMultiviewNotEnabled

Fields

dependency: u32

A subpass dependency has the view_local dependency enabled, but multiview is not enabled on the render pass.

SubpassAttachmentAspectsNotEmpty

Fields

subpass: u32
attachment: u32

A reference to an attachment used other than as an input attachment in a subpass has one or more aspects selected.

SubpassAttachmentLayoutInvalid

Fields

subpass: u32
attachment: u32
usage: &'static str

An attachment used as an attachment in a subpass has a layout that is not supported for that usage.

SubpassAttachmentLayoutMismatch

Fields

subpass: u32
attachment: u32

The layouts of all uses of an attachment in a subpass do not match.

SubpassAttachmentOutOfRange

Fields

subpass: u32
attachment: u32

An attachment index in a subpass is not less than the number of attachments in the render pass.

SubpassAttachmentUsageColorDepthStencil

Fields

subpass: u32
attachment: u32

An attachment is used as both a color attachment and a depth/stencil attachment in a subpass.

SubpassAttachmentFormatUsageNotSupported

Fields

subpass: u32
attachment: u32
usage: &'static str

An attachment used as an attachment in a subpass has a format that does not support that usage.

SubpassColorAttachmentWithResolveNotMultisampled

Fields

subpass: u32
attachment: u32

An attachment used as a color attachment in a subpass with resolve attachments has a samples value of SampleCount::Sample1.

SubpassColorDepthStencilAttachmentSamplesMismatch

Fields

subpass: u32
attachment: u32
samples: SampleCount
first_samples: SampleCount

An attachment used as a color or depth/stencil attachment in a subpass has a samples value that is different from the first color attachment.

SubpassInputAttachmentAspectsNotCompatible

Fields

subpass: u32
attachment: u32

A reference to an attachment used as an input attachment in a subpass selects aspects that are not present in the format of the attachment.

SubpassMaxColorAttachmentsExceeded

Fields

subpass: u32
color_attachment_count: u32
max: u32

The max_color_attachments limit has been exceeded for a subpass.

SubpassMaxMultiviewViewCountExceeded

Fields

subpass: u32
view_count: u32
max: u32

The max_multiview_view_count limit has been exceeded for a subpass.

SubpassMultiviewMismatch

Fields

subpass: u32
multiview: bool
first_subpass_multiview: bool

The multiview state (whether view_mask is nonzero) of a subpass is different from the first subpass.

SubpassPreserveAttachmentUsedElsewhere

Fields

subpass: u32
attachment: u32

An attachment marked as a preserve attachment in a subpass is also used as an attachment in that subpass.

SubpassResolveAttachmentsColorAttachmentsLenMismatch

Fields

subpass: u32

The resolve_attachments field of a subpass was not empty, but its length did not match the length of color_attachments.

SubpassResolveAttachmentFormatMismatch

Fields

subpass: u32
resolve_attachment: u32
color_attachment: u32

An attachment used as a resolve attachment in a subpass has a format value different from the corresponding color attachment.

SubpassResolveAttachmentMultisampled

Fields

subpass: u32
attachment: u32

An attachment used as a resolve attachment in a subpass has a samples value other than SampleCount::Sample1.

SubpassResolveAttachmentWithoutColorAttachment

Fields

subpass: u32

A resolve attachment in a subpass is Some, but the corresponding color attachment is None.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

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.

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
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.