Add logging to window and context creation
This commit is contained in:
parent
1e62fdf069
commit
764b424dfc
5 changed files with 38 additions and 9 deletions
|
|
@ -20,6 +20,8 @@ impl iced_graphics::window::GLCompositor for Compositor {
|
|||
) -> Result<(Self, Self::Renderer), Error> {
|
||||
let gl = glow::Context::from_loader_function(loader_function);
|
||||
|
||||
log::info!("{:#?}", settings);
|
||||
|
||||
let version = gl.version();
|
||||
log::info!("Version: {:?}", version);
|
||||
log::info!("Embedded: {}", version.is_embedded);
|
||||
|
|
|
|||
|
|
@ -13,6 +13,9 @@ categories = ["gui"]
|
|||
[features]
|
||||
debug = ["iced_winit/debug"]
|
||||
|
||||
[dependencies.log]
|
||||
version = "0.4"
|
||||
|
||||
[dependencies.glutin]
|
||||
version = "0.28"
|
||||
git = "https://github.com/iced-rs/glutin"
|
||||
|
|
|
|||
|
|
@ -61,6 +61,8 @@ where
|
|||
settings.id,
|
||||
);
|
||||
|
||||
log::info!("Window builder: {:#?}", builder);
|
||||
|
||||
let opengl_builder = ContextBuilder::new()
|
||||
.with_vsync(true)
|
||||
.with_multisampling(C::sample_count(&compositor_settings) as u16);
|
||||
|
|
@ -75,9 +77,14 @@ where
|
|||
(opengl_builder, opengles_builder)
|
||||
};
|
||||
|
||||
log::info!("Trying first builder: {:#?}", first_builder);
|
||||
|
||||
let context = first_builder
|
||||
.build_windowed(builder.clone(), &event_loop)
|
||||
.or_else(|_| second_builder.build_windowed(builder, &event_loop))
|
||||
.or_else(|_| {
|
||||
log::info!("Trying second builder: {:#?}", second_builder);
|
||||
second_builder.build_windowed(builder, &event_loop)
|
||||
})
|
||||
.map_err(|error| {
|
||||
use glutin::CreationError;
|
||||
use iced_graphics::Error as ContextError;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,17 @@ impl Compositor {
|
|||
) -> Option<Self> {
|
||||
let instance = wgpu::Instance::new(settings.internal_backend);
|
||||
|
||||
log::info!("{:#?}", settings);
|
||||
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
{
|
||||
let available_adapters: Vec<_> = instance
|
||||
.enumerate_adapters(settings.internal_backend)
|
||||
.map(|adapter| adapter.get_info())
|
||||
.collect();
|
||||
log::info!("Available adapters: {:#?}", available_adapters);
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
let compatible_surface = compatible_window
|
||||
.map(|window| unsafe { instance.create_surface(window) });
|
||||
|
|
@ -44,10 +55,14 @@ impl Compositor {
|
|||
})
|
||||
.await?;
|
||||
|
||||
log::info!("Selected: {:#?}", adapter.get_info());
|
||||
|
||||
let format = compatible_surface
|
||||
.as_ref()
|
||||
.and_then(|surface| surface.get_preferred_format(&adapter))?;
|
||||
|
||||
log::info!("Selected format: {:?}", format);
|
||||
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
let limits = wgpu::Limits::downlevel_webgl2_defaults()
|
||||
.using_resolution(adapter.limits());
|
||||
|
|
|
|||
|
|
@ -137,14 +137,16 @@ where
|
|||
|
||||
let subscription = application.subscription();
|
||||
|
||||
let window = settings
|
||||
.window
|
||||
.into_builder(
|
||||
&application.title(),
|
||||
application.mode(),
|
||||
event_loop.primary_monitor(),
|
||||
settings.id,
|
||||
)
|
||||
let builder = settings.window.into_builder(
|
||||
&application.title(),
|
||||
application.mode(),
|
||||
event_loop.primary_monitor(),
|
||||
settings.id,
|
||||
);
|
||||
|
||||
log::info!("Window builder: {:#?}", builder);
|
||||
|
||||
let window = builder
|
||||
.build(&event_loop)
|
||||
.map_err(Error::WindowCreationFailed)?;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue