pub enum PaintItem {
QuadRun(usize),
IconRun(usize),
Text(usize),
Image(usize),
AppTexture(usize),
Vector(usize),
Scene3D(usize),
BackdropSnapshot,
}Expand description
Sequencing entry for the recorded paint stream.
QuadRun(idx)— a contiguous instance run (indexed intoruns).IconRun(idx)— a vector icon run (backend-owned storage, indexed by the wgpu icon painter; other backends may keep using text fallback and never emit this item).Text(idx)— a glyph layer (indexed into the backend’sTextLayervector).BackdropSnapshot— a pass boundary. The backend ends the current render pass, copies the current target into its managed snapshot texture, and begins a new pass withLoadOp::Loadso subsequent quads can sample the snapshot via thebackdropbind group. At most one of these is emitted per frame, inserted by [crate::runtime::RunnerCore::prepare_paint] immediately before the first quad bound to asamples_backdropshader.
Variants§
QuadRun(usize)
IconRun(usize)
Text(usize)
Image(usize)
One raster image draw. Indexes into the backend’s
ImagePaint-equivalent storage. Produced by
[crate::runtime::TextRecorder::record_image] from a
crate::ir::DrawOp::Image.
AppTexture(usize)
One app-owned-texture composite. Indexes into the backend’s
SurfacePaint-equivalent storage. Produced by the backend’s
surface recorder from a crate::ir::DrawOp::AppTexture.
Vector(usize)
One app-supplied vector draw. Indexes into the backend’s vector
storage; explicit render mode determines whether that storage is
tessellated geometry or an MSDF atlas entry. Produced from a
crate::ir::DrawOp::Vector.
Scene3D(usize)
One composited 3D scene. Indexes into the backend’s scene-renderer
storage. Unlike the other content items this is a two-phase draw:
the backend renders the scene offscreen (its own depth + MSAA) in a
pre-pass, then this item composites the resolved texture into the
main pass like an Self::AppTexture. Produced by the backend’s
scene recorder from a crate::ir::DrawOp::Scene3D. Backends
without a scene renderer leave the default no-op recorder, so no
item is emitted and the scene paints nothing.
BackdropSnapshot
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PaintItem
impl RefUnwindSafe for PaintItem
impl Send for PaintItem
impl Sync for PaintItem
impl Unpin for PaintItem
impl UnsafeUnpin for PaintItem
impl UnwindSafe for PaintItem
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.