osu-framework icon indicating copy to clipboard operation
osu-framework copied to clipboard

Allow to do DrawNode invalidation on cached `BufferedContainer` without redrawing the framebuffer

Open Uncomfy opened this issue 1 year ago • 4 comments

This is needed for changing the parameters of a custom shader on BufferedContainer without tanking the performance (example: https://github.com/ppy/osu/pull/30391#discussion_r1815242461)

Cached framebuffer is redrawn only if DrawNode invalidation comes from a child or if it is explicitly requested via ForceRedraw() method.

Companion to https://github.com/ppy/osu/pull/30391

Uncomfy avatar Oct 30 '24 21:10 Uncomfy

Is there a specific reason why this is in draft? Seems like it's ready for review according to my eyes?

frenzibyte avatar Nov 11 '24 09:11 frenzibyte

I'm not sure the game-side feature proposal has been universally accepted, and this pull only makes sense in context of it, so I wouldn't disagree with draft.

For one I don't really see the point of this entire PR series so I'm not touching it.

bdach avatar Nov 11 '24 09:11 bdach

@Uncomfy I noticed you updated your PRs but they are still in draft. Is there a reason they are draft?

peppy avatar Jun 16 '25 04:06 peppy

@Uncomfy I noticed you updated your PRs but they are still in draft. Is there a reason they are draft?

I fear that propagating the color from DimmableStoryboard to each storyboard element every frame (which is how it is implemented right now) might bring noticeable performance impact, need to test that first before opening them up

Uncomfy avatar Jun 16 '25 07:06 Uncomfy