Struct FullShaders
pub struct FullShaders {Show 52 fields
pub pathtag_reduce: ShaderId,
pub pathtag_reduce2: ShaderId,
pub pathtag_scan1: ShaderId,
pub pathtag_scan: ShaderId,
pub pathtag_scan_large: ShaderId,
pub bbox_clear: ShaderId,
pub flatten: ShaderId,
pub draw_reduce: ShaderId,
pub draw_leaf: ShaderId,
pub draw_prefix: ShaderId,
pub draw_leaf_prefix: ShaderId,
pub clip_reduce: ShaderId,
pub clip_leaf: ShaderId,
pub clip_leaf_single_group: Option<ShaderId>,
pub binning: ShaderId,
pub tile_alloc: ShaderId,
pub tile_alloc_sparse: Option<ShaderId>,
pub backdrop: ShaderId,
pub path_count_setup: ShaderId,
pub path_count: ShaderId,
pub path_count_direct: ShaderId,
pub coarse: ShaderId,
pub coarse_sparse: Option<ShaderId>,
pub coarse_sparse_active: Option<ShaderId>,
pub coarse_opaque_prune: Option<ShaderId>,
pub coarse_sparse_opaque_prune: Option<ShaderId>,
pub coarse_sparse_active_opaque_prune: Option<ShaderId>,
pub coarse_solid_fuse: Option<ShaderId>,
pub coarse_sparse_solid_fuse: Option<ShaderId>,
pub coarse_sparse_active_solid_fuse: Option<ShaderId>,
pub path_tiling_setup: ShaderId,
pub path_tiling: ShaderId,
pub path_tiling_direct: ShaderId,
pub path_tiling_segment_row_mask: Option<ShaderId>,
pub path_tiling_direct_segment_row_mask: Option<ShaderId>,
pub fine_area: Option<ShaderId>,
pub fine_area_ppt8: Option<ShaderId>,
pub fine_msaa8: Option<ShaderId>,
pub fine_msaa16: Option<ShaderId>,
pub fine_sparse_area: Option<ShaderId>,
pub fine_sparse_area_ppt8: Option<ShaderId>,
pub fine_sparse_area_quad_skip: Option<ShaderId>,
pub fine_sparse_area_solid_fuse: Option<ShaderId>,
pub fine_sparse_area_segment_row_mask: Option<ShaderId>,
pub canonical_segment_order_full: Option<ShaderId>,
pub canonical_segment_order_sparse: Option<ShaderId>,
pub canonical_segment_order_sparse_solid_fuse: Option<ShaderId>,
pub pathtag_is_cpu: bool,
pub cpu_metadata_enabled: bool,
pub cpu_draw_prefix_enabled: bool,
pub direct_path_dispatch_enabled: bool,
pub direct_path_workgroups: u32,
}Fields§
§pathtag_reduce: ShaderId§pathtag_reduce2: ShaderId§pathtag_scan1: ShaderId§pathtag_scan: ShaderId§pathtag_scan_large: ShaderId§bbox_clear: ShaderId§flatten: ShaderId§draw_reduce: ShaderId§draw_leaf: ShaderId§draw_prefix: ShaderId§draw_leaf_prefix: ShaderId§clip_reduce: ShaderId§clip_leaf: ShaderId§clip_leaf_single_group: Option<ShaderId>Single-workgroup GPU clip leaf that omits only the empty cross-group prefix.
binning: ShaderId§tile_alloc: ShaderId§tile_alloc_sparse: Option<ShaderId>§backdrop: ShaderId§path_count_setup: ShaderId§path_count: ShaderId§path_count_direct: ShaderId§coarse: ShaderId§coarse_sparse: Option<ShaderId>§coarse_sparse_active: Option<ShaderId>§coarse_opaque_prune: Option<ShaderId>§coarse_sparse_opaque_prune: Option<ShaderId>§coarse_sparse_active_opaque_prune: Option<ShaderId>§coarse_solid_fuse: Option<ShaderId>§coarse_sparse_solid_fuse: Option<ShaderId>§coarse_sparse_active_solid_fuse: Option<ShaderId>§path_tiling_setup: ShaderId§path_tiling: ShaderId§path_tiling_direct: ShaderId§path_tiling_segment_row_mask: Option<ShaderId>§path_tiling_direct_segment_row_mask: Option<ShaderId>§fine_area: Option<ShaderId>§fine_area_ppt8: Option<ShaderId>§fine_msaa8: Option<ShaderId>§fine_msaa16: Option<ShaderId>§fine_sparse_area: Option<ShaderId>§fine_sparse_area_ppt8: Option<ShaderId>§fine_sparse_area_quad_skip: Option<ShaderId>§fine_sparse_area_solid_fuse: Option<ShaderId>§fine_sparse_area_segment_row_mask: Option<ShaderId>§canonical_segment_order_full: Option<ShaderId>§canonical_segment_order_sparse: Option<ShaderId>§canonical_segment_order_sparse_solid_fuse: Option<ShaderId>§pathtag_is_cpu: bool§cpu_metadata_enabled: boolSelective CPU bbox/draw metadata must run before GPU flatten.
cpu_draw_prefix_enabled: boolBounded selective CPU draw-prefix with a GPU leaf permutation.
direct_path_dispatch_enabled: boolFixed-grid GPU path-count/tiling replaces indirect setup when enabled.
direct_path_workgroups: u32Initialization-time fixed grid shared by both direct path stages.
Auto Trait Implementations§
impl Freeze for FullShaders
impl RefUnwindSafe for FullShaders
impl Send for FullShaders
impl Sync for FullShaders
impl Unpin for FullShaders
impl UnsafeUnpin for FullShaders
impl UnwindSafe for FullShaders
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more