Skip to content

Commit 5726b03

Browse files
committed
examples/*-winit-wgpu: make less verbose
This updates the *-winit-wgpu examples to use `log::info!` instead of `trace!` and sets the log level to `Info` The examples now also print info about and Winit Window events. This makes them more practical to use to see how Winit events are delivered without lots of tracing spam from dependency crates.
1 parent 13a55c4 commit 5726b03

File tree

3 files changed

+50
-44
lines changed

3 files changed

+50
-44
lines changed

agdk-winit-wgpu/Cargo.lock

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

agdk-winit-wgpu/src/lib.rs

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,16 @@ impl App {
4747

4848
impl App {
4949
fn create_surface<T>(&mut self, event_loop: &EventLoopWindowTarget<T>) {
50-
let window = winit::window::Window::new(&event_loop).unwrap();
51-
trace!("WGPU: creating surface for native window");
50+
let window = winit::window::Window::new(event_loop).unwrap();
51+
log::info!("WGPU: creating surface for native window");
5252
let surface = unsafe { self.instance.create_surface(&window) };
5353
self.surface_state = Some(SurfaceState { window, surface });
5454
}
5555

5656
async fn init_render_state(adapter: &Adapter, target_format: TextureFormat) -> RenderState {
57-
trace!("Initializing render state");
57+
log::info!("Initializing render state");
5858

59-
trace!("WGPU: requesting device");
59+
log::info!("WGPU: requesting device");
6060
// Create the logical device and command queue
6161
let (device, queue) = adapter
6262
.request_device(
@@ -72,21 +72,21 @@ impl App {
7272
.await
7373
.expect("Failed to create device");
7474

75-
trace!("WGPU: loading shader");
75+
log::info!("WGPU: loading shader");
7676
// Load the shaders from disk
7777
let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor {
7878
label: None,
7979
source: wgpu::ShaderSource::Wgsl(Cow::Borrowed(include_str!("shader.wgsl"))),
8080
});
8181

82-
trace!("WGPU: creating pipeline layout");
82+
log::info!("WGPU: creating pipeline layout");
8383
let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
8484
label: None,
8585
bind_group_layouts: &[],
8686
push_constant_ranges: &[],
8787
});
8888

89-
trace!("WGPU: creating render pipeline");
89+
log::info!("WGPU: creating render pipeline");
9090
let render_pipeline = device.create_render_pipeline(&wgpu::RenderPipelineDescriptor {
9191
label: None,
9292
layout: Some(&pipeline_layout),
@@ -125,7 +125,7 @@ impl App {
125125
async fn ensure_render_state_for_surface(&mut self) {
126126
if let Some(surface_state) = &self.surface_state {
127127
if self.adapter.is_none() {
128-
trace!("WGPU: requesting a suitable adapter (compatible with our surface)");
128+
log::info!("WGPU: requesting a suitable adapter (compatible with our surface)");
129129
let adapter = self
130130
.instance
131131
.request_adapter(&wgpu::RequestAdapterOptions {
@@ -142,8 +142,8 @@ impl App {
142142
let adapter = self.adapter.as_ref().unwrap();
143143

144144
if self.render_state.is_none() {
145-
trace!("WGPU: finding supported swapchain format");
146-
let swapchain_format = surface_state.surface.get_supported_formats(&adapter)[0];
145+
log::info!("WGPU: finding supported swapchain format");
146+
let swapchain_format = surface_state.surface.get_supported_formats(adapter)[0];
147147

148148
let rs = Self::init_render_state(adapter, swapchain_format).await;
149149
self.render_state = Some(rs);
@@ -167,7 +167,7 @@ impl App {
167167
alpha_mode: wgpu::CompositeAlphaMode::Inherit,
168168
};
169169

170-
trace!("WGPU: Configuring surface swapchain: format = {swapchain_format:?}, size = {size:?}");
170+
log::info!("WGPU: Configuring surface swapchain: format = {swapchain_format:?}, size = {size:?}");
171171
surface_state
172172
.surface
173173
.configure(&render_state.device, &config);
@@ -182,7 +182,7 @@ impl App {
182182
}
183183

184184
fn resume<T>(&mut self, event_loop: &EventLoopWindowTarget<T>) {
185-
trace!("Resumed, creating render state...");
185+
log::info!("Resumed, creating render state...");
186186
self.create_surface(event_loop);
187187
pollster::block_on(self.ensure_render_state_for_surface());
188188
self.configure_surface_swapchain();
@@ -191,7 +191,7 @@ impl App {
191191
}
192192

193193
fn run(event_loop: EventLoop<()>) {
194-
trace!("Running mainloop...");
194+
log::info!("Running mainloop...");
195195

196196
// doesn't need to be re-considered later
197197
let instance = wgpu::Instance::new(wgpu::Backends::all());
@@ -200,15 +200,15 @@ fn run(event_loop: EventLoop<()>) {
200200

201201
let mut app = App::new(instance);
202202
event_loop.run(move |event, event_loop, control_flow| {
203-
trace!("Received Winit event: {event:?}");
203+
log::info!("Received Winit event: {event:?}");
204204

205205
*control_flow = ControlFlow::Wait;
206206
match event {
207207
Event::Resumed => {
208208
app.resume(event_loop);
209209
}
210210
Event::Suspended => {
211-
trace!("Suspended, dropping render state...");
211+
log::info!("Suspended, dropping render state...");
212212
app.render_state = None;
213213
}
214214
Event::WindowEvent {
@@ -221,7 +221,7 @@ fn run(event_loop: EventLoop<()>) {
221221
app.queue_redraw();
222222
}
223223
Event::RedrawRequested(_) => {
224-
trace!("Handling Redraw Request");
224+
log::info!("Handling Redraw Request");
225225

226226
if let Some(ref surface_state) = app.surface_state {
227227
if let Some(ref rs) = app.render_state {
@@ -265,6 +265,9 @@ fn run(event_loop: EventLoop<()>) {
265265
event: WindowEvent::CloseRequested,
266266
..
267267
} => *control_flow = ControlFlow::Exit,
268+
Event::WindowEvent { event: _, .. } => {
269+
log::info!("Window event {:#?}", event);
270+
}
268271
_ => {}
269272
}
270273
});
@@ -280,7 +283,7 @@ fn _main(event_loop: EventLoop<()>) {
280283
fn android_main(app: AndroidApp) {
281284
use winit::platform::android::EventLoopBuilderExtAndroid;
282285

283-
android_logger::init_once(android_logger::Config::default().with_min_level(log::Level::Trace));
286+
android_logger::init_once(android_logger::Config::default().with_min_level(log::Level::Info));
284287

285288
let event_loop = EventLoopBuilder::new().with_android_app(app).build();
286289
_main(event_loop);
@@ -290,7 +293,7 @@ fn android_main(app: AndroidApp) {
290293
#[cfg(not(target_os = "android"))]
291294
fn main() {
292295
env_logger::builder()
293-
.filter_level(log::LevelFilter::Warn) // Default Log Level
296+
.filter_level(log::LevelFilter::Info) // Default Log Level
294297
.parse_default_env()
295298
.init();
296299

na-winit-wgpu/src/lib.rs

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,16 @@ impl App {
4747

4848
impl App {
4949
fn create_surface<T>(&mut self, event_loop: &EventLoopWindowTarget<T>) {
50-
let window = winit::window::Window::new(&event_loop).unwrap();
51-
trace!("WGPU: creating surface for native window");
50+
let window = winit::window::Window::new(event_loop).unwrap();
51+
log::info!("WGPU: creating surface for native window");
5252
let surface = unsafe { self.instance.create_surface(&window) };
5353
self.surface_state = Some(SurfaceState { window, surface });
5454
}
5555

5656
async fn init_render_state(adapter: &Adapter, target_format: TextureFormat) -> RenderState {
57-
trace!("Initializing render state");
57+
log::info!("Initializing render state");
5858

59-
trace!("WGPU: requesting device");
59+
log::info!("WGPU: requesting device");
6060
// Create the logical device and command queue
6161
let (device, queue) = adapter
6262
.request_device(
@@ -72,21 +72,21 @@ impl App {
7272
.await
7373
.expect("Failed to create device");
7474

75-
trace!("WGPU: loading shader");
75+
log::info!("WGPU: loading shader");
7676
// Load the shaders from disk
7777
let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor {
7878
label: None,
7979
source: wgpu::ShaderSource::Wgsl(Cow::Borrowed(include_str!("shader.wgsl"))),
8080
});
8181

82-
trace!("WGPU: creating pipeline layout");
82+
log::info!("WGPU: creating pipeline layout");
8383
let pipeline_layout = device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
8484
label: None,
8585
bind_group_layouts: &[],
8686
push_constant_ranges: &[],
8787
});
8888

89-
trace!("WGPU: creating render pipeline");
89+
log::info!("WGPU: creating render pipeline");
9090
let render_pipeline = device.create_render_pipeline(&wgpu::RenderPipelineDescriptor {
9191
label: None,
9292
layout: Some(&pipeline_layout),
@@ -125,7 +125,7 @@ impl App {
125125
async fn ensure_render_state_for_surface(&mut self) {
126126
if let Some(surface_state) = &self.surface_state {
127127
if self.adapter.is_none() {
128-
trace!("WGPU: requesting a suitable adapter (compatible with our surface)");
128+
log::info!("WGPU: requesting a suitable adapter (compatible with our surface)");
129129
let adapter = self
130130
.instance
131131
.request_adapter(&wgpu::RequestAdapterOptions {
@@ -142,8 +142,8 @@ impl App {
142142
let adapter = self.adapter.as_ref().unwrap();
143143

144144
if self.render_state.is_none() {
145-
trace!("WGPU: finding supported swapchain format");
146-
let swapchain_format = surface_state.surface.get_supported_formats(&adapter)[0];
145+
log::info!("WGPU: finding supported swapchain format");
146+
let swapchain_format = surface_state.surface.get_supported_formats(adapter)[0];
147147

148148
let rs = Self::init_render_state(adapter, swapchain_format).await;
149149
self.render_state = Some(rs);
@@ -167,7 +167,7 @@ impl App {
167167
alpha_mode: wgpu::CompositeAlphaMode::Inherit,
168168
};
169169

170-
trace!("WGPU: Configuring surface swapchain: format = {swapchain_format:?}, size = {size:?}");
170+
log::info!("WGPU: Configuring surface swapchain: format = {swapchain_format:?}, size = {size:?}");
171171
surface_state
172172
.surface
173173
.configure(&render_state.device, &config);
@@ -182,7 +182,7 @@ impl App {
182182
}
183183

184184
fn resume<T>(&mut self, event_loop: &EventLoopWindowTarget<T>) {
185-
trace!("Resumed, creating render state...");
185+
log::info!("Resumed, creating render state...");
186186
self.create_surface(event_loop);
187187
pollster::block_on(self.ensure_render_state_for_surface());
188188
self.configure_surface_swapchain();
@@ -191,7 +191,7 @@ impl App {
191191
}
192192

193193
fn run(event_loop: EventLoop<()>) {
194-
trace!("Running mainloop...");
194+
log::info!("Running mainloop...");
195195

196196
// doesn't need to be re-considered later
197197
let instance = wgpu::Instance::new(wgpu::Backends::all());
@@ -200,15 +200,15 @@ fn run(event_loop: EventLoop<()>) {
200200

201201
let mut app = App::new(instance);
202202
event_loop.run(move |event, event_loop, control_flow| {
203-
trace!("Received Winit event: {event:?}");
203+
log::info!("Received Winit event: {event:?}");
204204

205205
*control_flow = ControlFlow::Wait;
206206
match event {
207207
Event::Resumed => {
208208
app.resume(event_loop);
209209
}
210210
Event::Suspended => {
211-
trace!("Suspended, dropping render state...");
211+
log::info!("Suspended, dropping render state...");
212212
app.render_state = None;
213213
}
214214
Event::WindowEvent {
@@ -221,7 +221,7 @@ fn run(event_loop: EventLoop<()>) {
221221
app.queue_redraw();
222222
}
223223
Event::RedrawRequested(_) => {
224-
trace!("Handling Redraw Request");
224+
log::info!("Handling Redraw Request");
225225

226226
if let Some(ref surface_state) = app.surface_state {
227227
if let Some(ref rs) = app.render_state {
@@ -265,6 +265,9 @@ fn run(event_loop: EventLoop<()>) {
265265
event: WindowEvent::CloseRequested,
266266
..
267267
} => *control_flow = ControlFlow::Exit,
268+
Event::WindowEvent { event: _, .. } => {
269+
log::info!("Window event {:#?}", event);
270+
}
268271
_ => {}
269272
}
270273
});
@@ -280,7 +283,7 @@ fn _main(event_loop: EventLoop<()>) {
280283
fn android_main(app: AndroidApp) {
281284
use winit::platform::android::EventLoopBuilderExtAndroid;
282285

283-
android_logger::init_once(android_logger::Config::default().with_min_level(log::Level::Trace));
286+
android_logger::init_once(android_logger::Config::default().with_min_level(log::Level::Info));
284287

285288
let event_loop = EventLoopBuilder::new().with_android_app(app).build();
286289
_main(event_loop);
@@ -290,7 +293,7 @@ fn android_main(app: AndroidApp) {
290293
#[cfg(not(target_os = "android"))]
291294
fn main() {
292295
env_logger::builder()
293-
.filter_level(log::LevelFilter::Warn) // Default Log Level
296+
.filter_level(log::LevelFilter::Info) // Default Log Level
294297
.parse_default_env()
295298
.init();
296299

0 commit comments

Comments
 (0)