Skip to content

Commit 2f3218e

Browse files
committed
README.md: Added some benchmarking info.
1 parent c2ada20 commit 2f3218e

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,3 +165,12 @@ e.g. you write your playable character first and then end with scenery such as m
165165
Later in your program - i.e. before the end of the current frame and after all `write_buffer()` calls have been made in that frame - then call `print_screen_buffer(Color clear_bg_color, DrawPolicy posix_redraw_policy)`.
166166

167167
It will make a full redraw or a partial of the screen depending on which policy you've selected. Partial redraw means dirty region-tracking which is achieved by diffing the current screen buffers with the previous frame values. This is in very often faster than a full redraw. When a partial redraw is being made, chunks of contiguous cells/textels/tiles will be drawn using gotorc() and at the end of the frame the frame will be flushed.
168+
169+
I made a quick benchmark on my computer (MacBook Air M1) by running `Pilot_Episode` with `GameEngineParams::enable_benchmark = true` and using the default draw policy (`t8::DrawPolicy::MEASURE_SELECT`). This was the results:
170+
```sh
171+
Goal FPS = 1000
172+
Average FPS = 917.283
173+
# Full Redraws = 14
174+
# Partial Redraws = 27594
175+
```
176+
So I would say, it's fairly fast.

0 commit comments

Comments
 (0)