-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] Absorb DrawPaints at the beginning of EntityPasses #40675
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This could probably do with a unit test. Can we detect that nothing has been drawn on an aiks canvas? |
I don' think this is quite right. It depends on the pass load action being something specific (Color::BlackTransparent). Which I suppose is true now for Aiks. We should be able to handle all clears (multiple redundant clears or calls before clears) one level below this. |
I don't think this PR will produce incorrect rendering results and I verified that it removes the first redundant fill, but I'm refactoring it to make it more aggressive/remove multiple fills and set the clear color. |
Alright, I fixed this up to absorb back-to-back clears regardless of their color. Also managed to sneak in a test. |
SkiaPerf is showing this was a nice improvement: |
No description provided.