[Webkit-unassigned] [Bug 67341] New: Scissor rect optimization for chromium compositor

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Aug 31 16:51:19 PDT 2011


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

           Summary: Scissor rect optimization for chromium compositor
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: shawnsingh at chromium.org
                CC: vangelis at chromium.org, enne at google.com,
                    nduca at chromium.org


This first patch is for review only.  It implements two things:

(1) a scissor rect optimization:  paint rects and layer changes are tracked so that the renderer can compute a rect that contains any changes that were made since the previous redraw.  This rect can be used to scissor the rendering passes.  Eventually it can also be used to copy sub-buffers in the GPU process.

(2) a visualization of paint rects, draw rects, exposed rects, and the compositor scissor rect, on the CCHeadsUpDisplay.  This should probably be submitted as a separate patch, when things are ready to commit.  For now, if you want to try running the patch, you can hard-code the 3 options to true/false as desired.

Reviewers please note:
  - most of the "TODO(shawnsingh)" comments are actually questions for reviewers.
  - please suggest how we might need to pipe this scissor rect to the GPU process
  - please suggest how we want to enable/disable it (e.g., with a command-line flag? where will the setting come from?)

About testing: we will need rigorous unit tests, and possibly layout tests.  This code has been informally tested on:
  - youtube html5 videos
  - khronos webgl+css demo
  - khronos webgl shiny teapot demo
  - poster circle
  - briefly tested canvas and layer masks
  - testing requires manually selecting text, performing mouse-overs and clicks.

Known issues:
  - https://bugs.webkit.org/show_bug.cgi?id=67009
  - youtube html5 seems to produce arbitrary large paint rects.  Most of these weird rects are correlated to small popups associated with buttons.

-- 
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