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

Side by Side Diff: cc/gl_renderer_pixeltest.cc

Issue 11618026: Move filters to RenderPassDrawQuad (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 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 | Annotate | Revision Log
« no previous file with comments | « cc/gl_renderer.cc ('k') | cc/gl_renderer_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/gl_renderer.h" 5 #include "cc/gl_renderer.h"
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/path_service.h" 8 #include "base/path_service.h"
9 #include "cc/compositor_frame_metadata.h" 9 #include "cc/compositor_frame_metadata.h"
10 #include "cc/draw_quad.h" 10 #include "cc/draw_quad.h"
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 109
110 scoped_ptr<DrawQuad> CreateTestRenderPassDrawQuad( 110 scoped_ptr<DrawQuad> CreateTestRenderPassDrawQuad(
111 SharedQuadState* shared_state, gfx::Rect rect, RenderPass::Id pass_id) { 111 SharedQuadState* shared_state, gfx::Rect rect, RenderPass::Id pass_id) {
112 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create(); 112 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create();
113 quad->SetNew(shared_state, 113 quad->SetNew(shared_state,
114 rect, 114 rect,
115 pass_id, 115 pass_id,
116 false, // is_replica 116 false, // is_replica
117 0, // mask_resource_id 117 0, // mask_resource_id
118 rect, // contents_changed_since_last_frame 118 rect, // contents_changed_since_last_frame
119 gfx::RectF()); // mask_uv_rect 119 gfx::RectF(), // mask_uv_rect
120 WebKit::WebFilterOperations(), // foreground filters
121 skia::RefPtr<SkImageFilter>(), // foreground filter
122 WebKit::WebFilterOperations()); // background filters
120 123
121 return quad.PassAs<DrawQuad>(); 124 return quad.PassAs<DrawQuad>();
122 } 125 }
123 126
124 127
125 #if !defined(OS_ANDROID) 128 #if !defined(OS_ANDROID)
126 TEST_F(GLRendererPixelTest, simpleGreenRect) { 129 TEST_F(GLRendererPixelTest, simpleGreenRect) {
127 gfx::Rect rect(0, 0, 200, 200); 130 gfx::Rect rect(0, 0, 200, 200);
128 131
129 RenderPass::Id id(1, 1); 132 RenderPass::Id id(1, 1);
130 scoped_ptr<RenderPass> pass = CreateTestRenderPass(id, rect); 133 scoped_ptr<RenderPass> pass = CreateTestRenderPass(id, rect);
131 134
132 gfx::Transform content_to_target_transform; 135 gfx::Transform content_to_target_transform;
133 scoped_ptr<SharedQuadState> shared_state = 136 scoped_ptr<SharedQuadState> shared_state =
134 CreateTestSharedQuadState(content_to_target_transform, rect); 137 CreateTestSharedQuadState(content_to_target_transform, rect);
135 138
136 scoped_ptr<SolidColorDrawQuad> color_quad = SolidColorDrawQuad::Create(); 139 scoped_ptr<SolidColorDrawQuad> color_quad = SolidColorDrawQuad::Create();
137 color_quad->SetNew(shared_state.get(), rect, SK_ColorGREEN); 140 color_quad->SetNew(shared_state.get(), rect, SK_ColorGREEN);
138 141
139 pass->quad_list.append(color_quad.PassAs<DrawQuad>()); 142 pass->quad_list.append(color_quad.PassAs<DrawQuad>());
140 143
141 RenderPassList pass_list; 144 RenderPassList pass_list;
142 pass_list.push_back(pass.get()); 145 pass_list.append(pass.Pass());
143 RenderPassIdHashMap pass_map;
144 pass_map.add(id, pass.PassAs<RenderPass>());
145 146
146 renderer_->drawFrame(pass_list, pass_map); 147 renderer_->drawFrame(pass_list);
147 148
148 EXPECT_TRUE(PixelsMatchReference(FilePath(FILE_PATH_LITERAL("green.png")), 149 EXPECT_TRUE(PixelsMatchReference(FilePath(FILE_PATH_LITERAL("green.png")),
149 rect)); 150 rect));
150 } 151 }
151 152
152 TEST_F(GLRendererPixelTest, RenderPassChangesSize) { 153 TEST_F(GLRendererPixelTest, RenderPassChangesSize) {
153 gfx::Rect viewport_rect(200, 200); 154 gfx::Rect viewport_rect(200, 200);
154 155
155 RenderPass::Id root_pass_id(1, 1); 156 RenderPass::Id root_pass_id(1, 1);
156 scoped_ptr<RenderPass> root_pass = 157 scoped_ptr<RenderPass> root_pass =
(...skipping 17 matching lines...) Expand all
174 child_pass->quad_list.append(yellow.PassAs<DrawQuad>()); 175 child_pass->quad_list.append(yellow.PassAs<DrawQuad>());
175 176
176 scoped_ptr<SharedQuadState> pass_shared_state = 177 scoped_ptr<SharedQuadState> pass_shared_state =
177 CreateTestSharedQuadState(gfx::Transform(), pass_rect); 178 CreateTestSharedQuadState(gfx::Transform(), pass_rect);
178 root_pass->quad_list.append( 179 root_pass->quad_list.append(
179 CreateTestRenderPassDrawQuad(pass_shared_state.get(), 180 CreateTestRenderPassDrawQuad(pass_shared_state.get(),
180 pass_rect, 181 pass_rect,
181 child_pass_id)); 182 child_pass_id));
182 183
183 RenderPassList pass_list; 184 RenderPassList pass_list;
184 pass_list.push_back(child_pass.get()); 185 pass_list.append(child_pass.Pass());
185 pass_list.push_back(root_pass.get()); 186 pass_list.append(root_pass.Pass());
186
187 RenderPassIdHashMap pass_map;
188 pass_map.add(child_pass_id, child_pass.Pass());
189 pass_map.add(root_pass_id, root_pass.Pass());
190 187
191 renderer_->setEnlargePassTextureAmountForTesting(gfx::Vector2d(50, 75)); 188 renderer_->setEnlargePassTextureAmountForTesting(gfx::Vector2d(50, 75));
192 renderer_->decideRenderPassAllocationsForFrame(pass_list); 189 renderer_->decideRenderPassAllocationsForFrame(pass_list);
193 renderer_->drawFrame(pass_list, pass_map); 190 renderer_->drawFrame(pass_list);
194 191
195 EXPECT_TRUE(PixelsMatchReference( 192 EXPECT_TRUE(PixelsMatchReference(
196 FilePath(FILE_PATH_LITERAL("blue_yellow.png")), viewport_rect)); 193 FilePath(FILE_PATH_LITERAL("blue_yellow.png")), viewport_rect));
197 } 194 }
198 #endif 195 #endif
199 196
200 } // namespace 197 } // namespace
201 } // namespace cc 198 } // namespace cc
OLDNEW
« no previous file with comments | « cc/gl_renderer.cc ('k') | cc/gl_renderer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698