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

Transforms with high loop counts cause excessive overhead when rewind is enabled

Open peppy opened this issue 11 months ago • 0 comments

Opening for tracking purposes. This is the root cause of some storyboards having very high overheads (many objects with short repeating loop).

The overhead is from looping elements, specifically the Clone of the Transform for each loop that has played out since the last update of the DrawableStoryboard:

JetBrains Rider 2025-01-14 at 06 36 29

A solution probably involves changing how loops are handled to not require a new Transform copy per loop. It should be a medium effort fix where the original looping transform can know where it is in a loop sequence and handle rewind locally.

peppy avatar Jan 14 '25 06:01 peppy