Unnecessary quads drawn underneath videos with Gpu rasterization enabled. |
||||
Issue descriptionCurrently when drawing quads that are partially occluded we can only shrink the visible rectangles to be a smaller rectangle, and not an arbitrary shape. This causes a problem when the video occludes the corner of a quad, because the remaining unoccluded area is an L shape and the minimum containing rectangle is the full size of the original rectangle. With software rasterization this isn't much of a problem, because each quad is 256x256 and only the 4 corner tiles are affected by this. The maximum number of pixels overdrawn is 262144, which is normally a small portion of the screen. With GPU rasterization the quads are as wide as the window and also taller, so it's possible two entire quads are affected by this. This bug causes unnecessary overdraw below videos when overlays aren't being used, and wastes power. I've got a patch that splits quads so that we can handle occlusion more precisely at https://codereview.chromium.org/2402583005/ though it might hurt in circumstances where it generates a lot more quads and therefore a lot more draw calls.
,
Aug 10 2017
I think Intel reported this to us initially, using whatever tools they use. To confirm it, I've used the "Show layer borders" option from the Rendering pane of the devtools, and actually just made the video quad not draw at all so we could see what was happening underneath it. Unfortunately I think "Frame viewer" in about:tracing doesn't know about occlusion culling, so that doesn't help. There's also --show-overdraw-feedback, which works on Chrome OS but not windows. I think we'd need to enable stencil buffers on the swapchain to make it work, and also maybe other bug fixes.
,
Sep 8 2017
,
Sep 10
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 14
Keeping around in case this is something we want to try for occlusion culling. |
||||
►
Sign in to add a comment |
||||
Comment 1 by brucedaw...@chromium.org
, Aug 10 2017