Skip to content
  • wjmaclean@chromium.org's avatar
    [Chromium] Cull occluded tiles in tiled layers · 96bd28d6
    wjmaclean@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=70533
    
    Reviewed by James Robinson.
    
    Source/WebCore:
    
    Unit test provided, must pass all existing GPU layout tests.
    
    * WebCore.gypi:
    * platform/graphics/chromium/cc/CCLayerImpl.cpp:
    (WebCore::CCLayerImpl::appendQuads):
    (WebCore::CCLayerImpl::quadTransform):
    * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
    (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
    (WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
    (WebCore::CCLayerTreeHostImpl::drawLayers):
    * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
    * platform/graphics/chromium/cc/CCQuadCuller.cpp: Added.
    (std::swap):
    (WebCore::regionContainsRect):
    (WebCore::CCQuadCuller::cullOccludedQuads):
    * platform/graphics/chromium/cc/CCQuadCuller.h: Added.
    (WebCore::CCQuadCuller::CCQuadCuller):
    * platform/graphics/chromium/cc/CCRenderPass.cpp:
    (WebCore::CCRenderPass::optimizeQuads):
    * platform/graphics/chromium/cc/CCRenderPass.h:
    
    Source/WebKit/chromium:
    
    * WebKit.gypi:
    * tests/CCQuadCullerTest.cpp: Added.
    (WebCore::TestDrawQuad::TestDrawQuad):
    (WebCore::TestDrawQuad::create):
    (WebCore::setQuads):
    (WebCore::TEST):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@104368 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    96bd28d6