Changeset 110691 in webkit


Ignore:
Timestamp:
Mar 14, 2012 4:56:47 AM (12 years ago)
Author:
commit-queue@webkit.org
Message:

3D transformed surfaces with z>0 gets cropped
https://bugs.webkit.org/show_bug.cgi?id=81009

Patch by Lars Knudsen <lars.knudsen@nokia.com> on 2012-03-14
Reviewed by Noam Rosenthal.

The scissor clipping in TextureMapperGL didn't take 3D transforms
into account when calculating the clipping region.
Now, it will bail out early if the transform is not affine.

No new tests. Tested by current compositing layout tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::beginScissorClip):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r110684 r110691  
     12012-03-14  Lars Knudsen  <lars.knudsen@nokia.com>
     2
     3        3D transformed surfaces with z>0 gets cropped
     4        https://bugs.webkit.org/show_bug.cgi?id=81009
     5
     6        Reviewed by Noam Rosenthal.
     7
     8        The scissor clipping in TextureMapperGL didn't take 3D transforms
     9        into account when calculating the clipping region.
     10        Now, it will bail out early if the transform is not affine.
     11
     12        No new tests. Tested by current compositing layout tests.
     13
     14        * platform/graphics/texmap/TextureMapperGL.cpp:
     15        (WebCore::TextureMapperGL::beginScissorClip):
     16
    1172012-03-14  Hajime Morrita  <morrita@chromium.org>
    218
  • trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp

    r110439 r110691  
    605605bool TextureMapperGL::beginScissorClip(const TransformationMatrix& modelViewMatrix, const FloatRect& targetRect)
    606606{
     607    // 3D transforms are currently not supported in scissor clipping
     608    // resulting in cropped surfaces when z>0.
     609    if (!modelViewMatrix.isAffine())
     610        return false;
     611
    607612    FloatQuad quad = modelViewMatrix.projectQuad(targetRect);
    608613    IntRect rect = quad.enclosingBoundingBox();
Note: See TracChangeset for help on using the changeset viewer.