pub struct AlphaBatchBuilder {
    pub alpha_batch_list: AlphaBatchList,
    pub opaque_batch_list: OpaqueBatchList,
    pub render_task_id: RenderTaskId,
    render_task_address: RenderTaskAddress,
}Expand description
Encapsulates the logic of building batches for items that are blended.
Fields§
§alpha_batch_list: AlphaBatchList§opaque_batch_list: OpaqueBatchList§render_task_id: RenderTaskId§render_task_address: RenderTaskAddressImplementations§
Source§impl AlphaBatchBuilder
 
impl AlphaBatchBuilder
pub fn new( screen_size: DeviceIntSize, break_advanced_blend_batches: bool, lookback_count: usize, render_task_id: RenderTaskId, render_task_address: RenderTaskAddress, memory: &FrameMemory, ) -> Self
Sourcefn clear(&mut self)
 
fn clear(&mut self)
Clear all current batches in this builder. This is typically used when a primitive is encountered that occludes all previous content in this batch list.
pub fn build( self, batch_containers: &mut Vec<AlphaBatchContainer, FrameAllocator>, merged_batches: &mut AlphaBatchContainer, task_rect: DeviceIntRect, task_scissor_rect: Option<DeviceIntRect>, )
pub fn push_single_instance( &mut self, key: BatchKey, features: BatchFeatures, bounding_rect: &PictureRect, z_id: ZBufferId, instance: PrimitiveInstanceData, )
pub fn set_params_and_get_batch( &mut self, key: BatchKey, features: BatchFeatures, bounding_rect: &PictureRect, z_id: ZBufferId, ) -> &mut Vec<PrimitiveInstanceData, FrameAllocator>
Auto Trait Implementations§
impl Freeze for AlphaBatchBuilder
impl RefUnwindSafe for AlphaBatchBuilder
impl Send for AlphaBatchBuilder
impl !Sync for AlphaBatchBuilder
impl Unpin for AlphaBatchBuilder
impl UnwindSafe for AlphaBatchBuilder
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
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