#[repr(C, align(4))]pub struct Sprite {
pub tag: u32,
pub color_cmd: u32,
pub xy: u32,
pub uv_clut: u32,
pub wh: u32,
}Expand description
Textured sprite (variable size). 5 words (tag + 4 data).
Fields§
§tag: u32OT linkage.
color_cmd: u320x64000000 | color header (blend color applied over texture).
xy: u32Top-left xy.
uv_clut: u32uv | clut (U/V in low half, CLUT handle in high half).
wh: u32Size wh.
Implementations§
Source§impl Sprite
impl Sprite
Sourcepub const fn new(
x: i16,
y: i16,
w: u16,
h: u16,
uv: (u8, u8),
clut: u16,
r: u8,
g: u8,
b: u8,
) -> Self
pub const fn new( x: i16, y: i16, w: u16, h: u16, uv: (u8, u8), clut: u16, r: u8, g: u8, b: u8, ) -> Self
Build a textured sprite. clut is the CLUT register handle
(y << 6 | x >> 4); uv is the 8-bit texcoord within the
texture page.
Sourcepub const fn with_material(
x: i16,
y: i16,
w: u16,
h: u16,
uv: (u8, u8),
material: TextureMaterial,
) -> Self
pub const fn with_material( x: i16, y: i16, w: u16, h: u16, uv: (u8, u8), material: TextureMaterial, ) -> Self
Build a textured sprite using a TextureMaterial.
Sprite packets do not carry a tpage word. The material’s CLUT, tint, raw-texture bit, and semi-transparent command bit are encoded in the packet; the caller must set the matching draw mode before OT submission if the sprite samples a non-current tpage.
Trait Implementations§
impl Copy for Sprite
impl Eq for Sprite
impl StructuralPartialEq for Sprite
Auto Trait Implementations§
impl Freeze for Sprite
impl RefUnwindSafe for Sprite
impl Send for Sprite
impl Sync for Sprite
impl Unpin for Sprite
impl UnsafeUnpin for Sprite
impl UnwindSafe for Sprite
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)