Expand damage rect to include intersecting backdrop-filters
Prior to this CL, the root damage rect might have partially intersected child render passes that had backdrop filters applied. In that case, the backdrop filter code would attempt to read back the backdrop image, and would find already-filtered content outside of the damage rect, but inside the render pass quad bounds. It would then filter this image, and if the backdrop filters moved pixels, some of that double-filtered content would bleed back into the damage rect and be used. This would lead to visual artifacts. With this CL, any child render passes that contain pixel-moving backdrop filters are checked for intersection with the root damage rect, and if they intersect, the damage rect is expanded to include the entire child render pass output rect. Bug: 986206 Change-Id: I81a51e24548cae736172938ce190f6ba4c6d2b94 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1847675 Commit-Queue: Mason Freed <masonfreed@chromium.org> Reviewed-by:Eric Karl <ericrk@chromium.org> Reviewed-by:
kylechar <kylechar@chromium.org> Auto-Submit: Mason Freed <masonfreed@chromium.org> Cr-Commit-Position: refs/heads/master@{#706531}
Showing
Please register or sign in to comment