diff options
Diffstat (limited to 'engine/src/rendering/backend/opengl')
| -rw-r--r-- | engine/src/rendering/backend/opengl/glutin_compat.rs | 52 | ||||
| -rw-r--r-- | engine/src/rendering/backend/opengl/graphics_mesh.rs | 9 |
2 files changed, 26 insertions, 35 deletions
diff --git a/engine/src/rendering/backend/opengl/glutin_compat.rs b/engine/src/rendering/backend/opengl/glutin_compat.rs index 27f82ad..0bdfcd2 100644 --- a/engine/src/rendering/backend/opengl/glutin_compat.rs +++ b/engine/src/rendering/backend/opengl/glutin_compat.rs @@ -66,12 +66,6 @@ pub struct DisplayBuilder impl DisplayBuilder { - /// Create new display builder. - pub fn new() -> Self - { - Default::default() - } - /// The preference in picking the configuration. #[allow(dead_code)] pub fn with_preference(mut self, preference: ApiPreference) -> Self @@ -153,7 +147,7 @@ impl DisplayBuilder config_picker_fn(gl_configs).ok_or(Error::NoConfigPicked)?; let window_attrs = cfg_select! { - windows => { self.window_attributes } + windows => self.window_attributes, _ => { finalize_window_creation_attrs(self.window_attributes, &picked_gl_config) } @@ -179,39 +173,36 @@ pub enum Error WindowRequired, } +#[allow(unused_variables)] fn create_display( display_handle: &DisplayHandle<'_>, - _api_preference: ApiPreference, - _raw_window_handle: Option<RawWindowHandle>, + api_preference: ApiPreference, + raw_window_handle: Option<RawWindowHandle>, ) -> Result<Display, GlutinError> { let preference = cfg_select! { - windows => { - match _api_preference { - ApiPreference::PreferEgl => { - DisplayApiPreference::EglThenWgl(_raw_window_handle) - } - ApiPreference::FallbackEgl => { - DisplayApiPreference::WglThenEgl(_raw_window_handle) - } + windows => match _api_preference { + ApiPreference::PreferEgl => { + DisplayApiPreference::EglThenWgl(_raw_window_handle) } - } - target_os = "linux" => { - match _api_preference { - ApiPreference::PreferEgl => DisplayApiPreference::EglThenGlx(Box::new( - crate::windowing::window::platform::x11::register_xlib_error_hook, - )), - ApiPreference::FallbackEgl => DisplayApiPreference::GlxThenEgl(Box::new( - crate::windowing::window::platform::x11::register_xlib_error_hook, - )), + ApiPreference::FallbackEgl => { + DisplayApiPreference::WglThenEgl(_raw_window_handle) } - } - target_os = "macos" => { DisplayApiPreference::Cgl } + }, + target_os = "linux" => match api_preference { + ApiPreference::PreferEgl => DisplayApiPreference::EglThenGlx(Box::new( + crate::windowing::window::platform::x11::register_xlib_error_hook, + )), + ApiPreference::FallbackEgl => DisplayApiPreference::GlxThenEgl(Box::new( + crate::windowing::window::platform::x11::register_xlib_error_hook, + )), + }, + target_os = "macos" => DisplayApiPreference::Cgl, }; let handle = display_handle.as_raw(); - unsafe { Ok(Display::new(handle, preference)?) } + unsafe { Display::new(handle, preference) } } /// Finalize [`Window`] creation by applying the options from the [`Config`], be @@ -235,7 +226,8 @@ fn finalize_window_creation_attrs( if let Some(x11_visual) = glutin::platform::x11::X11GlConfigExt::x11_visual(gl_config) { return attributes.with_x_visual_id(Some( - x11_visual.visual_id() as crate::windowing::window::XVisualID + crate::windowing::window::XVisualID::try_from(x11_visual.visual_id()) + .expect("X visual ID is too large"), )); } diff --git a/engine/src/rendering/backend/opengl/graphics_mesh.rs b/engine/src/rendering/backend/opengl/graphics_mesh.rs index 43cd254..899f50f 100644 --- a/engine/src/rendering/backend/opengl/graphics_mesh.rs +++ b/engine/src/rendering/backend/opengl/graphics_mesh.rs @@ -69,8 +69,7 @@ impl GraphicsMesh max_value, } => { panic!( - "Size of vertex ({}) is too large. Must be less than {max_value}", - value + "Size of vertex ({value}) is too large. Must be less than {max_value}" ); } } @@ -86,7 +85,7 @@ impl GraphicsMesh vertex_arr.bind_element_buffer(current_context, &index_buffer); return Ok(Self { - vertex_buffer: vertex_buffer, + vertex_buffer, vertex_attr_props: mesh.vertex_buf().vertex_attr_props().to_vec(), last_max_vertex_attr_index: 0, index_buffer: Some(index_buffer), @@ -99,7 +98,7 @@ impl GraphicsMesh } Ok(Self { - vertex_buffer: vertex_buffer, + vertex_buffer, vertex_attr_props: mesh.vertex_buf().vertex_attr_props().to_vec(), last_max_vertex_attr_index: 0, index_buffer: None, @@ -135,7 +134,7 @@ impl GraphicsMesh .map_err(Error::StoreIndicesFailed)?; self.vertex_arr - .bind_element_buffer(current_context, &index_buffer); + .bind_element_buffer(current_context, index_buffer); self.element_cnt = indices .len() |
