struct PipelineState {
pipeline: Arc<RenderPipeline>,
steps: Vec<VertexStep>,
push_constant_ranges: ArrayVec<PushConstantRange, { SHADER_STAGE_COUNT }>,
used_bind_groups: usize,
}Expand description
The bundle’s current pipeline, and some cached information needed for validation.
Fields§
§pipeline: Arc<RenderPipeline>The pipeline
steps: Vec<VertexStep>How this pipeline’s vertex shader traverses each vertex buffer, indexed by vertex buffer slot number.
push_constant_ranges: ArrayVec<PushConstantRange, { SHADER_STAGE_COUNT }>Ranges of push constants this pipeline uses, copied from the pipeline layout.
used_bind_groups: usizeThe number of bind groups this pipeline uses.
Implementations§
Source§impl PipelineState
impl PipelineState
fn new(pipeline: &Arc<RenderPipeline>) -> Self
Sourcefn zero_push_constants(&self) -> Option<impl Iterator<Item = ArcRenderCommand>>
fn zero_push_constants(&self) -> Option<impl Iterator<Item = ArcRenderCommand>>
Return a sequence of commands to zero the push constant ranges this
pipeline uses. If no initialization is necessary, return None.
Auto Trait Implementations§
impl Freeze for PipelineState
impl !RefUnwindSafe for PipelineState
impl Send for PipelineState
impl Sync for PipelineState
impl Unpin for PipelineState
impl !UnwindSafe for PipelineState
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