Struct vulkano::image::ImageUsage [] [src]

pub struct ImageUsage {
    pub transfer_source: bool,
    pub transfer_destination: bool,
    pub sampled: bool,
    pub storage: bool,
    pub color_attachment: bool,
    pub depth_stencil_attachment: bool,
    pub transient_attachment: bool,
    pub input_attachment: bool,
}

Describes how an image is going to be used. This is not an optimization.

If you try to use an image in a way that you didn't declare, a panic will happen.

If transient_attachment is true, then only color_attachment, depth_stencil_attachment and input_attachment can be true as well. The rest must be false or an error will be returned when creating the image.

Fields

Can be used as a source for transfers. Includes blits.

Can be used as a destination for transfers. Includes blits.

Can be sampled from a shader.

Can be used as an image storage in a shader.

Can be attached as a color attachment to a framebuffer.

Can be attached as a depth, stencil or depth-stencil attachment to a framebuffer.

Indicates that this image will only ever be used as a temporary framebuffer attachment. As soon as you leave a render pass, the content of transient images becomes undefined.

This is a hint to the Vulkan implementation that it may not need allocate any memory for this image if the image can live entirely in some cache.

Can be used as an input attachment. In other words, you can draw to it in a subpass then read from it in a following pass.

Methods

impl ImageUsage
[src]

[src]

Builds a ImageUsage with all values set to true. Note that using the returned value will produce an error because of transient_attachment being true.

[src]

Builds a ImageUsage with all values set to false. Useful as a default value.

Example

use vulkano::image::ImageUsage as ImageUsage;

let _usage = ImageUsage {
    transfer_destination: true,
    sampled: true,
    .. ImageUsage::none()
};

Trait Implementations

impl Debug for ImageUsage
[src]

[src]

Formats the value using the given formatter.

impl Copy for ImageUsage
[src]

impl Clone for ImageUsage
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl PartialEq for ImageUsage
[src]

[src]

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

[src]

This method tests for !=.

impl Eq for ImageUsage
[src]

impl Hash for ImageUsage
[src]

[src]

Feeds this value into the given [Hasher]. Read more

1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl BitOr for ImageUsage
[src]

The resulting type after applying the | operator.

[src]

Performs the | operation.