X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=mandelwow.rs;h=bbb36712b6e08c2295ee24e820f8053b7d919cdc;hb=e758b0d67cbb0fdb0bc316b9b4037511e492c0d5;hp=d3b86e6ee1aa0e49779386826dfee6797fc32bc9;hpb=1124bb2dc1b8381bf4bfc437ab1689ec1b30d99b;p=mandelwow.git diff --git a/mandelwow.rs b/mandelwow.rs index d3b86e6..bbb3671 100644 --- a/mandelwow.rs +++ b/mandelwow.rs @@ -3,10 +3,9 @@ use cube::Cube; use glium; use glium::index::PrimitiveType; -use glium::Surface; +use glium::{Display, Program, Surface}; use support; - /* fn mand(cx: f32, cy: f32) -> [f32; 3] { let maxiter = 64; @@ -28,17 +27,17 @@ fn mand(cx: f32, cy: f32) -> [f32; 3] { } */ -pub fn program(display: &glium::Display) -> glium::Program { - return program!(display, - 140 => { - vertex: include_str!("mandelwow.vert"), - fragment: include_str!("mandelwow.frag"), - }).unwrap(); +pub fn program(display: &Display) -> Program { + Program::from_source( + display, + include_str!("shaders/mandelwow.vert"), + include_str!("shaders/mandelwow.frag"), None) + .unwrap() } -fn mandel(display: &glium::Display, +fn mandel(display: &Display, frame: &mut glium::Frame, - program: &glium::Program, + program: &Program, uniforms: &U, bounds: &Cube, z: [f32; 2]) where U: glium::uniforms::Uniforms { @@ -104,9 +103,9 @@ fn mandel(display: &glium::Display, frame.draw(&vb, &indices, program, uniforms, ¶ms).unwrap(); } -pub fn draw(display: &glium::Display, +pub fn draw(display: &Display, mut frame: &mut glium::Frame, - program: &glium::Program, + program: &Program, model: [[f32; 4]; 4], camera: &support::camera::CameraState, bounds: &Cube, @@ -129,6 +128,6 @@ pub fn draw(display: &glium::Display, perspective: camera.get_perspective(), }; - mandel(&display, &mut frame, &program, &uniforms, bounds, z0); + mandel(display, &mut frame, program, &uniforms, bounds, z0); } }