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]
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]
primitive_assembler: PrimitiveAssemblerDesc<'a, B>,
rasterizer: Rasterizer,
fragment: Option<EntryPoint<'a, B>>,
layout: &'a B::PipelineLayout,
subpass: Subpass<'a, B>
) -> Self
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]
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,
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,
impl<'a, B> Send for GraphicsPipelineDesc<'a, B>
impl<'a, B> Send for GraphicsPipelineDesc<'a, B>
impl<'a, B> Sync for GraphicsPipelineDesc<'a, B>
impl<'a, B> Sync for GraphicsPipelineDesc<'a, B>
impl<'a, B> Unpin for GraphicsPipelineDesc<'a, B>
impl<'a, B> Unpin for GraphicsPipelineDesc<'a, B>
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,
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,