ppy / osu-framework

A game framework written with osu! in mind.
MIT License
1.67k stars 419 forks source link

Make `PerformanceOverlay` public #6357

Closed frenzibyte closed 3 months ago

frenzibyte commented 3 months ago

Useful for keeping the performance overlay open at a low scale so it doesn't bother me when I'm playing while waiting for a random stutter to hit.

peppy commented 3 months ago

envvar maybe better? unless there's precedence for doing it this way.

frenzibyte commented 3 months ago

Making it a setting also allows changing the scale back if I want to be able to see the perfomance monitor at full scale again (since there's gonna be a slider in settings for this), but if you think that's too much I can make it an envvar.

peppy commented 3 months ago

i dunno, doesn't feel like something i'd expect to sit in settings. Personall I'd prefer an osu-side hacky way of doing this using Game.ChildrenOfType<PerformanceOverlay>().

peppy commented 3 months ago

Or looking at things from a different perspective, adding a display of GC collections on the collapsed view would also work fine (stable kinda did this for long frames).

frenzibyte commented 3 months ago

i dunno, doesn't feel like something i'd expect to sit in settings. Personall I'd prefer an osu-side hacky way of doing this using Game.ChildrenOfType<PerformanceOverlay>().

I can do that but I need to make PerformanceOverlay public, it's internal currently.

Or looking at things from a different perspective, adding a display of GC collections on the collapsed view would also work fine (stable kinda did this for long frames).

Sure but I'm not sure I can come up with something right now, I don't have any ideas on how I want to display it.

peppy commented 3 months ago

As discussed IRL, let's not do this for now (have provided other ways to view GC collections).

I'd want to see this executed by one of the following: