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

Side by Side Diff: cc/trees/layer_tree_host_common_perftest.cc

Issue 1479883002: cc: Fix draw transform computation for non-drawn layers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove LayerImpl::draw_transform() Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/trees/layer_tree_host_common.h" 5 #include "cc/trees/layer_tree_host_common.h"
6 6
7 #include <deque> 7 #include <deque>
8 #include <sstream> 8 #include <sstream>
9 9
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 } 102 }
103 103
104 void DoCalcDrawPropertiesImpl(bool can_render_to_separate_surface, 104 void DoCalcDrawPropertiesImpl(bool can_render_to_separate_surface,
105 int max_texture_size, 105 int max_texture_size,
106 LayerTreeImpl* active_tree, 106 LayerTreeImpl* active_tree,
107 LayerTreeHostImpl* host_impl) { 107 LayerTreeHostImpl* host_impl) {
108 LayerImplList update_list; 108 LayerImplList update_list;
109 PropertyTrees property_trees; 109 PropertyTrees property_trees;
110 bool verify_property_trees = false; 110 bool verify_property_trees = false;
111 bool use_property_trees = false; 111 bool use_property_trees = false;
112 active_tree->IncrementRenderSurfaceListIdForTesting();
112 LayerTreeHostCommon::CalcDrawPropsImplInputs inputs( 113 LayerTreeHostCommon::CalcDrawPropsImplInputs inputs(
113 active_tree->root_layer(), active_tree->DrawViewportSize(), 114 active_tree->root_layer(), active_tree->DrawViewportSize(),
114 host_impl->DrawTransform(), active_tree->device_scale_factor(), 115 host_impl->DrawTransform(), active_tree->device_scale_factor(),
115 active_tree->current_page_scale_factor(), 116 active_tree->current_page_scale_factor(),
116 active_tree->InnerViewportContainerLayer(), 117 active_tree->InnerViewportContainerLayer(),
117 active_tree->InnerViewportScrollLayer(), 118 active_tree->InnerViewportScrollLayer(),
118 active_tree->OuterViewportScrollLayer(), 119 active_tree->OuterViewportScrollLayer(),
119 active_tree->elastic_overscroll()->Current(active_tree->IsActiveTree()), 120 active_tree->elastic_overscroll()->Current(active_tree->IsActiveTree()),
120 active_tree->OverscrollElasticityLayer(), max_texture_size, 121 active_tree->OverscrollElasticityLayer(), max_texture_size,
121 host_impl->settings().can_use_lcd_text, 122 host_impl->settings().can_use_lcd_text,
122 host_impl->settings().layers_always_allowed_lcd_text, 123 host_impl->settings().layers_always_allowed_lcd_text,
123 can_render_to_separate_surface, 124 can_render_to_separate_surface,
124 host_impl->settings().layer_transforms_should_scale_layer_contents, 125 host_impl->settings().layer_transforms_should_scale_layer_contents,
125 verify_property_trees, use_property_trees, &update_list, 0, 126 verify_property_trees, use_property_trees, &update_list,
126 &property_trees); 127 active_tree->current_render_surface_list_id(), &property_trees);
127 LayerTreeHostCommon::CalculateDrawProperties(&inputs); 128 LayerTreeHostCommon::CalculateDrawProperties(&inputs);
128 } 129 }
129 }; 130 };
130 131
131 class BspTreePerfTest : public CalcDrawPropsTest { 132 class BspTreePerfTest : public CalcDrawPropsTest {
132 public: 133 public:
133 BspTreePerfTest() : num_duplicates_(1) {} 134 BspTreePerfTest() : num_duplicates_(1) {}
134 void RunSortLayers() { RunTest(false, false); } 135 void RunSortLayers() { RunTest(false, false); }
135 136
136 void SetNumberOfDuplicates(int num_duplicates) { 137 void SetNumberOfDuplicates(int num_duplicates) {
(...skipping 13 matching lines...) Expand all
150 active_tree, 151 active_tree,
151 host_impl); 152 host_impl);
152 153
153 LayerImplList base_list; 154 LayerImplList base_list;
154 BuildLayerImplList(active_tree->root_layer(), &base_list); 155 BuildLayerImplList(active_tree->root_layer(), &base_list);
155 156
156 int polygon_counter = 0; 157 int polygon_counter = 0;
157 std::vector<scoped_ptr<DrawPolygon>> polygon_list; 158 std::vector<scoped_ptr<DrawPolygon>> polygon_list;
158 for (LayerImplList::iterator it = base_list.begin(); it != base_list.end(); 159 for (LayerImplList::iterator it = base_list.begin(); it != base_list.end();
159 ++it) { 160 ++it) {
160 DrawPolygon* draw_polygon = 161 DrawPolygon* draw_polygon = new DrawPolygon(
161 new DrawPolygon(NULL, gfx::RectF(gfx::SizeF((*it)->bounds())), 162 NULL, gfx::RectF(gfx::SizeF((*it)->bounds())),
162 (*it)->draw_transform(), polygon_counter++); 163 (*it)->draw_properties().target_space_transform, polygon_counter++);
163 polygon_list.push_back(scoped_ptr<DrawPolygon>(draw_polygon)); 164 polygon_list.push_back(scoped_ptr<DrawPolygon>(draw_polygon));
164 } 165 }
165 166
166 timer_.Reset(); 167 timer_.Reset();
167 do { 168 do {
168 std::deque<scoped_ptr<DrawPolygon>> test_list; 169 std::deque<scoped_ptr<DrawPolygon>> test_list;
169 for (int i = 0; i < num_duplicates_; i++) { 170 for (int i = 0; i < num_duplicates_; i++) {
170 for (size_t i = 0; i < polygon_list.size(); i++) { 171 for (size_t i = 0; i < polygon_list.size(); i++) {
171 test_list.push_back(polygon_list[i]->CreateCopy()); 172 test_list.push_back(polygon_list[i]->CreateCopy());
172 } 173 }
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 263
263 TEST_F(BspTreePerfTest, BspTreeCubes_4) { 264 TEST_F(BspTreePerfTest, BspTreeCubes_4) {
264 SetTestName("bsp_tree_cubes_4"); 265 SetTestName("bsp_tree_cubes_4");
265 SetNumberOfDuplicates(4); 266 SetNumberOfDuplicates(4);
266 ReadTestFile("layer_sort_cubes"); 267 ReadTestFile("layer_sort_cubes");
267 RunSortLayers(); 268 RunSortLayers();
268 } 269 }
269 270
270 } // namespace 271 } // namespace
271 } // namespace cc 272 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698