From c5548b1d28d0a220da73428c38e90797fc7ef453 Mon Sep 17 00:00:00 2001 From: Thomas Forgione Date: Tue, 18 Sep 2018 15:23:51 +0200 Subject: [PATCH] Update to latest glium --- Cargo.toml | 2 +- src/controls.rs | 19 ++++++++++++------- src/programs/viewer.rs | 2 +- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index c45111b..d1cd21e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Thomas Forgione "] [dependencies] num = "0.1.42" -glium = "0.21.0" +glium = "0.22.0" image = "0.19.0" byteorder = "1.2.3" clap = "2.31.2" diff --git a/src/controls.rs b/src/controls.rs index 8f51595..453108e 100644 --- a/src/controls.rs +++ b/src/controls.rs @@ -12,6 +12,10 @@ use glium::glutin::{ VirtualKeyCode, MouseCursor, }; +use glium::glutin::dpi::{ + LogicalSize, + LogicalPosition, +}; use math::vector::{Vector2, Vector3}; use camera::Camera; @@ -107,7 +111,7 @@ impl Controls for OrbitControls { }, Event::WindowEvent { - event: WindowEvent::Resized(width, height), .. + event: WindowEvent::Resized(LogicalSize { width, height }), .. } => { camera.aspect_ratio = width as f64 / height as f64; }, @@ -129,7 +133,7 @@ impl Controls for OrbitControls { Event::WindowEvent{ event: WindowEvent::CursorMoved { - position: (x, y), .. + position: LogicalPosition { x, y }, .. }, .. } => { let current_position = Vector2::new(x as f64, y as f64); @@ -239,7 +243,7 @@ impl Controls for FirstPersonControls { // On resize window Event::WindowEvent { - event: WindowEvent::Resized(width, height), .. + event: WindowEvent::Resized(LogicalSize { width, height } ), .. } => { camera.aspect_ratio = width as f64 / height as f64; }, @@ -302,12 +306,12 @@ impl Controls for FirstPersonControls { // On mouse move Event::WindowEvent { event: WindowEvent::CursorMoved { - position: (x, y), .. + position: LogicalPosition { x, y }, .. }, .. } => { let size = renderer.gl_window().window().get_inner_size().unwrap(); - let center = Vector2::new(size.0 as f64 / 2.0, size.1 as f64 / 2.0); + let center = Vector2::new(size.width as f64 / 2.0, size.height as f64 / 2.0); let current_position = Vector2::new(x as f64, y as f64); let difference = (current_position - center) / self.sensitivity; @@ -330,7 +334,8 @@ impl Controls for FirstPersonControls { renderer .gl_window() .window() - .set_cursor_position(size.0 as i32 / 2, size.1 as i32/ 2) + .set_cursor_position(LogicalPosition::new( + size.width / 2.0, size.height / 2.0)) .unwrap(); }, @@ -345,7 +350,7 @@ impl Controls for FirstPersonControls { fn update(&mut self, camera: &mut Camera, renderer: &Renderer) { - renderer.gl_window().window().set_cursor(MouseCursor::NoneCursor); + // renderer.gl_window().window().set_cursor(MouseCursor::NoneCursor); let mut speed = Vector3::new(0.0, 0.0, 0.0); diff --git a/src/programs/viewer.rs b/src/programs/viewer.rs index bd134e9..a8f48e7 100644 --- a/src/programs/viewer.rs +++ b/src/programs/viewer.rs @@ -147,7 +147,7 @@ fn main() { match ev { // Close window Event::WindowEvent { - event: WindowEvent::Closed, .. + event: WindowEvent::CloseRequested, .. } => closed = true, // Escape key