pub struct SpriteData { /* private fields */ }
Expand description
SpriteData is a structure representing transformation on a texture to become a sprite.
Implementations§
Source§impl SpriteData
impl SpriteData
Sourcepub fn new(pos: Vector<f32>) -> Self
pub fn new(pos: Vector<f32>) -> Self
Create a new SpriteData needed by SpriteBatch
Examples found in repository?
examples/batch.rs (line 21)
15fn main() -> Result<(), Box<Error>> {
16 let mut window = Window::new(gust::WIDTH, gust::HEIGHT, "Hello");
17
18 let texture = Rc::new(Texture::from_path("examples/texture/Dirt.png").unwrap());
19 let mut batch = SpriteBatch::from(&texture);
20 for i in 0..1_000_000 {
21 let mut data = SpriteData::new(Vector::new(i as f32 * 1.0, i as f32 * 10.0));
22 data.set_texture_raw([Vector::new(0.0, 0.0), Vector::new(1.0, 1.0)]);
23 batch.push_sprite(data);
24 }
25
26 let event_handler = EventHandler::new(&window);
27
28 window.set_clear_color(Color::new(0.45, 0.0, 1.0));
29 window.enable_cursor();
30 window.poll(None);
31 while window.is_open() {
32 window.poll_events();
33 for event in event_handler.fetch() {
34 event_process(event, &mut window, &mut batch);
35 }
36 window.clear();
37 window.draw_mut(&mut batch);
38 window.display();
39 }
40
41 Ok(())
42}
Sourcepub fn set_texture_raw(&mut self, text_coord: [Vector<f32>; 2])
pub fn set_texture_raw(&mut self, text_coord: [Vector<f32>; 2])
Set texture_coord Raw (gl like)
Examples found in repository?
examples/batch.rs (line 22)
15fn main() -> Result<(), Box<Error>> {
16 let mut window = Window::new(gust::WIDTH, gust::HEIGHT, "Hello");
17
18 let texture = Rc::new(Texture::from_path("examples/texture/Dirt.png").unwrap());
19 let mut batch = SpriteBatch::from(&texture);
20 for i in 0..1_000_000 {
21 let mut data = SpriteData::new(Vector::new(i as f32 * 1.0, i as f32 * 10.0));
22 data.set_texture_raw([Vector::new(0.0, 0.0), Vector::new(1.0, 1.0)]);
23 batch.push_sprite(data);
24 }
25
26 let event_handler = EventHandler::new(&window);
27
28 window.set_clear_color(Color::new(0.45, 0.0, 1.0));
29 window.enable_cursor();
30 window.poll(None);
31 while window.is_open() {
32 window.poll_events();
33 for event in event_handler.fetch() {
34 event_process(event, &mut window, &mut batch);
35 }
36 window.clear();
37 window.draw_mut(&mut batch);
38 window.display();
39 }
40
41 Ok(())
42}
Sourcepub fn set_texture_rect(&mut self, text_rect: Rect<u32>, texture_size: u32)
pub fn set_texture_rect(&mut self, text_rect: Rect<u32>, texture_size: u32)
Set texture rect.
Trait Implementations§
Source§impl Clone for SpriteData
impl Clone for SpriteData
Source§fn clone(&self) -> SpriteData
fn clone(&self) -> SpriteData
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for SpriteData
impl Debug for SpriteData
Source§impl Default for SpriteData
impl Default for SpriteData
Source§fn default() -> SpriteData
fn default() -> SpriteData
Returns the “default value” for a type. Read more
Source§impl Movable for SpriteData
impl Movable for SpriteData
Source§impl Rotable for SpriteData
impl Rotable for SpriteData
Source§fn rotate<T>(&mut self, angle: T)
fn rotate<T>(&mut self, angle: T)
Rotate from the actual angle with the angle given in argument.
Source§fn set_rotation<T>(&mut self, angle: T)
fn set_rotation<T>(&mut self, angle: T)
Set the rotation of the Rotable struct.
Source§fn get_rotation(&self) -> f32
fn get_rotation(&self) -> f32
Return the rotation of the struct.
Source§impl Scalable for SpriteData
impl Scalable for SpriteData
Source§impl Transformable for SpriteData
impl Transformable for SpriteData
Auto Trait Implementations§
impl Freeze for SpriteData
impl RefUnwindSafe for SpriteData
impl Send for SpriteData
impl Sync for SpriteData
impl Unpin for SpriteData
impl UnwindSafe for SpriteData
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SetParameter for T
impl<T> SetParameter for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).Source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.