Enum rafx_api::RafxPipeline [−][src]
pub enum RafxPipeline { Empty(RafxPipelineEmpty), }
Expand description
Represents a complete GPU configuration for executing work.
There are two kinds of pipelines: Graphics and Compute
A pipeline includes fixed-function state (i.e. configuration) and programmable state (i.e. shaders). Pipelines are expensive objects to create. Ideally, they should be created when the application initializes or on a separate thread.
Pipelines are bound by command buffers. Fewer pipeline changes is better, and it is often worth batching draw calls that use the same pipeline to happen together so that the pipeline does not need to be changed as frequently.
Pipelines must not be dropped if they are in use by the GPU.
Variants
Implementations
Returns the type of pipeline that this is
Returns the root signature used to create the pipeline
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for RafxPipeline
impl Send for RafxPipeline
impl Sync for RafxPipeline
impl Unpin for RafxPipeline
impl UnwindSafe for RafxPipeline
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more