pub enum PipelineKind {
Draw(Frag),
Cover(Frag),
OpaqueDraw(Frag),
OpaqueCover(Frag),
StencilFan {
even_odd: bool,
},
ClipCover {
difference: bool,
},
Filter(Frag),
Strip(Frag),
Text {
mode: TextMode,
},
}Expand description
PipelineKind selects the vertex source and the color, depth, and stencil role.
Any fragment family composes with either color role: a gradient can fill a path cover quad as readily as a rectangle.
Variants§
Draw(Frag)
Plain colored quad draw (rects, images, gradients).
Cover(Frag)
StC pass 2: quad gated on stencil != 0, resetting it to 0.
OpaqueDraw(Frag)
Draw, but provably opaque: writes DEPTH so earlier
(lower-z) fragments early-z-cull under it; blending off (replace).
OpaqueCover(Frag)
Cover, opaque: stencil-gated quad that also writes depth.
StencilFan
StC pass 1: path fan into the STENCIL buffer only (no color, no depth).
ClipCover
Depth-clip ceiling: z=expiry written outside (Intersect) or inside (Difference) the stenciled shape; no color.
Filter(Frag)
Bare color work between the frame’s passes (gaussian blur chains): 1-sample, no depth/stencil, output replaces the target.
Strip(Frag)
Stroke geometry: a CPU triangle STRIP along the path; depth-tested like a draw, any fragment family composes.
Text
Atlas-masked glyph quads (pos + uv vertices).
Fields
mode: TextModeImplementations§
Source§impl PipelineKind
impl PipelineKind
Sourcepub fn sample_count(self) -> u32
pub fn sample_count(self) -> u32
sample_count returns 1 for filter passes and SAMPLE_COUNT otherwise.
Trait Implementations§
Source§impl Clone for PipelineKind
impl Clone for PipelineKind
Source§fn clone(&self) -> PipelineKind
fn clone(&self) -> PipelineKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for PipelineKind
Source§impl Debug for PipelineKind
impl Debug for PipelineKind
impl Eq for PipelineKind
Source§impl Hash for PipelineKind
impl Hash for PipelineKind
Source§impl PartialEq for PipelineKind
impl PartialEq for PipelineKind
impl StructuralPartialEq for PipelineKind
Auto Trait Implementations§
impl Freeze for PipelineKind
impl RefUnwindSafe for PipelineKind
impl Send for PipelineKind
impl Sync for PipelineKind
impl Unpin for PipelineKind
impl UnsafeUnpin for PipelineKind
impl UnwindSafe for PipelineKind
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.