RuntimeAtlas

Struct RuntimeAtlas 

Source
pub struct RuntimeAtlas { /* private fields */ }
Expand description

Runtime atlas with pixel data management.

This extends AtlasSession by managing actual pixel data in addition to geometry. Useful for game engines that need to dynamically update GPU textures.

Implementations§

Source§

impl RuntimeAtlas

Source

pub fn new(cfg: PackerConfig, strategy: RuntimeStrategy) -> Self

Create a new runtime atlas with pixel data management.

Source

pub fn with_background_color(self, color: Rgba<u8>) -> Self

Set the background color for new pages.

Source

pub fn append_with_image( &mut self, key: String, image: &RgbaImage, ) -> Result<(usize, Frame<String>, UpdateRegion)>

Append a texture with its pixel data. Returns (page_id, frame, update_region).

Source

pub fn append( &mut self, key: String, w: u32, h: u32, ) -> Result<(usize, Frame<String>)>

Append a texture by dimensions only (no pixel data). Returns (page_id, frame).

Source

pub fn evict_with_clear( &mut self, page_id: usize, key: &str, clear: bool, ) -> Option<UpdateRegion>

Evict a texture and optionally clear its region. Returns the region that was cleared (if clear=true).

Source

pub fn evict_by_key_with_clear( &mut self, key: &str, clear: bool, ) -> Option<UpdateRegion>

Evict a texture by key and optionally clear its region.

Source

pub fn get_page_image(&self, page_id: usize) -> Option<&RgbaImage>

Get a reference to the pixel data of a page.

Source

pub fn get_page_image_mut(&mut self, page_id: usize) -> Option<&mut RgbaImage>

Get a mutable reference to the pixel data of a page.

Source

pub fn num_pages(&self) -> usize

Get the number of pages with pixel data.

Source

pub fn get_frame(&self, key: &str) -> Option<(usize, &Frame<String>)>

Source

pub fn contains(&self, key: &str) -> bool

Source

pub fn keys(&self) -> Vec<&str>

Source

pub fn texture_count(&self) -> usize

Source

pub fn stats(&self) -> RuntimeStats

Source

pub fn snapshot_atlas(&self) -> Atlas<String>

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more