diff --git a/src/programs/viewer.rs b/src/programs/viewer.rs index 8acb6c5..d24b1fb 100644 --- a/src/programs/viewer.rs +++ b/src/programs/viewer.rs @@ -193,7 +193,7 @@ fn main() { // Make a screenshot let size = renderer.gl_window().get_inner_size().unwrap(); - let cap = renderer.capture(size); + let cap = renderer.capture(size.into()); cap.save(format!("capture-{}.png", capture_count)).unwrap(); capture_count += 1; diff --git a/src/renderer.rs b/src/renderer.rs index 23a0c41..58605f9 100644 --- a/src/renderer.rs +++ b/src/renderer.rs @@ -14,7 +14,6 @@ use glium::uniforms::MagnifySamplerFilter; use glium::draw_parameters::{DepthTest, Blend}; use glium::index::{NoIndices, PrimitiveType}; use glium::glutin::GlWindow; -use glium::glutin::dpi::LogicalSize; use scene::Scene; use camera::{RenderCamera, mat_to_f32}; @@ -216,15 +215,12 @@ impl Renderer { } /// Returns a DynamicImage of the corresponding frame. - pub fn capture(&self, dimensions: LogicalSize) -> image::DynamicImage { + pub fn capture(&self, dimensions: (u32, u32)) -> image::DynamicImage { rgba_image_data_to_image(self.capture_rgba_image_data(dimensions)) } /// Returns a RgbaImageData of the corresponding frame. - pub fn capture_rgba_image_data(&self, dimensions: LogicalSize) -> RgbaImageData { - - let dpi = self.gl_window().get_hidpi_factor(); - let dimensions: (u32, u32) = dimensions.to_physical(dpi).into(); + pub fn capture_rgba_image_data(&self, dimensions: (u32, u32)) -> RgbaImageData { let rect = Rect { left: 0,