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
AttachmentFirstUseLoadOpInvalid
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
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
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
A reference to an attachment used other than as an input attachment in a subpass has one or more aspects selected.
SubpassAttachmentLayoutInvalid
An attachment used as an attachment in a subpass has a layout that is not supported for that usage.
SubpassAttachmentLayoutMismatch
The layouts of all uses of an attachment in a subpass do not match.
SubpassAttachmentOutOfRange
An attachment index in a subpass is not less than the number of attachments in the render pass.
SubpassAttachmentUsageColorDepthStencil
An attachment is used as both a color attachment and a depth/stencil attachment in a subpass.
SubpassAttachmentFormatUsageNotSupported
An attachment used as an attachment in a subpass has a format that does not support that usage.
SubpassColorAttachmentWithResolveNotMultisampled
An attachment used as a color attachment in a subpass with resolve attachments has a
samples
value of SampleCount::Sample1
.
SubpassColorDepthStencilAttachmentSamplesMismatch
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
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
The max_color_attachments
limit has been exceeded for a subpass.
SubpassMaxMultiviewViewCountExceeded
The max_multiview_view_count
limit has been exceeded for a subpass.
SubpassMultiviewMismatch
The multiview state (whether view_mask
is nonzero) of a subpass is different from the
first subpass.
SubpassPreserveAttachmentUsedElsewhere
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
An attachment used as a resolve attachment in a subpass has a format
value different from
the corresponding color attachment.
SubpassResolveAttachmentMultisampled
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
sourceimpl Clone for RenderPassCreationError
impl Clone for RenderPassCreationError
sourcefn clone(&self) -> RenderPassCreationError
fn clone(&self) -> RenderPassCreationError
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more