logo
pub enum ImageCreationError {
Show 28 variants AllocError(DeviceMemoryError), RequirementNotMet { required_for: &'static str, requires_one_of: RequiresOneOf, }, Array2dCompatibleNot3d, BlockTexelViewCompatibleNotCompressed, CubeCompatibleNot2d, CubeCompatibleNotEnoughArrayLayers, CubeCompatibleNotSquare, CubeCompatibleMultisampling, ExternalMemoryInvalidInitialLayout, FormatNotSupported, FormatUsageNotSupported { usage: &'static str, }, ImageFormatPropertiesNotSupported, MaxArrayLayersExceeded { array_layers: u32, max: u32, }, MaxDimensionsExceeded { extent: [u32; 3], max: [u32; 3], }, MaxFramebufferDimensionsExceeded { extent: [u32; 2], max: [u32; 2], }, MaxMipLevelsExceeded { mip_levels: u32, max: u32, }, MultisampleCubeCompatible, MultisampleLinearTiling, MultisampleMultipleMipLevels, MultisampleNot2d, SampleCountNotSupported { samples: SampleCount, supported: SampleCounts, }, SharingQueueFamilyIndexOutOfRange { queue_family_index: u32, queue_family_count: u32, }, StencilUsageMismatch { usage: ImageUsage, stencil_usage: ImageUsage, }, YcbcrFormatInvalidDimensions, YcbcrFormatMultipleMipLevels, YcbcrFormatMultisampling, YcbcrFormatNot2d, DirectImageViewCreationFailed(ImageViewCreationError),
}
Expand description

Error that can happen when creating an instance.

Variants

AllocError(DeviceMemoryError)

Allocating memory failed.

RequirementNotMet

Fields

required_for: &'static str
requires_one_of: RequiresOneOf

Array2dCompatibleNot3d

The array_2d_compatible flag was enabled, but the image type was not 3D.

BlockTexelViewCompatibleNotCompressed

The block_texel_view_compatible flag was enabled, but the given format was not compressed.

CubeCompatibleNot2d

The cube_compatible flag was enabled, but the image type was not 2D.

CubeCompatibleNotEnoughArrayLayers

The cube_compatible flag was enabled, but the number of array layers was less than 6.

CubeCompatibleNotSquare

The cube_compatible flag was enabled, but the image dimensions were not square.

CubeCompatibleMultisampling

The cube_compatible flag was enabled together with multisampling.

ExternalMemoryInvalidInitialLayout

One or more external memory handle types were provided, but the initial layout was not Undefined.

FormatNotSupported

The given format was not supported by the device.

FormatUsageNotSupported

Fields

usage: &'static str

A requested usage flag was not supported by the given format.

ImageFormatPropertiesNotSupported

The image configuration as queried through the image_format_properties function was not supported by the device.

MaxArrayLayersExceeded

Fields

array_layers: u32
max: u32

The number of array layers exceeds the maximum supported by the device for this image configuration.

MaxDimensionsExceeded

Fields

extent: [u32; 3]
max: [u32; 3]

The specified dimensions exceed the maximum supported by the device for this image configuration.

MaxFramebufferDimensionsExceeded

Fields

extent: [u32; 2]
max: [u32; 2]

The usage included one of the attachment types, and the specified width and height exceeded the max_framebuffer_width or max_framebuffer_height limits.

MaxMipLevelsExceeded

Fields

mip_levels: u32
max: u32

The maximum number of mip levels for the given dimensions has been exceeded.

MultisampleCubeCompatible

Multisampling was enabled, and the cube_compatible flag was set.

MultisampleLinearTiling

Multisampling was enabled, and tiling was Linear.

MultisampleMultipleMipLevels

Multisampling was enabled, and multiple mip levels were specified.

MultisampleNot2d

Multisampling was enabled, but the image type was not 2D.

SampleCountNotSupported

Fields

samples: SampleCount
supported: SampleCounts

The sample count is not supported by the device for this image configuration.

SharingQueueFamilyIndexOutOfRange

Fields

queue_family_index: u32
queue_family_count: u32

The sharing mode was set to Concurrent, but one of the specified queue family indices was out of range.

StencilUsageMismatch

Fields

usage: ImageUsage
stencil_usage: ImageUsage

The provided usage and stencil_usage have different values for depth_stencil_attachment or transient_attachment.

YcbcrFormatInvalidDimensions

A YCbCr format was given, but the specified width and/or height was not a multiple of 2 as required by the format’s chroma subsampling.

YcbcrFormatMultipleMipLevels

A YCbCr format was given, and multiple mip levels were specified.

YcbcrFormatMultisampling

A YCbCr format was given, and multisampling was enabled.

YcbcrFormatNot2d

A YCbCr format was given, but the image type was not 2D.

DirectImageViewCreationFailed(ImageViewCreationError)

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.
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.