DescriptionFixed a bug in the layer sorter to deal with layers that are very close together. Due to numeric precision issues, the sorter would produce wrong results for some transformations. The patch checks to see if all tests that compare the edges of the two layers result in significant precision loss. If all tests cause significant precision loss the sorter now declares that it is impossible to tell which layer should be drawn first and falls back to document order for those layers. This produces a consistent result across frames for layers that are close together and eliminated flickering artifacts on the test scene.
A unit test is included. The test takes two layers (very close together) and tests to see what order the layer-sorter produces. The correct sorted order of the layers is the same as document order. Without this patch the layer-sorter puts them in the wrong order.
BUG=61666
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=176178
Patch Set 1 #
Total comments: 6
Patch Set 2 : Fixed comments and formatting as requested by reviewers #
Total comments: 1
Patch Set 3 : git cl try #Patch Set 4 : updated to tip of tree #
Total comments: 8
Patch Set 5 : git cl try #Patch Set 6 : merging to tip of tree #Patch Set 7 : merging with tip of tree #Messages
Total messages: 15 (0 generated)
|