[][src]Enum bedrock::resources::ImageLayout

#[repr(u32)]
pub enum ImageLayout {
    Undefined,
    Preinitialized,
    General,
    ColorAttachmentOpt,
    DepthStencilAttachmentOpt,
    DepthStencilReadOnlyOpt,
    ShaderReadOnlyOpt,
    TransferSrcOpt,
    TransferDestOpt,
    PresentSrc,
}

Layouts of image and image subresources

Variants

Undefined

does not support device access

Preinitialized

does not support device access. host can be written to this memory immediately

General

supports all types of device access

ColorAttachmentOpt

must only be used as a color or resolve attachment in a Framebuffer

DepthStencilAttachmentOpt

must only be used as a depth/stencil attachment in a Framebuffer

DepthStencilReadOnlyOpt

must only be used as a read-only depth/stencil attachment in a Framebuffer and/or as a read-only image in a shader (which can be read as a sampled image, combined image/sampler and/or input attachment).

ShaderReadOnlyOpt

must only be used as a read-only image in a shader (which can be read as a sampled image, combined image/sampler and/or input attachment).

TransferSrcOpt

must only be used as a source image of a transfer command

TransferDestOpt

must only be used as a destination image of a transfer command

PresentSrc

must only be used for presenting a swapchain image for display

Methods

impl ImageLayout[src]

pub fn default_access_mask(self) -> VkAccessFlags[src]

Commonly used access types with the layout

Trait Implementations

impl Clone for ImageLayout[src]

impl Copy for ImageLayout[src]

impl Debug for ImageLayout[src]

impl Eq for ImageLayout[src]

impl PartialEq<ImageLayout> for ImageLayout[src]

impl StructuralEq for ImageLayout[src]

impl StructuralPartialEq for ImageLayout[src]

Auto Trait Implementations

impl RefUnwindSafe for ImageLayout

impl Send for ImageLayout

impl Sync for ImageLayout

impl Unpin for ImageLayout

impl UnwindSafe for ImageLayout

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.