Descriptioncc: Make occlusion a draw property.
We were computing occlusion twice, once in UpdateDrawProperties
and once in CalculateRenderPasses. Now just do it once in
UpdateDrawProperties, which means we don't have to do that work
at all if we draw again without dirtying the render surface layer
list.
This moves the call to UpdateTiles out of the loop for occlusion,
instead calling it directly on each of the picture layers on the
tree, meaning it does not have to be virtual anymore.
This makes it possible for us to call UpdateTiles on picture layers
that were not part of the RenderSurfaceLayerList. Though for now
I left the behaviour as is with a TODO.
Also removed all the old LayerTreeHostOcclusionTests. Added a few
new ones to ensure occlusion gets saved correctly in layers and
surfaces. The test cases that would be missing, I moved to be
OcclusionTrackerTests.
R=enne, vmpstr
BUG=446751
Committed: https://crrev.com/4902c30c928ceb9f14366d9a6cad5ef85968a058
Cr-Commit-Position: refs/heads/master@{#316306}
Patch Set 1 #Patch Set 2 : occlusiondrawproperty: . #Patch Set 3 : occlusiondrawproperty: notvirtual #
Total comments: 6
Patch Set 4 : occlusiondrawproperty: bettercomments #Patch Set 5 : occlusiondrawproperty: replicaaaaaaaaaaaaas #
Total comments: 6
Patch Set 6 : occlusiondrawproperty: rebase #Patch Set 7 : occlusiondrawproperty: earlyoutloop #
Messages
Total messages: 18 (3 generated)
|