Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Issue 23708021: Do not clip inside OcclusionTracker. (Closed)

Created:
7 years, 3 months ago by alokp
Modified:
7 years, 2 months ago
Reviewers:
danakj, enne (OOO)
CC:
chromium-reviews, cc-bugs_chromium.org
Visibility:
Public.

Description

Do not clip inside OcclusionTracker. Assume that content-rect is already clipped. This allows us to early-out from occlusion testing when there is no occlusion. BUG=276725 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=227133

Patch Set 1 #

Total comments: 20

Patch Set 2 : rebase #

Patch Set 3 : no clipping for render-surface #

Patch Set 4 : do not clip occluder surface #

Patch Set 5 : no clipping in ReduceOcclusionBelowSurface #

Patch Set 6 : added DCHECK #

Total comments: 15

Patch Set 7 : rebase #

Patch Set 8 : remove clipping in query function only #

Patch Set 9 : rebase #

Patch Set 10 : quad-culler unittests pass #

Patch Set 11 : more occlusion-culler unittests pass #

Patch Set 12 : all tests pass #

Total comments: 6

Patch Set 13 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+62 lines, -984 lines) Patch
M cc/layers/tiled_layer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -3 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -3 lines 0 comments Download
M cc/trees/occlusion_tracker.h View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -10 lines 0 comments Download
M cc/trees/occlusion_tracker.cc View 1 2 3 4 5 6 7 8 8 chunks +12 lines, -28 lines 0 comments Download
M cc/trees/occlusion_tracker_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 18 chunks +42 lines, -776 lines 0 comments Download
M cc/trees/quad_culler.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -3 lines 0 comments Download
M cc/trees/quad_culler_unittest.cc View 1 2 3 4 5 6 7 8 9 2 chunks +1 line, -161 lines 0 comments Download

Messages

Total messages: 20 (0 generated)
alokp
I have not updated the unit-tests yet. I wanted to get early feedback on the ...
7 years, 3 months ago (2013-09-09 22:41:33 UTC) #1
enne (OOO)
This approach sounds good to me. I am quite fine with doing some extra work ...
7 years, 3 months ago (2013-09-09 23:37:39 UTC) #2
alokp
https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (left): https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc#oldcode560 cc/trees/occlusion_tracker.cc:560: render_target->render_surface()->content_rect()); On 2013/09/09 23:37:39, enne wrote: > I think ...
7 years, 3 months ago (2013-09-10 13:31:44 UTC) #3
danakj
I'm curious to see where/how we'll do the clipping now. I think the "HALF" comparison ...
7 years, 3 months ago (2013-09-10 14:36:37 UTC) #4
alokp
Yes it is quite unfair to claim 2x improvement. The big caveat is that this ...
7 years, 3 months ago (2013-09-10 18:15:46 UTC) #5
danakj
https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (left): https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc#oldcode459 cc/trees/occlusion_tracker.cc:459: transformed_rect.Intersect(clip_rect_in_target); On 2013/09/10 18:15:46, Alok Priyadarshi wrote: > VisibleContentOpaqueRegion ...
7 years, 3 months ago (2013-09-10 18:21:10 UTC) #6
alokp
https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (left): https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc#oldcode459 cc/trees/occlusion_tracker.cc:459: transformed_rect.Intersect(clip_rect_in_target); On 2013/09/10 18:21:10, danakj wrote: > On 2013/09/10 ...
7 years, 3 months ago (2013-09-10 20:51:27 UTC) #7
danakj
https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (left): https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc#oldcode459 cc/trees/occlusion_tracker.cc:459: transformed_rect.Intersect(clip_rect_in_target); On 2013/09/10 20:51:27, Alok Priyadarshi wrote: > On ...
7 years, 3 months ago (2013-09-10 20:54:24 UTC) #8
alokp
On 2013/09/10 20:54:24, danakj wrote: > https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc > File cc/trees/occlusion_tracker.cc (left): > > https://codereview.chromium.org/23708021/diff/1/cc/trees/occlusion_tracker.cc#oldcode459 > ...
7 years, 3 months ago (2013-09-10 20:57:36 UTC) #9
danakj
> For now we only consider axis-aligned occluders. So a comment with big > WARNING ...
7 years, 3 months ago (2013-09-10 20:59:41 UTC) #10
alokp
I got rid of all clipping and added DCHECKs to make sure that the occluded ...
7 years, 3 months ago (2013-09-13 21:38:46 UTC) #11
danakj
https://codereview.chromium.org/23708021/diff/26001/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (left): https://codereview.chromium.org/23708021/diff/26001/cc/trees/occlusion_tracker.cc#oldcode100 cc/trees/occlusion_tracker.cc:100: if (have_clip_rect) I don't really understand this change. It's ...
7 years, 3 months ago (2013-09-16 17:29:07 UTC) #12
alokp
I will send an email to graphics-dev asking if anyone objects to removing outside-occlusion bit. ...
7 years, 3 months ago (2013-09-17 00:31:41 UTC) #13
danakj
Thanks, this looks fine. Could you include some perf numbers in the CL description? As ...
7 years, 3 months ago (2013-09-17 15:24:15 UTC) #14
alokp
Dana: This is ready for review again. RenderSurface caching was deleted in r226146. All the ...
7 years, 2 months ago (2013-10-02 21:59:26 UTC) #15
danakj
LGTM https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (right): https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker.cc#newcode675 cc/trees/occlusion_tracker.cc:675: // Treat other clipping as occlusion from outside ...
7 years, 2 months ago (2013-10-03 21:33:14 UTC) #16
alokp
https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker.cc File cc/trees/occlusion_tracker.cc (right): https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker.cc#newcode675 cc/trees/occlusion_tracker.cc:675: // Treat other clipping as occlusion from outside the ...
7 years, 2 months ago (2013-10-03 23:06:30 UTC) #17
danakj
https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker_unittest.cc File cc/trees/occlusion_tracker_unittest.cc (right): https://codereview.chromium.org/23708021/diff/41001/cc/trees/occlusion_tracker_unittest.cc#newcode1250 cc/trees/occlusion_tracker_unittest.cc:1250: // These rects are occluded except for the part ...
7 years, 2 months ago (2013-10-04 16:33:04 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/alokp@chromium.org/23708021/48001
7 years, 2 months ago (2013-10-04 18:48:28 UTC) #19
commit-bot: I haz the power
7 years, 2 months ago (2013-10-04 23:26:54 UTC) #20
Message was sent while issue was closed.
Change committed as 227133

Powered by Google App Engine
This is Rietveld 408576698