Fix benchmarks for latest glium/glutin API
[mandelwow.git] / benches / shaded_cube.rs
index ea4e5ead316d2e305c7c77a77c492ae34944b1ce..6c51ab27dd6e1b41a5c09739cb0d44c9ab6a730c 100644 (file)
@@ -1,21 +1,19 @@
 #![feature(test)]
-
-extern crate mandelwow_lib;
-#[macro_use(uniform)]
-extern crate glium;
-extern crate glutin;
 extern crate test;
 
-use glium::DisplayBuild;
-use mandelwow_lib::Cube;
+use glium::uniform;
 use mandelwow_lib::shaded_cube::*;
+use std::rc::Rc;
 
 #[bench]
 fn bench_shaded_cube(b: &mut test::Bencher) {
-    let display = glutin::WindowBuilder::new().build_glium().unwrap();
-    let program = shaded_program(&display);
-    let bounds = Cube { xmin: -2., xmax: 0.7, ymin: -1., ymax:  1., zmin: -1.1, zmax:  1.1 };
-    let cube = ShadedCube::new(&display, &bounds, &program);
+    let event_loop = glutin::event_loop::EventLoop::new();
+    let window = glutin::window::WindowBuilder::new();
+    let context = glutin::ContextBuilder::new();
+    let display = glium::Display::new(window, context, &event_loop).unwrap();
+
+    let program = Rc::new(shaded_program(&display));
+    let cube = ShadedCube::new(&display, program);
     let mut frame = display.draw();
     b.iter(|| {
         let model =     [[0.7, 0.5, -0.5, 0.0], [0.0, 0.7, 0.7, 0.0], [0.7, -0.5,  0.5,  0.0], [0., 0., -3.0, 1.0f32]];