[Webkit-unassigned] [Bug 174457] New: [GTK][WPE] Implement antialiased rounded rectangle clipping in TextureMapper

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jul 13 01:06:22 PDT 2017


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

            Bug ID: 174457
           Summary: [GTK][WPE] Implement antialiased rounded rectangle
                    clipping in TextureMapper
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Gtk
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: magomez at igalia.com
                CC: bugs-noreply at webkitgtk.org

As commented in bug 174157, image elements that are drawn in their own RenderLayer can be directly composited without needing to render them to a backing store. This is an optimization that saves rendering time and also memory (we use exactly the size of the image instead of the wasting tiles).

One of these cases that are optimized is when the image has a border-radius property but doesn't have a visible border. This should be directly composited and the rounded rectangle should be clipped during the composition. But this rounded rectangle clipping is not supported in the TextureMapper yet. In bug 174157 a workaround was added so this case was not directly composited. While this works, it's not optimum.

The optimum fix is to implement rounded rectangle clipping in the TextureMapper and then directly composite the images with border-radius, while clipping appropriately.

As a reminder for me: we need to also support antialiasing during the clipping. I don't see how this can be performed with the stencil, so it discards the approach I was making for the clipping. I think the clipping needs to be implemented in the shader, checking for each pixel whether it's not inside the clipping area or not. So pixels inside the rectagle are draw, pixels outside arent', and pixels in the border are maybe blended for antialiasing purposes.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170713/9ebdeb8b/attachment.html>


More information about the webkit-unassigned mailing list