pub struct Render2D { /* private fields */ }Implementations§
source§impl Render2D
impl Render2D
pub fn clear_batch(&mut self)
sourcepub fn set_clear_color(&mut self, color: Color)
pub fn set_clear_color(&mut self, color: Color)
Examples found in repository?
examples/canvas.rs (line 30)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}pub fn set_draw_color(&mut self, color: Color)
pub fn clear_color(&self) -> Color
pub fn draw_color(&self) -> Color
sourcepub fn hello_triangle(&mut self)
pub fn hello_triangle(&mut self)
Examples found in repository?
examples/canvas.rs (line 42)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}sourcepub fn blit(&mut self, draw: &impl Drawable, src: Option<&Rect>, x: f32, y: f32)
pub fn blit(&mut self, draw: &impl Drawable, src: Option<&Rect>, x: f32, y: f32)
Examples found in repository?
examples/canvas.rs (line 39)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}pub fn blit_scale( &mut self, draw: &impl Drawable, src: Option<&Rect>, x: f32, y: f32, sx: f32, sy: f32 )
sourcepub fn blit_rotate(
&mut self,
draw: &impl Drawable,
src: Option<&Rect>,
x: f32,
y: f32,
angle: f32
)
pub fn blit_rotate( &mut self, draw: &impl Drawable, src: Option<&Rect>, x: f32, y: f32, angle: f32 )
Examples found in repository?
examples/canvas.rs (line 40)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}pub fn blit_ex( &mut self, draw: &impl Drawable, src: Option<&Rect>, x: f32, y: f32, angle: f32, sx: f32, sy: f32 )
pub fn draw_triangle(&mut self, p0: Vec2, p1: Vec2, p2: Vec2)
pub fn fill_triangle(&mut self, p0: Vec2, p1: Vec2, p2: Vec2)
pub fn fill_rect(&mut self, rect: &Rect)
sourcepub fn draw_rect(&mut self, rect: &Rect)
pub fn draw_rect(&mut self, rect: &Rect)
Examples found in repository?
examples/canvas.rs (line 35)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}pub fn draw_circle(&mut self, cx: f32, cy: f32, radius: f32)
sourcepub fn fill_circle(&mut self, cx: f32, cy: f32, radius: f32)
pub fn fill_circle(&mut self, cx: f32, cy: f32, radius: f32)
Examples found in repository?
examples/canvas.rs (line 41)
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
fn run(&mut self, dt: f32, render: &mut Self::Render) -> bool {
let speed = 80.0 * dt;
self.time = self.time + (dt * 30.0);
if cafe::keyboard::is_down(Scancode::Left) {
self.pos -= Vec2::new(speed, 0.0);
}
else if cafe::keyboard::is_down(Scancode::Right) {
self.pos += Vec2::new(speed, 0.0);
}
render.begin();
render.set_clear_color(Color::black());
render.clear();
render.set_canvas(Some(&self.canvas));
render.clear();
render.draw_rect(&Rect::new(self.pos.x, self.pos.y, 32.0, 64.0));
// render.hello_triangle();
render.set_canvas(None);
render.blit(&self.canvas, None, 0.0, 0.0);
render.blit_rotate(&self.canvas, None, 32.0, 64.0, self.time);
render.fill_circle(32.0, 64.0, 8.0);
render.hello_triangle();
render.end();
true
}Trait Implementations§
source§impl Render for Render2D
impl Render for Render2D
type Effect = Effect2D
fn new() -> Self
fn begin(&mut self)
fn end(&self)
fn set_canvas(&mut self, canvas: Option<&Canvas>)
fn set_effect(&mut self, effect: Option<&Self::Effect>)
fn on_resize(&mut self, width: i32, height: i32)
fn camera(&mut self) -> &mut dyn Camera
fn clear_color(&self, color: Vec4)
fn clear(&self)
Auto Trait Implementations§
impl RefUnwindSafe for Render2D
impl Send for Render2D
impl Sync for Render2D
impl Unpin for Render2D
impl UnwindSafe for Render2D
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