pub struct RenderPipelineDescriptor<'a, PLL = PipelineLayoutId, SM = ShaderModuleId, PLC = PipelineCacheId> {
pub label: Label<'a>,
pub layout: Option<PLL>,
pub vertex: VertexState<'a, SM>,
pub primitive: PrimitiveState,
pub depth_stencil: Option<DepthStencilState>,
pub multisample: MultisampleState,
pub fragment: Option<FragmentState<'a, SM>>,
pub multiview_mask: Option<NonZeroU32>,
pub cache: Option<PLC>,
}Expand description
Describes a render (graphics) pipeline.
Fields§
§label: Label<'a>§layout: Option<PLL>The layout of bind groups for this pipeline.
vertex: VertexState<'a, SM>The vertex processing state for this pipeline.
primitive: PrimitiveStateThe properties of the pipeline at the primitive assembly and rasterization level.
depth_stencil: Option<DepthStencilState>The effect of draw calls on the depth and stencil aspects of the output target, if any.
multisample: MultisampleStateThe multi-sampling properties of the pipeline.
fragment: Option<FragmentState<'a, SM>>The fragment processing state for this pipeline.
multiview_mask: Option<NonZeroU32>If the pipeline will be used with a multiview render pass, this indicates how many array layers the attachments will have.
cache: Option<PLC>The pipeline cache to use when creating this pipeline.
Trait Implementations§
Source§impl<'a, PLL: Clone, SM: Clone, PLC: Clone> Clone for RenderPipelineDescriptor<'a, PLL, SM, PLC>
impl<'a, PLL: Clone, SM: Clone, PLC: Clone> Clone for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Source§fn clone(&self) -> RenderPipelineDescriptor<'a, PLL, SM, PLC>
fn clone(&self) -> RenderPipelineDescriptor<'a, PLL, SM, PLC>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a, PLL: Debug, SM: Debug, PLC: Debug> Debug for RenderPipelineDescriptor<'a, PLL, SM, PLC>
impl<'a, PLL: Debug, SM: Debug, PLC: Debug> Debug for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Source§impl<'de, 'a, PLL, SM, PLC> Deserialize<'de> for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Available on crate feature serde only.
impl<'de, 'a, PLL, SM, PLC> Deserialize<'de> for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Available on crate feature
serde only.Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<'a, PLL, SM, PLC> Serialize for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Available on crate feature serde only.
impl<'a, PLL, SM, PLC> Serialize for RenderPipelineDescriptor<'a, PLL, SM, PLC>
Available on crate feature
serde only.Auto Trait Implementations§
impl<'a, PLL, SM, PLC> Freeze for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: Freeze,
VertexState<'a, SM>: Freeze,
Option<FragmentState<'a, SM>>: Freeze,
Option<PLC>: Freeze,
impl<'a, PLL, SM, PLC> RefUnwindSafe for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: RefUnwindSafe,
VertexState<'a, SM>: RefUnwindSafe,
Option<FragmentState<'a, SM>>: RefUnwindSafe,
Option<PLC>: RefUnwindSafe,
impl<'a, PLL, SM, PLC> Send for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: Send,
VertexState<'a, SM>: Send,
Option<FragmentState<'a, SM>>: Send,
Option<PLC>: Send,
impl<'a, PLL, SM, PLC> Sync for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: Sync,
VertexState<'a, SM>: Sync,
Option<FragmentState<'a, SM>>: Sync,
Option<PLC>: Sync,
impl<'a, PLL, SM, PLC> Unpin for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: Unpin,
VertexState<'a, SM>: Unpin,
Option<FragmentState<'a, SM>>: Unpin,
Option<PLC>: Unpin,
impl<'a, PLL, SM, PLC> UnsafeUnpin for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: UnsafeUnpin,
VertexState<'a, SM>: UnsafeUnpin,
Option<FragmentState<'a, SM>>: UnsafeUnpin,
Option<PLC>: UnsafeUnpin,
impl<'a, PLL, SM, PLC> UnwindSafe for RenderPipelineDescriptor<'a, PLL, SM, PLC>where
Option<PLL>: UnwindSafe,
VertexState<'a, SM>: UnwindSafe,
Option<FragmentState<'a, SM>>: UnwindSafe,
Option<PLC>: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more