logo
pub enum RenderPassCreationError {
Show 34 variants OomError(OomError), ExtensionNotEnabled { extension: &'static str, reason: &'static str, }, FeatureNotEnabled { feature: &'static str, reason: &'static str, }, 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, }, SubpassAttachmentUsageNotSupported { 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_attachments: 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.

ExtensionNotEnabled

Fields

extension: &'static str
reason: &'static str

FeatureNotEnabled

Fields

feature: &'static str
reason: &'static str

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 source_subpass and destination_subpass set to None.

DependencySelfDependencyFramebufferStagesWithoutByRegion

Fields

dependency: u32

A subpass dependency specifies a subpass self-dependency and includes framebuffer stages in both source_stages and destination_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 source_stages is after the earliest stage in destination_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 source_subpass that is later than the destination_subpass.

DependencyStageNotSupported

Fields

dependency: u32

A subpass dependency has a bit set in the source_stages or destination_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 source_subpass or destination_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.

SubpassAttachmentUsageNotSupported

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_attachments: u32
max: u32

The max_color_attachments 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

🔬 This is a nightly-only experimental API. (backtrace)

Returns a stack backtrace, if available, of where this error occurred. 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

Performs the conversion.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

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 resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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.