thanks, jk
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
840 B

  1. use glium::Program;
  2. use glium::backend::Facade;
  3. #[derive(Copy, Clone, Debug)]
  4. struct Vertex {
  5. position: [u32; 2],
  6. tex_coords: [u32; 2],
  7. }
  8. implement_vertex!(Vertex, position, tex_coords);
  9. static SHADER_FRAG_140: &'static str = include_str!("gl_renderer_140.frag");
  10. static SHADER_VERT_140: &'static str = include_str!("gl_renderer_140.vert");
  11. pub struct TextRenderer {
  12. gl_program: Program,
  13. }
  14. impl TextRenderer {
  15. pub fn new<F>(display: &F) -> TextRenderer where F: Facade {
  16. let program = program!(display,
  17. 140 => {
  18. vertex: SHADER_VERT_140,
  19. fragment: SHADER_FRAG_140,
  20. },
  21. ).expect("textium: could not compile glium renderer shaders");
  22. TextRenderer {
  23. gl_program: program,
  24. }
  25. }
  26. // pub fn draw(text: RenderableText)
  27. }