pub struct InstanceUpload { /* private fields */ }Expand description
Checked immutable device payload without graphics API handles.
Implementations§
Source§impl InstanceUpload
impl InstanceUpload
Sourcepub fn new(
records: impl ExactSizeIterator<Item = InstanceRecord>,
sprite_size: [u32; 2],
texels: impl IntoIterator<Item = [f32; 4]>,
) -> Result<Self, ValidationError>
pub fn new( records: impl ExactSizeIterator<Item = InstanceRecord>, sprite_size: [u32; 2], texels: impl IntoIterator<Item = [f32; 4]>, ) -> Result<Self, ValidationError>
Encodes checked twelve-word source-over primitives followed by a shared row-major linear RGBA image. A zero image size requires no texels; sprite records require a nonempty image.
Sourcepub fn new_blended(
records: impl ExactSizeIterator<Item = InstanceRecord>,
sprite_size: [u32; 2],
texels: impl IntoIterator<Item = [f32; 4]>,
blend: InstanceBlend,
) -> Result<Self, ValidationError>
pub fn new_blended( records: impl ExactSizeIterator<Item = InstanceRecord>, sprite_size: [u32; 2], texels: impl IntoIterator<Item = [f32; 4]>, blend: InstanceBlend, ) -> Result<Self, ValidationError>
Like Self::new, with an explicit batch compositing rule.
Sourcepub fn new_extended(
records: impl ExactSizeIterator<Item = ExtendedInstanceRecord>,
sprite_size: [u32; 2],
texels: impl IntoIterator<Item = [f32; 4]>,
blend: InstanceBlend,
) -> Result<Self, ValidationError>
pub fn new_extended( records: impl ExactSizeIterator<Item = ExtendedInstanceRecord>, sprite_size: [u32; 2], texels: impl IntoIterator<Item = [f32; 4]>, blend: InstanceBlend, ) -> Result<Self, ValidationError>
Encodes versioned sixteen-word primitives and a batch compositing rule.
Sourcepub fn into_words(self) -> Vec<f32>
pub fn into_words(self) -> Vec<f32>
Transfers the validated words to the device planner without another allocation.
Trait Implementations§
Auto Trait Implementations§
impl Forget for InstanceUpload
impl Freeze for InstanceUpload
impl RefUnwindSafe for InstanceUpload
impl Send for InstanceUpload
impl Sync for InstanceUpload
impl Unpin for InstanceUpload
impl UnsafeUnpin for InstanceUpload
impl UnwindSafe for InstanceUpload
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