Struct gfx_hal::pso::GraphicsPipelineDesc[][src]

pub struct GraphicsPipelineDesc<'a, B: Backend> {
    pub label: Option<&'a str>,
    pub primitive_assembler: PrimitiveAssemblerDesc<'a, B>,
    pub rasterizer: Rasterizer,
    pub fragment: Option<EntryPoint<'a, B>>,
    pub blender: BlendDesc,
    pub depth_stencil: DepthStencilDesc,
    pub multisampling: Option<Multisampling>,
    pub baked_states: BakedStates,
    pub layout: &'a B::PipelineLayout,
    pub subpass: Subpass<'a, B>,
    pub flags: PipelineCreationFlags,
    pub parent: BasePipeline<'a, B::GraphicsPipeline>,
}

A description of all the settings that can be altered when creating a graphics pipeline.

Fields

label: Option<&'a str>

Pipeline label

primitive_assembler: PrimitiveAssemblerDesc<'a, B>

Primitive assembler

rasterizer: Rasterizer

Rasterizer setup

fragment: Option<EntryPoint<'a, B>>

A shader that outputs a value for a fragment. Usually this value is a color that is then displayed as a pixel on a screen.

If a fragment shader is omitted, the results of fragment processing are undefined. Specifically, any fragment color outputs are considered to have undefined values, and the fragment depth is considered to be unmodified. This can be useful for depth-only rendering.

blender: BlendDesc

Description of how blend operations should be performed.

depth_stencil: DepthStencilDesc

Depth stencil (DSV)

multisampling: Option<Multisampling>

Multisampling.

baked_states: BakedStates

Static pipeline states.

layout: &'a B::PipelineLayout

Pipeline layout.

subpass: Subpass<'a, B>

Subpass in which the pipeline can be executed.

flags: PipelineCreationFlags

Options that may be set to alter pipeline properties.

parent: BasePipeline<'a, B::GraphicsPipeline>

The parent pipeline, which may be BasePipeline::None.

Implementations

impl<'a, B: Backend> GraphicsPipelineDesc<'a, B>[src]

pub fn new(
    primitive_assembler: PrimitiveAssemblerDesc<'a, B>,
    rasterizer: Rasterizer,
    fragment: Option<EntryPoint<'a, B>>,
    layout: &'a B::PipelineLayout,
    subpass: Subpass<'a, B>
) -> Self
[src]

Create a new empty PSO descriptor.

Trait Implementations

impl<'a, B: Debug + Backend> Debug for GraphicsPipelineDesc<'a, B> where
    B::PipelineLayout: Debug,
    B::GraphicsPipeline: Debug
[src]

Auto Trait Implementations

impl<'a, B> RefUnwindSafe for GraphicsPipelineDesc<'a, B> where
    <B as Backend>::GraphicsPipeline: RefUnwindSafe,
    <B as Backend>::PipelineLayout: RefUnwindSafe,
    <B as Backend>::RenderPass: RefUnwindSafe,
    <B as Backend>::ShaderModule: RefUnwindSafe
[src]

impl<'a, B> Send for GraphicsPipelineDesc<'a, B>[src]

impl<'a, B> Sync for GraphicsPipelineDesc<'a, B>[src]

impl<'a, B> Unpin for GraphicsPipelineDesc<'a, B>[src]

impl<'a, B> UnwindSafe for GraphicsPipelineDesc<'a, B> where
    <B as Backend>::GraphicsPipeline: RefUnwindSafe,
    <B as Backend>::PipelineLayout: RefUnwindSafe,
    <B as Backend>::RenderPass: RefUnwindSafe,
    <B as Backend>::ShaderModule: RefUnwindSafe
[src]

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