[Webkit-unassigned] [Bug 88482] [Chromium] Compositor should avoid drawing quads when cached textures are available and contents unchanged

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jun 14 14:28:36 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=88482





--- Comment #35 from Adrienne Walker <enne at google.com>  2012-06-14 14:28:35 PST ---
(In reply to comment #34)

> > I don't understand what the hack is here
> 
> A couple of possibilities, I'd consider them as hacks. First is to cache the removed render passes in a separate vector so that they don't go out of scope. That caching will have to be removed when render pass pointer becomes and ID, that's why I said it's more changes. The second possibility is to introduce a flag in render pass that will cause the draw to be skipped. I'd consider this problematic because we shouldn't have issues with removing render passes - they never survive a single frame anyways. Given that the current direction is for the render pass pointer inside the quad to become and ID, I thought this solution was the closest to it.
> 
> It is a matter of opinion however so if you want any of these possibilities or have a different one in mind this can be done. Just wanted to point out that it's not as simple as replacing quad->surface() with quad->pass()->surface().

Oh, I see now.

Even with ids, you're still going to need to keep the render passes alive to be referred to, I suspect.  In the short term, I prefer the caching solution you mention--you could just add a skippedPasses member to FrameData and move passes from renderPasses to skippedPasses to keep them alive.  I think that's safer than having a pointer on a quad that may or may not be valid at some given time.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list