-
Notifications
You must be signed in to change notification settings - Fork 420
Debug Overlays: Frame Statistics Overlay
Salman Ahmed edited this page Mar 10, 2023
·
4 revisions
osu!framework provides in-picture debugging overlays, toggled in FrameworkActionContainer
. One such overlay is the Frame Statistics Overlay.
Ctrl+F11 toggles the frame statistics overlay. The first time you toggle this overlay, you will be greeted with a minimized version of it. This view displays the frame timings of the four main gameplay threads: Audio, Input, Update and Draw.
Pressing Ctrl+F11 again will expand the overlay, displaying a graph of the activity on each thread.
Holding down the control key in this state will expand the graph further, allowing you to peek at how many events of each type are occurring on each thread.
The statistics for this overlay are defined in FrameStatistics
.
These statistics are counted per frame.
- Invalidations: The number of Invalidate() calls performed on cached objects.
- Refreshes: The number of Validate() calls performed on cached objects.
- DrawNodeCtor: The number of new DrawNodes created.
- DrawNodeAppl: The number of DrawNodes updated due to a disagreement between the Drawable's Invalidation ID and the node's Invalidation ID.
- ScheduleInvk: The number of timed tasks ran from the queue.
- InputQueue: The number of UserInputManagers handling non-positional (keybinding specific) input.
- PositionalIQ: The number of UserInputManagers handling positional input.
- CCL: The number of times a drawable's life state is checked and updated.
- VBufBinds: The number of OpenGL VBO bind calls.
- VBufOverflow: The number of times the vertex count has exceeded the number allocated for the current VBO.
- TextureBinds: The number of times glBindTexture has been called.
- DrawCalls: The number of active draw calls.
- ShaderBinds: The number of times glUseProgram has been called.
- VerticesDraw: The number of vertices drawn using glDrawElements.
- VerticesUpl: The number of vertices updated using glBufferSubData.
- Pixels: The amount of area covered by drawn elements.
- TasksRun: The number of actions in queue.
- Tracks: The number of tracks being updated.
- Samples: The number of samples being updated.
- SChannels: The number of SampleChannels being updated.
- Components: The number of AudioComponents being updated.
- MouseEvents: The number of mouse events being handled by InputHandlers.
- KeyEvents: The number of keyboard events being handled by InputHandlers.
- JoystickEvents: The number of joystick events being handled by InputHandlers.
- Create your first project
- Learning framework key bindings
- Adding resource stores
- Adding custom key bindings
- Adding custom fonts