Skip to content

Commit 4cb08fd

Browse files
authored
N20: Add WhatTheFrame (#541)
1 parent 523abab commit 4cb08fd

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

content/posts/newsletter-020/index.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,30 @@ _Discussions: [/r/rust_gamedev](https://www.reddit.com/r/rust_gamedev/comments/m
237237
[@wumpf]: https://github.com/Wumpf
238238
[graphics team blog]: https://mozillagfx.wordpress.com/2021/03/10/webgpu-progress/
239239

240+
### [WhatTheFrame]
241+
242+
![whattheframe gui](whattheframe.png)
243+
244+
[WhatTheFrame] by [@JMS55]
245+
is a frame-based cpu profiler crate along with a [GTK] ([gtk4-rs]) based GUI.
246+
247+
This project aims to answer the question: Which frames of my game are slow, and why?
248+
249+
It aims to be simple to use, consisting of only 3 functions: Call `let _r = Profiler::new_frame()`
250+
at the start of each frame, `let _r = Profiler::new_task("task_name")` whenever you
251+
want to profile a task, and finally `Profiler::end_profiling()` once at the end.
252+
253+
You can then open the resulting `.wtf` profile in the GUI and analyze the results.
254+
255+
This month was spent designing and implementing both the GUI and profiler crate.
256+
The core functionality of both programs are complete, and all that remains is
257+
cleanup, tweaks, optimization, and finally packaging the GUI up.
258+
259+
[WhatTheFrame]: https://github.com/JMS55/whattheframe
260+
[@JMS55]: https://github.com/JMS55
261+
[GTK]: https://gtk.org/
262+
[gtk4-rs]: https://github.com/gtk-rs/gtk4-rs#gtk4-rs-
263+
240264
## Popular Workgroup Issues in Github
241265

242266
<!-- Up to 10 links to interesting issues -->
50.9 KB
Loading

0 commit comments

Comments
 (0)