Struct opengl_graphics::GlGraphics
[−]
[src]
pub struct GlGraphics { /* fields omitted */ }
Contains OpenGL data.
Methods
impl<'a> GlGraphics
[src]
fn new(opengl: OpenGL) -> Self
Creates a new OpenGL back-end.
Panics
If the OpenGL function pointers have not been loaded yet. See https://github.com/PistonDevelopers/opengl_graphics/issues/103 for more info.
fn viewport(&mut self, x: i32, y: i32, w: i32, h: i32)
Sets viewport with normalized coordinates and center as origin.
fn use_program(&mut self, program: GLuint)
Sets the current program only if the program is not in use.
fn clear_program(&mut self)
Unset the current program.
This forces the current program to be set on next drawing call.
fn use_draw_state(&mut self, draw_state: &DrawState)
Sets the current draw state, by detecting changes.
fn clear_draw_state(&mut self)
Unsets the current draw state.
This forces the current draw state to be set on next drawing call.
fn draw<F, U>(&mut self, viewport: Viewport, f: F) -> U where F: FnOnce(Context, &mut Self) -> U
Draws graphics.
fn has_texture_alpha(&self, _texture: &Texture) -> bool
Assume all textures has alpha channel for now.
Trait Implementations
impl Graphics for GlGraphics
[src]
type Texture = Texture
The texture type associated with the back-end. Read more
fn clear_color(&mut self, color: [f32; 4])
Clears background with a color. Read more
fn clear_stencil(&mut self, value: u8)
Clears stencil buffer with a value, usually 0. Read more
fn tri_list<F>(&mut self, draw_state: &DrawState, color: &[f32; 4], f: F) where F: FnMut(&mut FnMut(&[f32]))
Renders list of 2d triangles using a solid color. Read more
fn tri_list_uv<F>(&mut self,
draw_state: &DrawState,
color: &[f32; 4],
texture: &Texture,
f: F) where F: FnMut(&mut FnMut(&[f32], &[f32]))
draw_state: &DrawState,
color: &[f32; 4],
texture: &Texture,
f: F) where F: FnMut(&mut FnMut(&[f32], &[f32]))
Renders list of 2d triangles using a color and a texture. Read more
fn rectangle<R>(&mut self,
r: &Rectangle,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
r: &Rectangle,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
Draws a rectangle. Read more
fn polygon(&mut self,
p: &Polygon,
polygon: &[[f64; 2]],
draw_state: &DrawState,
transform: [[f64; 3]; 2])
p: &Polygon,
polygon: &[[f64; 2]],
draw_state: &DrawState,
transform: [[f64; 3]; 2])
Draws a polygon. Read more
fn polygon_tween_lerp(&mut self,
p: &Polygon,
polygons: &[&[[f64; 2]]],
tween_factor: f64,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
p: &Polygon,
polygons: &[&[[f64; 2]]],
tween_factor: f64,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
Draws a tweened polygon using linear interpolation. Read more
fn image(&mut self,
image: &Image,
texture: &Self::Texture,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
image: &Image,
texture: &Self::Texture,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
Draws image. Read more
fn ellipse<R>(&mut self,
e: &Ellipse,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
e: &Ellipse,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
Draws ellipse. Read more
fn line<L>(&mut self,
l: &Line,
line: L,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where L: Into<[f64; 4]>
l: &Line,
line: L,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where L: Into<[f64; 4]>
Draws line. Read more
fn circle_arc<R>(&mut self,
c: &CircleArc,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
c: &CircleArc,
rectangle: R,
draw_state: &DrawState,
transform: [[f64; 3]; 2]) where R: Into<[f64; 4]>
Draws circle arc. Read more
fn deform_image(&mut self,
d: &DeformGrid,
texture: &Self::Texture,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
d: &DeformGrid,
texture: &Self::Texture,
draw_state: &DrawState,
transform: [[f64; 3]; 2])
Draws deformed image. Read more