Enum sierra::PipelineStage[][src]

pub enum PipelineStage {
    TopOfPipe,
    DrawIndirect,
    VertexInput,
    VertexShader,
    EarlyFragmentTests,
    FragmentShader,
    LateFragmentTests,
    ColorAttachmentOutput,
    ComputeShader,
    Transfer,
    BottomOfPipe,
    Host,
    RayTracingShader,
    AccelerationStructureBuild,
}

Enum to specify one pipeline stage.

Variants

TopOfPipe

Pseudo-stage that precedes all other stages and doesn’t execute any commands. Using it in first scope of dependency will not cause any waiting, because no operations should be waited upon. Using it in second scope will make all operations in second scope to wait for operations first scope.

DrawIndirect

Stage at which indirect draw buffer is read.

VertexInput

Stage at which vertex buffers are read.

VertexShader

Stage at which vertex shader is executed.

EarlyFragmentTests

Stage at which early fragment depth and stencil test is performed before fragment shader execution.

FragmentShader

Stage at which fragment shader is executed.

LateFragmentTests

Stage at which late fragment depth and stencil test is performed after fragment shader execution.

ColorAttachmentOutput

Stage at which color output of fragment shader is written and multi-sample resolve operation happens.

ComputeShader

Stage at which compute shader is executed.

Transfer

Stage at which transfer commands (Copy, Blit etc) are executed.

BottomOfPipe

Pseudo-stage that follows all other stages and doesn’t execute any commands. Using it in first scope will make operations in second scope to wait for all operations first scope. Using it in second scope of dependency will not cause any waiting, because no operations should be waited upon.

Host

Pseudo-stage at which HOST access to resources is performed. It has very limited use because command submission creates memory dependency between host access and device operations.

RayTracingShader

Stage at which ray-tracing pipeline is executed.

AccelerationStructureBuild

Stage at which acceleration structures are built.

Trait Implementations

impl Clone for PipelineStage[src]

impl Copy for PipelineStage[src]

impl Debug for PipelineStage[src]

impl Eq for PipelineStage[src]

impl Hash for PipelineStage[src]

impl PartialEq<PipelineStage> for PipelineStage[src]

impl StructuralEq for PipelineStage[src]

impl StructuralPartialEq for PipelineStage[src]

Auto Trait Implementations

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