OLD | NEW |
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 "base/message_loop/message_loop.h" | 5 #include "base/message_loop/message_loop.h" |
6 #include "cc/output/gl_renderer.h" | 6 #include "cc/output/gl_renderer.h" |
7 #include "cc/quads/draw_quad.h" | 7 #include "cc/quads/draw_quad.h" |
8 #include "cc/quads/picture_draw_quad.h" | 8 #include "cc/quads/picture_draw_quad.h" |
9 #include "cc/quads/texture_draw_quad.h" | 9 #include "cc/quads/texture_draw_quad.h" |
10 #include "cc/resources/video_resource_updater.h" | 10 #include "cc/resources/video_resource_updater.h" |
(...skipping 29 matching lines...) Expand all Loading... |
40 const gfx::Rect& rect, | 40 const gfx::Rect& rect, |
41 const gfx::Transform& transform_to_root_target) { | 41 const gfx::Transform& transform_to_root_target) { |
42 scoped_ptr<RenderPass> pass = RenderPass::Create(); | 42 scoped_ptr<RenderPass> pass = RenderPass::Create(); |
43 const gfx::Rect output_rect = rect; | 43 const gfx::Rect output_rect = rect; |
44 const gfx::Rect damage_rect = rect; | 44 const gfx::Rect damage_rect = rect; |
45 pass->SetNew(id, output_rect, damage_rect, transform_to_root_target); | 45 pass->SetNew(id, output_rect, damage_rect, transform_to_root_target); |
46 return pass.Pass(); | 46 return pass.Pass(); |
47 } | 47 } |
48 | 48 |
49 SharedQuadState* CreateTestSharedQuadState( | 49 SharedQuadState* CreateTestSharedQuadState( |
50 gfx::Transform content_to_target_transform, | 50 gfx::Transform quad_to_target_transform, |
51 const gfx::Rect& rect, | 51 const gfx::Rect& rect, |
52 RenderPass* render_pass) { | 52 RenderPass* render_pass) { |
53 const gfx::Size content_bounds = rect.size(); | 53 const gfx::Size layer_bounds = rect.size(); |
54 const gfx::Rect visible_content_rect = rect; | 54 const gfx::Rect visible_layer_rect = rect; |
55 const gfx::Rect clip_rect = rect; | 55 const gfx::Rect clip_rect = rect; |
56 const bool is_clipped = false; | 56 const bool is_clipped = false; |
57 const float opacity = 1.0f; | 57 const float opacity = 1.0f; |
58 const SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode; | 58 const SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode; |
59 int sorting_context_id = 0; | 59 int sorting_context_id = 0; |
60 SharedQuadState* shared_state = render_pass->CreateAndAppendSharedQuadState(); | 60 SharedQuadState* shared_state = render_pass->CreateAndAppendSharedQuadState(); |
61 shared_state->SetAll(content_to_target_transform, | 61 shared_state->SetAll(quad_to_target_transform, layer_bounds, |
62 content_bounds, | 62 visible_layer_rect, clip_rect, is_clipped, opacity, |
63 visible_content_rect, | 63 blend_mode, sorting_context_id); |
64 clip_rect, | |
65 is_clipped, | |
66 opacity, | |
67 blend_mode, | |
68 sorting_context_id); | |
69 return shared_state; | 64 return shared_state; |
70 } | 65 } |
71 | 66 |
72 SharedQuadState* CreateTestSharedQuadStateClipped( | 67 SharedQuadState* CreateTestSharedQuadStateClipped( |
73 gfx::Transform content_to_target_transform, | 68 gfx::Transform quad_to_target_transform, |
74 const gfx::Rect& rect, | 69 const gfx::Rect& rect, |
75 const gfx::Rect& clip_rect, | 70 const gfx::Rect& clip_rect, |
76 RenderPass* render_pass) { | 71 RenderPass* render_pass) { |
77 const gfx::Size content_bounds = rect.size(); | 72 const gfx::Size layer_bounds = rect.size(); |
78 const gfx::Rect visible_content_rect = clip_rect; | 73 const gfx::Rect visible_layer_rect = clip_rect; |
79 const bool is_clipped = true; | 74 const bool is_clipped = true; |
80 const float opacity = 1.0f; | 75 const float opacity = 1.0f; |
81 const SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode; | 76 const SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode; |
82 int sorting_context_id = 0; | 77 int sorting_context_id = 0; |
83 SharedQuadState* shared_state = render_pass->CreateAndAppendSharedQuadState(); | 78 SharedQuadState* shared_state = render_pass->CreateAndAppendSharedQuadState(); |
84 shared_state->SetAll(content_to_target_transform, | 79 shared_state->SetAll(quad_to_target_transform, layer_bounds, |
85 content_bounds, | 80 visible_layer_rect, clip_rect, is_clipped, opacity, |
86 visible_content_rect, | 81 blend_mode, sorting_context_id); |
87 clip_rect, | |
88 is_clipped, | |
89 opacity, | |
90 blend_mode, | |
91 sorting_context_id); | |
92 return shared_state; | 82 return shared_state; |
93 } | 83 } |
94 | 84 |
95 void CreateTestRenderPassDrawQuad(const SharedQuadState* shared_state, | 85 void CreateTestRenderPassDrawQuad(const SharedQuadState* shared_state, |
96 const gfx::Rect& rect, | 86 const gfx::Rect& rect, |
97 RenderPassId pass_id, | 87 RenderPassId pass_id, |
98 RenderPass* render_pass) { | 88 RenderPass* render_pass) { |
99 RenderPassDrawQuad* quad = | 89 RenderPassDrawQuad* quad = |
100 render_pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); | 90 render_pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); |
101 quad->SetNew(shared_state, | 91 quad->SetNew(shared_state, |
(...skipping 1111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1213 RenderPassId root_pass_id(1, 1); | 1203 RenderPassId root_pass_id(1, 1); |
1214 scoped_ptr<RenderPass> root_pass = | 1204 scoped_ptr<RenderPass> root_pass = |
1215 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1205 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1216 | 1206 |
1217 RenderPassId child_pass_id(2, 2); | 1207 RenderPassId child_pass_id(2, 2); |
1218 gfx::Rect pass_rect(this->device_viewport_size_); | 1208 gfx::Rect pass_rect(this->device_viewport_size_); |
1219 gfx::Transform transform_to_root; | 1209 gfx::Transform transform_to_root; |
1220 scoped_ptr<RenderPass> child_pass = | 1210 scoped_ptr<RenderPass> child_pass = |
1221 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1211 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1222 | 1212 |
1223 gfx::Transform content_to_target_transform; | 1213 gfx::Transform quad_to_target_transform; |
1224 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1214 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1225 content_to_target_transform, viewport_rect, child_pass.get()); | 1215 quad_to_target_transform, viewport_rect, child_pass.get()); |
1226 shared_state->opacity = 0.5f; | 1216 shared_state->opacity = 0.5f; |
1227 | 1217 |
1228 gfx::Rect blue_rect(0, | 1218 gfx::Rect blue_rect(0, |
1229 0, | 1219 0, |
1230 this->device_viewport_size_.width(), | 1220 this->device_viewport_size_.width(), |
1231 this->device_viewport_size_.height() / 2); | 1221 this->device_viewport_size_.height() / 2); |
1232 SolidColorDrawQuad* blue = | 1222 SolidColorDrawQuad* blue = |
1233 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1223 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1234 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1224 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1235 gfx::Rect yellow_rect(0, | 1225 gfx::Rect yellow_rect(0, |
1236 this->device_viewport_size_.height() / 2, | 1226 this->device_viewport_size_.height() / 2, |
1237 this->device_viewport_size_.width(), | 1227 this->device_viewport_size_.width(), |
1238 this->device_viewport_size_.height() / 2); | 1228 this->device_viewport_size_.height() / 2); |
1239 SolidColorDrawQuad* yellow = | 1229 SolidColorDrawQuad* yellow = |
1240 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1230 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1241 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); | 1231 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); |
1242 | 1232 |
1243 SharedQuadState* blank_state = CreateTestSharedQuadState( | 1233 SharedQuadState* blank_state = CreateTestSharedQuadState( |
1244 content_to_target_transform, viewport_rect, child_pass.get()); | 1234 quad_to_target_transform, viewport_rect, child_pass.get()); |
1245 | 1235 |
1246 SolidColorDrawQuad* white = | 1236 SolidColorDrawQuad* white = |
1247 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1237 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1248 white->SetNew( | 1238 white->SetNew( |
1249 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); | 1239 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); |
1250 | 1240 |
1251 SharedQuadState* pass_shared_state = | 1241 SharedQuadState* pass_shared_state = |
1252 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); | 1242 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); |
1253 | 1243 |
1254 SkScalar matrix[20]; | 1244 SkScalar matrix[20]; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1305 RenderPassId root_pass_id(1, 1); | 1295 RenderPassId root_pass_id(1, 1); |
1306 scoped_ptr<RenderPass> root_pass = | 1296 scoped_ptr<RenderPass> root_pass = |
1307 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1297 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1308 | 1298 |
1309 RenderPassId child_pass_id(2, 2); | 1299 RenderPassId child_pass_id(2, 2); |
1310 gfx::Rect pass_rect(this->device_viewport_size_); | 1300 gfx::Rect pass_rect(this->device_viewport_size_); |
1311 gfx::Transform transform_to_root; | 1301 gfx::Transform transform_to_root; |
1312 scoped_ptr<RenderPass> child_pass = | 1302 scoped_ptr<RenderPass> child_pass = |
1313 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1303 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1314 | 1304 |
1315 gfx::Transform content_to_target_transform; | 1305 gfx::Transform quad_to_target_transform; |
1316 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1306 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1317 content_to_target_transform, viewport_rect, child_pass.get()); | 1307 quad_to_target_transform, viewport_rect, child_pass.get()); |
1318 shared_state->opacity = 0.5f; | 1308 shared_state->opacity = 0.5f; |
1319 | 1309 |
1320 gfx::Rect blue_rect(0, | 1310 gfx::Rect blue_rect(0, |
1321 0, | 1311 0, |
1322 this->device_viewport_size_.width(), | 1312 this->device_viewport_size_.width(), |
1323 this->device_viewport_size_.height() / 2); | 1313 this->device_viewport_size_.height() / 2); |
1324 SolidColorDrawQuad* blue = | 1314 SolidColorDrawQuad* blue = |
1325 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1315 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1326 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1316 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1327 gfx::Rect yellow_rect(0, | 1317 gfx::Rect yellow_rect(0, |
1328 this->device_viewport_size_.height() / 2, | 1318 this->device_viewport_size_.height() / 2, |
1329 this->device_viewport_size_.width(), | 1319 this->device_viewport_size_.width(), |
1330 this->device_viewport_size_.height() / 2); | 1320 this->device_viewport_size_.height() / 2); |
1331 SolidColorDrawQuad* yellow = | 1321 SolidColorDrawQuad* yellow = |
1332 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1322 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1333 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); | 1323 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); |
1334 | 1324 |
1335 SharedQuadState* blank_state = CreateTestSharedQuadState( | 1325 SharedQuadState* blank_state = CreateTestSharedQuadState( |
1336 content_to_target_transform, viewport_rect, child_pass.get()); | 1326 quad_to_target_transform, viewport_rect, child_pass.get()); |
1337 | 1327 |
1338 SolidColorDrawQuad* white = | 1328 SolidColorDrawQuad* white = |
1339 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1329 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1340 white->SetNew( | 1330 white->SetNew( |
1341 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); | 1331 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); |
1342 | 1332 |
1343 SharedQuadState* pass_shared_state = | 1333 SharedQuadState* pass_shared_state = |
1344 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); | 1334 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); |
1345 | 1335 |
1346 FilterOperations filters; | 1336 FilterOperations filters; |
(...skipping 29 matching lines...) Expand all Loading... |
1376 RenderPassId root_pass_id(1, 1); | 1366 RenderPassId root_pass_id(1, 1); |
1377 scoped_ptr<RenderPass> root_pass = | 1367 scoped_ptr<RenderPass> root_pass = |
1378 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1368 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1379 | 1369 |
1380 RenderPassId child_pass_id(2, 2); | 1370 RenderPassId child_pass_id(2, 2); |
1381 gfx::Rect pass_rect(this->device_viewport_size_); | 1371 gfx::Rect pass_rect(this->device_viewport_size_); |
1382 gfx::Transform transform_to_root; | 1372 gfx::Transform transform_to_root; |
1383 scoped_ptr<RenderPass> child_pass = | 1373 scoped_ptr<RenderPass> child_pass = |
1384 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1374 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1385 | 1375 |
1386 gfx::Transform content_to_target_transform; | 1376 gfx::Transform quad_to_target_transform; |
1387 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1377 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1388 content_to_target_transform, viewport_rect, child_pass.get()); | 1378 quad_to_target_transform, viewport_rect, child_pass.get()); |
1389 shared_state->opacity = 0.5f; | 1379 shared_state->opacity = 0.5f; |
1390 | 1380 |
1391 gfx::Rect blue_rect(0, | 1381 gfx::Rect blue_rect(0, |
1392 0, | 1382 0, |
1393 this->device_viewport_size_.width(), | 1383 this->device_viewport_size_.width(), |
1394 this->device_viewport_size_.height() / 2); | 1384 this->device_viewport_size_.height() / 2); |
1395 SolidColorDrawQuad* blue = | 1385 SolidColorDrawQuad* blue = |
1396 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1386 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1397 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1387 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1398 gfx::Rect yellow_rect(0, | 1388 gfx::Rect yellow_rect(0, |
1399 this->device_viewport_size_.height() / 2, | 1389 this->device_viewport_size_.height() / 2, |
1400 this->device_viewport_size_.width(), | 1390 this->device_viewport_size_.width(), |
1401 this->device_viewport_size_.height() / 2); | 1391 this->device_viewport_size_.height() / 2); |
1402 SolidColorDrawQuad* yellow = | 1392 SolidColorDrawQuad* yellow = |
1403 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1393 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1404 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); | 1394 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); |
1405 | 1395 |
1406 SharedQuadState* blank_state = CreateTestSharedQuadState( | 1396 SharedQuadState* blank_state = CreateTestSharedQuadState( |
1407 content_to_target_transform, viewport_rect, child_pass.get()); | 1397 quad_to_target_transform, viewport_rect, child_pass.get()); |
1408 | 1398 |
1409 SolidColorDrawQuad* white = | 1399 SolidColorDrawQuad* white = |
1410 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1400 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1411 white->SetNew( | 1401 white->SetNew( |
1412 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); | 1402 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); |
1413 | 1403 |
1414 SharedQuadState* pass_shared_state = | 1404 SharedQuadState* pass_shared_state = |
1415 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); | 1405 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); |
1416 | 1406 |
1417 FilterOperations filters; | 1407 FilterOperations filters; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1449 RenderPassId root_pass_id(1, 1); | 1439 RenderPassId root_pass_id(1, 1); |
1450 scoped_ptr<RenderPass> root_pass = | 1440 scoped_ptr<RenderPass> root_pass = |
1451 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1441 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1452 | 1442 |
1453 RenderPassId child_pass_id(2, 2); | 1443 RenderPassId child_pass_id(2, 2); |
1454 gfx::Rect pass_rect(this->device_viewport_size_); | 1444 gfx::Rect pass_rect(this->device_viewport_size_); |
1455 gfx::Transform transform_to_root; | 1445 gfx::Transform transform_to_root; |
1456 scoped_ptr<RenderPass> child_pass = | 1446 scoped_ptr<RenderPass> child_pass = |
1457 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1447 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1458 | 1448 |
1459 gfx::Transform content_to_target_transform; | 1449 gfx::Transform quad_to_target_transform; |
1460 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1450 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1461 content_to_target_transform, viewport_rect, child_pass.get()); | 1451 quad_to_target_transform, viewport_rect, child_pass.get()); |
1462 shared_state->opacity = 0.5f; | 1452 shared_state->opacity = 0.5f; |
1463 | 1453 |
1464 gfx::Rect blue_rect(0, | 1454 gfx::Rect blue_rect(0, |
1465 0, | 1455 0, |
1466 this->device_viewport_size_.width(), | 1456 this->device_viewport_size_.width(), |
1467 this->device_viewport_size_.height() / 2); | 1457 this->device_viewport_size_.height() / 2); |
1468 SolidColorDrawQuad* blue = | 1458 SolidColorDrawQuad* blue = |
1469 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1459 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1470 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1460 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1471 gfx::Rect yellow_rect(0, | 1461 gfx::Rect yellow_rect(0, |
1472 this->device_viewport_size_.height() / 2, | 1462 this->device_viewport_size_.height() / 2, |
1473 this->device_viewport_size_.width(), | 1463 this->device_viewport_size_.width(), |
1474 this->device_viewport_size_.height() / 2); | 1464 this->device_viewport_size_.height() / 2); |
1475 SolidColorDrawQuad* yellow = | 1465 SolidColorDrawQuad* yellow = |
1476 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1466 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1477 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); | 1467 yellow->SetNew(shared_state, yellow_rect, yellow_rect, SK_ColorYELLOW, false); |
1478 | 1468 |
1479 SharedQuadState* blank_state = CreateTestSharedQuadState( | 1469 SharedQuadState* blank_state = CreateTestSharedQuadState( |
1480 content_to_target_transform, viewport_rect, child_pass.get()); | 1470 quad_to_target_transform, viewport_rect, child_pass.get()); |
1481 | 1471 |
1482 SolidColorDrawQuad* white = | 1472 SolidColorDrawQuad* white = |
1483 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1473 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1484 white->SetNew( | 1474 white->SetNew( |
1485 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); | 1475 blank_state, viewport_rect, viewport_rect, SK_ColorWHITE, false); |
1486 | 1476 |
1487 SharedQuadState* pass_shared_state = | 1477 SharedQuadState* pass_shared_state = |
1488 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); | 1478 CreateTestSharedQuadState(gfx::Transform(), pass_rect, root_pass.get()); |
1489 | 1479 |
1490 SkScalar matrix[20]; | 1480 SkScalar matrix[20]; |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1545 RenderPassId root_pass_id(1, 1); | 1535 RenderPassId root_pass_id(1, 1); |
1546 scoped_ptr<RenderPass> root_pass = | 1536 scoped_ptr<RenderPass> root_pass = |
1547 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1537 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1548 | 1538 |
1549 RenderPassId child_pass_id(2, 2); | 1539 RenderPassId child_pass_id(2, 2); |
1550 gfx::Rect pass_rect(this->device_viewport_size_); | 1540 gfx::Rect pass_rect(this->device_viewport_size_); |
1551 gfx::Transform transform_to_root; | 1541 gfx::Transform transform_to_root; |
1552 scoped_ptr<RenderPass> child_pass = | 1542 scoped_ptr<RenderPass> child_pass = |
1553 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1543 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1554 | 1544 |
1555 gfx::Transform content_to_target_transform; | 1545 gfx::Transform quad_to_target_transform; |
1556 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1546 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1557 content_to_target_transform, viewport_rect, child_pass.get()); | 1547 quad_to_target_transform, viewport_rect, child_pass.get()); |
1558 | 1548 |
1559 gfx::Rect blue_rect(0, | 1549 gfx::Rect blue_rect(0, |
1560 0, | 1550 0, |
1561 this->device_viewport_size_.width(), | 1551 this->device_viewport_size_.width(), |
1562 this->device_viewport_size_.height() / 2); | 1552 this->device_viewport_size_.height() / 2); |
1563 SolidColorDrawQuad* blue = | 1553 SolidColorDrawQuad* blue = |
1564 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1554 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1565 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1555 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1566 gfx::Rect yellow_rect(0, | 1556 gfx::Rect yellow_rect(0, |
1567 this->device_viewport_size_.height() / 2, | 1557 this->device_viewport_size_.height() / 2, |
(...skipping 26 matching lines...) Expand all Loading... |
1594 RenderPassId root_pass_id(1, 1); | 1584 RenderPassId root_pass_id(1, 1); |
1595 scoped_ptr<RenderPass> root_pass = | 1585 scoped_ptr<RenderPass> root_pass = |
1596 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1586 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1597 | 1587 |
1598 RenderPassId child_pass_id(2, 2); | 1588 RenderPassId child_pass_id(2, 2); |
1599 gfx::Rect pass_rect(this->device_viewport_size_); | 1589 gfx::Rect pass_rect(this->device_viewport_size_); |
1600 gfx::Transform transform_to_root; | 1590 gfx::Transform transform_to_root; |
1601 scoped_ptr<RenderPass> child_pass = | 1591 scoped_ptr<RenderPass> child_pass = |
1602 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1592 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1603 | 1593 |
1604 gfx::Transform content_to_target_transform; | 1594 gfx::Transform quad_to_target_transform; |
1605 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1595 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1606 content_to_target_transform, viewport_rect, child_pass.get()); | 1596 quad_to_target_transform, viewport_rect, child_pass.get()); |
1607 | 1597 |
1608 gfx::Rect blue_rect(0, | 1598 gfx::Rect blue_rect(0, |
1609 0, | 1599 0, |
1610 this->device_viewport_size_.width(), | 1600 this->device_viewport_size_.width(), |
1611 this->device_viewport_size_.height() / 2); | 1601 this->device_viewport_size_.height() / 2); |
1612 SolidColorDrawQuad* blue = | 1602 SolidColorDrawQuad* blue = |
1613 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1603 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1614 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1604 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1615 gfx::Rect yellow_rect(0, | 1605 gfx::Rect yellow_rect(0, |
1616 this->device_viewport_size_.height() / 2, | 1606 this->device_viewport_size_.height() / 2, |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1751 : public RendererPixelTest<RendererType> { | 1741 : public RendererPixelTest<RendererType> { |
1752 protected: | 1742 protected: |
1753 void SetUpRenderPassList() { | 1743 void SetUpRenderPassList() { |
1754 gfx::Rect device_viewport_rect(this->device_viewport_size_); | 1744 gfx::Rect device_viewport_rect(this->device_viewport_size_); |
1755 | 1745 |
1756 RenderPassId root_id(1, 1); | 1746 RenderPassId root_id(1, 1); |
1757 scoped_ptr<RenderPass> root_pass = | 1747 scoped_ptr<RenderPass> root_pass = |
1758 CreateTestRootRenderPass(root_id, device_viewport_rect); | 1748 CreateTestRootRenderPass(root_id, device_viewport_rect); |
1759 root_pass->has_transparent_background = false; | 1749 root_pass->has_transparent_background = false; |
1760 | 1750 |
1761 gfx::Transform identity_content_to_target_transform; | 1751 gfx::Transform identity_quad_to_target_transform; |
1762 | 1752 |
1763 RenderPassId filter_pass_id(2, 1); | 1753 RenderPassId filter_pass_id(2, 1); |
1764 gfx::Transform transform_to_root; | 1754 gfx::Transform transform_to_root; |
1765 scoped_ptr<RenderPass> filter_pass = | 1755 scoped_ptr<RenderPass> filter_pass = CreateTestRenderPass( |
1766 CreateTestRenderPass(filter_pass_id, | 1756 filter_pass_id, filter_pass_layer_rect_, transform_to_root); |
1767 filter_pass_content_rect_, | |
1768 transform_to_root); | |
1769 | 1757 |
1770 // A non-visible quad in the filtering render pass. | 1758 // A non-visible quad in the filtering render pass. |
1771 { | 1759 { |
1772 SharedQuadState* shared_state = | 1760 SharedQuadState* shared_state = |
1773 CreateTestSharedQuadState(identity_content_to_target_transform, | 1761 CreateTestSharedQuadState(identity_quad_to_target_transform, |
1774 filter_pass_content_rect_, | 1762 filter_pass_layer_rect_, filter_pass.get()); |
1775 filter_pass.get()); | |
1776 SolidColorDrawQuad* color_quad = | 1763 SolidColorDrawQuad* color_quad = |
1777 filter_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1764 filter_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1778 color_quad->SetNew(shared_state, | 1765 color_quad->SetNew(shared_state, filter_pass_layer_rect_, |
1779 filter_pass_content_rect_, | 1766 filter_pass_layer_rect_, SK_ColorTRANSPARENT, false); |
1780 filter_pass_content_rect_, | |
1781 SK_ColorTRANSPARENT, | |
1782 false); | |
1783 } | 1767 } |
1784 | 1768 |
1785 { | 1769 { |
1786 SharedQuadState* shared_state = | 1770 SharedQuadState* shared_state = |
1787 CreateTestSharedQuadState(filter_pass_to_target_transform_, | 1771 CreateTestSharedQuadState(filter_pass_to_target_transform_, |
1788 filter_pass_content_rect_, | 1772 filter_pass_layer_rect_, filter_pass.get()); |
1789 filter_pass.get()); | |
1790 RenderPassDrawQuad* filter_pass_quad = | 1773 RenderPassDrawQuad* filter_pass_quad = |
1791 root_pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); | 1774 root_pass->CreateAndAppendDrawQuad<RenderPassDrawQuad>(); |
1792 filter_pass_quad->SetNew(shared_state, | 1775 filter_pass_quad->SetNew(shared_state, filter_pass_layer_rect_, |
1793 filter_pass_content_rect_, | 1776 filter_pass_layer_rect_, filter_pass_id, |
1794 filter_pass_content_rect_, | |
1795 filter_pass_id, | |
1796 0, // mask_resource_id | 1777 0, // mask_resource_id |
1797 gfx::Vector2dF(), // mask_uv_scale | 1778 gfx::Vector2dF(), // mask_uv_scale |
1798 gfx::Size(), // mask_texture_size | 1779 gfx::Size(), // mask_texture_size |
1799 FilterOperations(), // filters | 1780 FilterOperations(), // filters |
1800 gfx::Vector2dF(), // filters_scale | 1781 gfx::Vector2dF(), // filters_scale |
1801 this->background_filters_); | 1782 this->background_filters_); |
1802 } | 1783 } |
1803 | 1784 |
1804 const int kColumnWidth = device_viewport_rect.width() / 3; | 1785 const int kColumnWidth = device_viewport_rect.width() / 3; |
1805 | 1786 |
1806 gfx::Rect left_rect = gfx::Rect(0, 0, kColumnWidth, 20); | 1787 gfx::Rect left_rect = gfx::Rect(0, 0, kColumnWidth, 20); |
1807 for (int i = 0; left_rect.y() < device_viewport_rect.height(); ++i) { | 1788 for (int i = 0; left_rect.y() < device_viewport_rect.height(); ++i) { |
1808 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1789 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1809 identity_content_to_target_transform, left_rect, root_pass.get()); | 1790 identity_quad_to_target_transform, left_rect, root_pass.get()); |
1810 SolidColorDrawQuad* color_quad = | 1791 SolidColorDrawQuad* color_quad = |
1811 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1792 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1812 color_quad->SetNew( | 1793 color_quad->SetNew( |
1813 shared_state, left_rect, left_rect, SK_ColorGREEN, false); | 1794 shared_state, left_rect, left_rect, SK_ColorGREEN, false); |
1814 left_rect += gfx::Vector2d(0, left_rect.height() + 1); | 1795 left_rect += gfx::Vector2d(0, left_rect.height() + 1); |
1815 } | 1796 } |
1816 | 1797 |
1817 gfx::Rect middle_rect = gfx::Rect(kColumnWidth+1, 0, kColumnWidth, 20); | 1798 gfx::Rect middle_rect = gfx::Rect(kColumnWidth+1, 0, kColumnWidth, 20); |
1818 for (int i = 0; middle_rect.y() < device_viewport_rect.height(); ++i) { | 1799 for (int i = 0; middle_rect.y() < device_viewport_rect.height(); ++i) { |
1819 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1800 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1820 identity_content_to_target_transform, middle_rect, root_pass.get()); | 1801 identity_quad_to_target_transform, middle_rect, root_pass.get()); |
1821 SolidColorDrawQuad* color_quad = | 1802 SolidColorDrawQuad* color_quad = |
1822 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1803 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1823 color_quad->SetNew( | 1804 color_quad->SetNew( |
1824 shared_state, middle_rect, middle_rect, SK_ColorRED, false); | 1805 shared_state, middle_rect, middle_rect, SK_ColorRED, false); |
1825 middle_rect += gfx::Vector2d(0, middle_rect.height() + 1); | 1806 middle_rect += gfx::Vector2d(0, middle_rect.height() + 1); |
1826 } | 1807 } |
1827 | 1808 |
1828 gfx::Rect right_rect = gfx::Rect((kColumnWidth+1)*2, 0, kColumnWidth, 20); | 1809 gfx::Rect right_rect = gfx::Rect((kColumnWidth+1)*2, 0, kColumnWidth, 20); |
1829 for (int i = 0; right_rect.y() < device_viewport_rect.height(); ++i) { | 1810 for (int i = 0; right_rect.y() < device_viewport_rect.height(); ++i) { |
1830 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1811 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1831 identity_content_to_target_transform, right_rect, root_pass.get()); | 1812 identity_quad_to_target_transform, right_rect, root_pass.get()); |
1832 SolidColorDrawQuad* color_quad = | 1813 SolidColorDrawQuad* color_quad = |
1833 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1814 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1834 color_quad->SetNew( | 1815 color_quad->SetNew( |
1835 shared_state, right_rect, right_rect, SK_ColorBLUE, false); | 1816 shared_state, right_rect, right_rect, SK_ColorBLUE, false); |
1836 right_rect += gfx::Vector2d(0, right_rect.height() + 1); | 1817 right_rect += gfx::Vector2d(0, right_rect.height() + 1); |
1837 } | 1818 } |
1838 | 1819 |
1839 SharedQuadState* shared_state = | 1820 SharedQuadState* shared_state = |
1840 CreateTestSharedQuadState(identity_content_to_target_transform, | 1821 CreateTestSharedQuadState(identity_quad_to_target_transform, |
1841 device_viewport_rect, | 1822 device_viewport_rect, root_pass.get()); |
1842 root_pass.get()); | |
1843 SolidColorDrawQuad* background_quad = | 1823 SolidColorDrawQuad* background_quad = |
1844 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1824 root_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1845 background_quad->SetNew(shared_state, | 1825 background_quad->SetNew(shared_state, |
1846 device_viewport_rect, | 1826 device_viewport_rect, |
1847 device_viewport_rect, | 1827 device_viewport_rect, |
1848 SK_ColorWHITE, | 1828 SK_ColorWHITE, |
1849 false); | 1829 false); |
1850 | 1830 |
1851 pass_list_.push_back(filter_pass.Pass()); | 1831 pass_list_.push_back(filter_pass.Pass()); |
1852 pass_list_.push_back(root_pass.Pass()); | 1832 pass_list_.push_back(root_pass.Pass()); |
1853 } | 1833 } |
1854 | 1834 |
1855 RenderPassList pass_list_; | 1835 RenderPassList pass_list_; |
1856 FilterOperations background_filters_; | 1836 FilterOperations background_filters_; |
1857 gfx::Transform filter_pass_to_target_transform_; | 1837 gfx::Transform filter_pass_to_target_transform_; |
1858 gfx::Rect filter_pass_content_rect_; | 1838 gfx::Rect filter_pass_layer_rect_; |
1859 }; | 1839 }; |
1860 | 1840 |
1861 typedef ::testing::Types<GLRenderer, SoftwareRenderer> | 1841 typedef ::testing::Types<GLRenderer, SoftwareRenderer> |
1862 BackgroundFilterRendererTypes; | 1842 BackgroundFilterRendererTypes; |
1863 TYPED_TEST_CASE(RendererPixelTestWithBackgroundFilter, | 1843 TYPED_TEST_CASE(RendererPixelTestWithBackgroundFilter, |
1864 BackgroundFilterRendererTypes); | 1844 BackgroundFilterRendererTypes); |
1865 | 1845 |
1866 typedef RendererPixelTestWithBackgroundFilter<GLRenderer> | 1846 typedef RendererPixelTestWithBackgroundFilter<GLRenderer> |
1867 GLRendererPixelTestWithBackgroundFilter; | 1847 GLRendererPixelTestWithBackgroundFilter; |
1868 | 1848 |
1869 // TODO(skaslev): The software renderer does not support filters yet. | 1849 // TODO(skaslev): The software renderer does not support filters yet. |
1870 TEST_F(GLRendererPixelTestWithBackgroundFilter, InvertFilter) { | 1850 TEST_F(GLRendererPixelTestWithBackgroundFilter, InvertFilter) { |
1871 this->background_filters_.Append( | 1851 this->background_filters_.Append( |
1872 FilterOperation::CreateInvertFilter(1.f)); | 1852 FilterOperation::CreateInvertFilter(1.f)); |
1873 | 1853 |
1874 this->filter_pass_content_rect_ = gfx::Rect(this->device_viewport_size_); | 1854 this->filter_pass_layer_rect_ = gfx::Rect(this->device_viewport_size_); |
1875 this->filter_pass_content_rect_.Inset(12, 14, 16, 18); | 1855 this->filter_pass_layer_rect_.Inset(12, 14, 16, 18); |
1876 | 1856 |
1877 this->SetUpRenderPassList(); | 1857 this->SetUpRenderPassList(); |
1878 EXPECT_TRUE(this->RunPixelTest( | 1858 EXPECT_TRUE(this->RunPixelTest( |
1879 &this->pass_list_, | 1859 &this->pass_list_, |
1880 base::FilePath(FILE_PATH_LITERAL("background_filter.png")), | 1860 base::FilePath(FILE_PATH_LITERAL("background_filter.png")), |
1881 ExactPixelComparator(true))); | 1861 ExactPixelComparator(true))); |
1882 } | 1862 } |
1883 | 1863 |
1884 class ExternalStencilPixelTest : public GLRendererPixelTest { | 1864 class ExternalStencilPixelTest : public GLRendererPixelTest { |
1885 protected: | 1865 protected: |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1972 scoped_ptr<RenderPass> root_pass = | 1952 scoped_ptr<RenderPass> root_pass = |
1973 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 1953 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
1974 root_pass->has_transparent_background = false; | 1954 root_pass->has_transparent_background = false; |
1975 | 1955 |
1976 RenderPassId child_pass_id(2, 2); | 1956 RenderPassId child_pass_id(2, 2); |
1977 gfx::Rect pass_rect(this->device_viewport_size_); | 1957 gfx::Rect pass_rect(this->device_viewport_size_); |
1978 gfx::Transform transform_to_root; | 1958 gfx::Transform transform_to_root; |
1979 scoped_ptr<RenderPass> child_pass = | 1959 scoped_ptr<RenderPass> child_pass = |
1980 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 1960 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
1981 | 1961 |
1982 gfx::Transform content_to_target_transform; | 1962 gfx::Transform quad_to_target_transform; |
1983 SharedQuadState* shared_state = CreateTestSharedQuadState( | 1963 SharedQuadState* shared_state = CreateTestSharedQuadState( |
1984 content_to_target_transform, viewport_rect, child_pass.get()); | 1964 quad_to_target_transform, viewport_rect, child_pass.get()); |
1985 | 1965 |
1986 gfx::Rect blue_rect(0, | 1966 gfx::Rect blue_rect(0, |
1987 0, | 1967 0, |
1988 this->device_viewport_size_.width(), | 1968 this->device_viewport_size_.width(), |
1989 this->device_viewport_size_.height()); | 1969 this->device_viewport_size_.height()); |
1990 SolidColorDrawQuad* blue = | 1970 SolidColorDrawQuad* blue = |
1991 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 1971 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
1992 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 1972 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
1993 | 1973 |
1994 SharedQuadState* pass_shared_state = | 1974 SharedQuadState* pass_shared_state = |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2029 ExactPixelComparator(true))); | 2009 ExactPixelComparator(true))); |
2030 } | 2010 } |
2031 | 2011 |
2032 // Software renderer does not support anti-aliased edges. | 2012 // Software renderer does not support anti-aliased edges. |
2033 TEST_F(GLRendererPixelTest, AntiAliasing) { | 2013 TEST_F(GLRendererPixelTest, AntiAliasing) { |
2034 gfx::Rect rect(this->device_viewport_size_); | 2014 gfx::Rect rect(this->device_viewport_size_); |
2035 | 2015 |
2036 RenderPassId id(1, 1); | 2016 RenderPassId id(1, 1); |
2037 scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect); | 2017 scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect); |
2038 | 2018 |
2039 gfx::Transform red_content_to_target_transform; | 2019 gfx::Transform red_quad_to_target_transform; |
2040 red_content_to_target_transform.Rotate(10); | 2020 red_quad_to_target_transform.Rotate(10); |
2041 SharedQuadState* red_shared_state = CreateTestSharedQuadState( | 2021 SharedQuadState* red_shared_state = |
2042 red_content_to_target_transform, rect, pass.get()); | 2022 CreateTestSharedQuadState(red_quad_to_target_transform, rect, pass.get()); |
2043 | 2023 |
2044 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2024 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2045 red->SetNew(red_shared_state, rect, rect, SK_ColorRED, false); | 2025 red->SetNew(red_shared_state, rect, rect, SK_ColorRED, false); |
2046 | 2026 |
2047 gfx::Transform yellow_content_to_target_transform; | 2027 gfx::Transform yellow_quad_to_target_transform; |
2048 yellow_content_to_target_transform.Rotate(5); | 2028 yellow_quad_to_target_transform.Rotate(5); |
2049 SharedQuadState* yellow_shared_state = CreateTestSharedQuadState( | 2029 SharedQuadState* yellow_shared_state = CreateTestSharedQuadState( |
2050 yellow_content_to_target_transform, rect, pass.get()); | 2030 yellow_quad_to_target_transform, rect, pass.get()); |
2051 | 2031 |
2052 SolidColorDrawQuad* yellow = | 2032 SolidColorDrawQuad* yellow = |
2053 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2033 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2054 yellow->SetNew(yellow_shared_state, rect, rect, SK_ColorYELLOW, false); | 2034 yellow->SetNew(yellow_shared_state, rect, rect, SK_ColorYELLOW, false); |
2055 | 2035 |
2056 gfx::Transform blue_content_to_target_transform; | 2036 gfx::Transform blue_quad_to_target_transform; |
2057 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( | 2037 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( |
2058 blue_content_to_target_transform, rect, pass.get()); | 2038 blue_quad_to_target_transform, rect, pass.get()); |
2059 | 2039 |
2060 SolidColorDrawQuad* blue = | 2040 SolidColorDrawQuad* blue = |
2061 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2041 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2062 blue->SetNew(blue_shared_state, rect, rect, SK_ColorBLUE, false); | 2042 blue->SetNew(blue_shared_state, rect, rect, SK_ColorBLUE, false); |
2063 | 2043 |
2064 RenderPassList pass_list; | 2044 RenderPassList pass_list; |
2065 pass_list.push_back(pass.Pass()); | 2045 pass_list.push_back(pass.Pass()); |
2066 | 2046 |
2067 EXPECT_TRUE(this->RunPixelTest( | 2047 EXPECT_TRUE(this->RunPixelTest( |
2068 &pass_list, | 2048 &pass_list, |
2069 base::FilePath(FILE_PATH_LITERAL("anti_aliasing.png")), | 2049 base::FilePath(FILE_PATH_LITERAL("anti_aliasing.png")), |
2070 FuzzyPixelOffByOneComparator(true))); | 2050 FuzzyPixelOffByOneComparator(true))); |
2071 } | 2051 } |
2072 | 2052 |
2073 // This test tests that anti-aliasing works for axis aligned quads. | 2053 // This test tests that anti-aliasing works for axis aligned quads. |
2074 // Anti-aliasing is only supported in the gl renderer. | 2054 // Anti-aliasing is only supported in the gl renderer. |
2075 TEST_F(GLRendererPixelTest, AxisAligned) { | 2055 TEST_F(GLRendererPixelTest, AxisAligned) { |
2076 gfx::Rect rect(this->device_viewport_size_); | 2056 gfx::Rect rect(this->device_viewport_size_); |
2077 | 2057 |
2078 RenderPassId id(1, 1); | 2058 RenderPassId id(1, 1); |
2079 gfx::Transform transform_to_root; | 2059 gfx::Transform transform_to_root; |
2080 scoped_ptr<RenderPass> pass = | 2060 scoped_ptr<RenderPass> pass = |
2081 CreateTestRenderPass(id, rect, transform_to_root); | 2061 CreateTestRenderPass(id, rect, transform_to_root); |
2082 | 2062 |
2083 gfx::Transform red_content_to_target_transform; | 2063 gfx::Transform red_quad_to_target_transform; |
2084 red_content_to_target_transform.Translate(50, 50); | 2064 red_quad_to_target_transform.Translate(50, 50); |
2085 red_content_to_target_transform.Scale( | 2065 red_quad_to_target_transform.Scale(0.5f + 1.0f / (rect.width() * 2.0f), |
2086 0.5f + 1.0f / (rect.width() * 2.0f), | 2066 0.5f + 1.0f / (rect.height() * 2.0f)); |
2087 0.5f + 1.0f / (rect.height() * 2.0f)); | 2067 SharedQuadState* red_shared_state = |
2088 SharedQuadState* red_shared_state = CreateTestSharedQuadState( | 2068 CreateTestSharedQuadState(red_quad_to_target_transform, rect, pass.get()); |
2089 red_content_to_target_transform, rect, pass.get()); | |
2090 | 2069 |
2091 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2070 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2092 red->SetNew(red_shared_state, rect, rect, SK_ColorRED, false); | 2071 red->SetNew(red_shared_state, rect, rect, SK_ColorRED, false); |
2093 | 2072 |
2094 gfx::Transform yellow_content_to_target_transform; | 2073 gfx::Transform yellow_quad_to_target_transform; |
2095 yellow_content_to_target_transform.Translate(25.5f, 25.5f); | 2074 yellow_quad_to_target_transform.Translate(25.5f, 25.5f); |
2096 yellow_content_to_target_transform.Scale(0.5f, 0.5f); | 2075 yellow_quad_to_target_transform.Scale(0.5f, 0.5f); |
2097 SharedQuadState* yellow_shared_state = CreateTestSharedQuadState( | 2076 SharedQuadState* yellow_shared_state = CreateTestSharedQuadState( |
2098 yellow_content_to_target_transform, rect, pass.get()); | 2077 yellow_quad_to_target_transform, rect, pass.get()); |
2099 | 2078 |
2100 SolidColorDrawQuad* yellow = | 2079 SolidColorDrawQuad* yellow = |
2101 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2080 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2102 yellow->SetNew(yellow_shared_state, rect, rect, SK_ColorYELLOW, false); | 2081 yellow->SetNew(yellow_shared_state, rect, rect, SK_ColorYELLOW, false); |
2103 | 2082 |
2104 gfx::Transform blue_content_to_target_transform; | 2083 gfx::Transform blue_quad_to_target_transform; |
2105 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( | 2084 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( |
2106 blue_content_to_target_transform, rect, pass.get()); | 2085 blue_quad_to_target_transform, rect, pass.get()); |
2107 | 2086 |
2108 SolidColorDrawQuad* blue = | 2087 SolidColorDrawQuad* blue = |
2109 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2088 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2110 blue->SetNew(blue_shared_state, rect, rect, SK_ColorBLUE, false); | 2089 blue->SetNew(blue_shared_state, rect, rect, SK_ColorBLUE, false); |
2111 | 2090 |
2112 RenderPassList pass_list; | 2091 RenderPassList pass_list; |
2113 pass_list.push_back(pass.Pass()); | 2092 pass_list.push_back(pass.Pass()); |
2114 | 2093 |
2115 EXPECT_TRUE(this->RunPixelTest( | 2094 EXPECT_TRUE(this->RunPixelTest( |
2116 &pass_list, | 2095 &pass_list, |
2117 base::FilePath(FILE_PATH_LITERAL("axis_aligned.png")), | 2096 base::FilePath(FILE_PATH_LITERAL("axis_aligned.png")), |
2118 ExactPixelComparator(true))); | 2097 ExactPixelComparator(true))); |
2119 } | 2098 } |
2120 | 2099 |
2121 // This test tests that forcing anti-aliasing off works as expected. | 2100 // This test tests that forcing anti-aliasing off works as expected. |
2122 // Anti-aliasing is only supported in the gl renderer. | 2101 // Anti-aliasing is only supported in the gl renderer. |
2123 TEST_F(GLRendererPixelTest, ForceAntiAliasingOff) { | 2102 TEST_F(GLRendererPixelTest, ForceAntiAliasingOff) { |
2124 gfx::Rect rect(this->device_viewport_size_); | 2103 gfx::Rect rect(this->device_viewport_size_); |
2125 | 2104 |
2126 RenderPassId id(1, 1); | 2105 RenderPassId id(1, 1); |
2127 gfx::Transform transform_to_root; | 2106 gfx::Transform transform_to_root; |
2128 scoped_ptr<RenderPass> pass = | 2107 scoped_ptr<RenderPass> pass = |
2129 CreateTestRenderPass(id, rect, transform_to_root); | 2108 CreateTestRenderPass(id, rect, transform_to_root); |
2130 | 2109 |
2131 gfx::Transform hole_content_to_target_transform; | 2110 gfx::Transform hole_quad_to_target_transform; |
2132 hole_content_to_target_transform.Translate(50, 50); | 2111 hole_quad_to_target_transform.Translate(50, 50); |
2133 hole_content_to_target_transform.Scale( | 2112 hole_quad_to_target_transform.Scale(0.5f + 1.0f / (rect.width() * 2.0f), |
2134 0.5f + 1.0f / (rect.width() * 2.0f), | 2113 0.5f + 1.0f / (rect.height() * 2.0f)); |
2135 0.5f + 1.0f / (rect.height() * 2.0f)); | |
2136 SharedQuadState* hole_shared_state = CreateTestSharedQuadState( | 2114 SharedQuadState* hole_shared_state = CreateTestSharedQuadState( |
2137 hole_content_to_target_transform, rect, pass.get()); | 2115 hole_quad_to_target_transform, rect, pass.get()); |
2138 | 2116 |
2139 SolidColorDrawQuad* hole = | 2117 SolidColorDrawQuad* hole = |
2140 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2118 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2141 hole->SetAll( | 2119 hole->SetAll( |
2142 hole_shared_state, rect, rect, rect, false, SK_ColorTRANSPARENT, true); | 2120 hole_shared_state, rect, rect, rect, false, SK_ColorTRANSPARENT, true); |
2143 | 2121 |
2144 gfx::Transform green_content_to_target_transform; | 2122 gfx::Transform green_quad_to_target_transform; |
2145 SharedQuadState* green_shared_state = CreateTestSharedQuadState( | 2123 SharedQuadState* green_shared_state = CreateTestSharedQuadState( |
2146 green_content_to_target_transform, rect, pass.get()); | 2124 green_quad_to_target_transform, rect, pass.get()); |
2147 | 2125 |
2148 SolidColorDrawQuad* green = | 2126 SolidColorDrawQuad* green = |
2149 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2127 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2150 green->SetNew(green_shared_state, rect, rect, SK_ColorGREEN, false); | 2128 green->SetNew(green_shared_state, rect, rect, SK_ColorGREEN, false); |
2151 | 2129 |
2152 RenderPassList pass_list; | 2130 RenderPassList pass_list; |
2153 pass_list.push_back(pass.Pass()); | 2131 pass_list.push_back(pass.Pass()); |
2154 | 2132 |
2155 EXPECT_TRUE(this->RunPixelTest( | 2133 EXPECT_TRUE(this->RunPixelTest( |
2156 &pass_list, | 2134 &pass_list, |
2157 base::FilePath(FILE_PATH_LITERAL("force_anti_aliasing_off.png")), | 2135 base::FilePath(FILE_PATH_LITERAL("force_anti_aliasing_off.png")), |
2158 ExactPixelComparator(false))); | 2136 ExactPixelComparator(false))); |
2159 } | 2137 } |
2160 | 2138 |
2161 TEST_F(GLRendererPixelTest, AntiAliasingPerspective) { | 2139 TEST_F(GLRendererPixelTest, AntiAliasingPerspective) { |
2162 gfx::Rect rect(this->device_viewport_size_); | 2140 gfx::Rect rect(this->device_viewport_size_); |
2163 | 2141 |
2164 scoped_ptr<RenderPass> pass = | 2142 scoped_ptr<RenderPass> pass = |
2165 CreateTestRootRenderPass(RenderPassId(1, 1), rect); | 2143 CreateTestRootRenderPass(RenderPassId(1, 1), rect); |
2166 | 2144 |
2167 gfx::Rect red_rect(0, 0, 180, 500); | 2145 gfx::Rect red_rect(0, 0, 180, 500); |
2168 gfx::Transform red_content_to_target_transform( | 2146 gfx::Transform red_quad_to_target_transform( |
2169 1.0f, 2.4520f, 10.6206f, 19.0f, | 2147 1.0f, 2.4520f, 10.6206f, 19.0f, 0.0f, 0.3528f, 5.9737f, 9.5f, 0.0f, |
2170 0.0f, 0.3528f, 5.9737f, 9.5f, | 2148 -0.2250f, -0.9744f, 0.0f, 0.0f, 0.0225f, 0.0974f, 1.0f); |
2171 0.0f, -0.2250f, -0.9744f, 0.0f, | |
2172 0.0f, 0.0225f, 0.0974f, 1.0f); | |
2173 SharedQuadState* red_shared_state = CreateTestSharedQuadState( | 2149 SharedQuadState* red_shared_state = CreateTestSharedQuadState( |
2174 red_content_to_target_transform, red_rect, pass.get()); | 2150 red_quad_to_target_transform, red_rect, pass.get()); |
2175 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2151 SolidColorDrawQuad* red = pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2176 red->SetNew(red_shared_state, red_rect, red_rect, SK_ColorRED, false); | 2152 red->SetNew(red_shared_state, red_rect, red_rect, SK_ColorRED, false); |
2177 | 2153 |
2178 gfx::Rect green_rect(19, 7, 180, 10); | 2154 gfx::Rect green_rect(19, 7, 180, 10); |
2179 SharedQuadState* green_shared_state = | 2155 SharedQuadState* green_shared_state = |
2180 CreateTestSharedQuadState(gfx::Transform(), green_rect, pass.get()); | 2156 CreateTestSharedQuadState(gfx::Transform(), green_rect, pass.get()); |
2181 SolidColorDrawQuad* green = | 2157 SolidColorDrawQuad* green = |
2182 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2158 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2183 green->SetNew( | 2159 green->SetNew( |
2184 green_shared_state, green_rect, green_rect, SK_ColorGREEN, false); | 2160 green_shared_state, green_rect, green_rect, SK_ColorGREEN, false); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2221 red_paint.setColor(SK_ColorRED); | 2197 red_paint.setColor(SK_ColorRED); |
2222 blue_recording->add_draw_rect_with_paint(blue_rect, red_paint); | 2198 blue_recording->add_draw_rect_with_paint(blue_rect, red_paint); |
2223 SkPaint blue_paint; | 2199 SkPaint blue_paint; |
2224 blue_paint.setColor(SK_ColorBLUE); | 2200 blue_paint.setColor(SK_ColorBLUE); |
2225 blue_recording->add_draw_rect_with_paint(blue_clip_rect, blue_paint); | 2201 blue_recording->add_draw_rect_with_paint(blue_clip_rect, blue_paint); |
2226 blue_recording->Rerecord(); | 2202 blue_recording->Rerecord(); |
2227 | 2203 |
2228 scoped_refptr<FakePicturePileImpl> blue_pile = | 2204 scoped_refptr<FakePicturePileImpl> blue_pile = |
2229 FakePicturePileImpl::CreateFromPile(blue_recording.get(), nullptr); | 2205 FakePicturePileImpl::CreateFromPile(blue_recording.get(), nullptr); |
2230 | 2206 |
2231 gfx::Transform blue_content_to_target_transform; | 2207 gfx::Transform blue_quad_to_target_transform; |
2232 gfx::Vector2d offset(viewport.bottom_right() - blue_rect.bottom_right()); | 2208 gfx::Vector2d offset(viewport.bottom_right() - blue_rect.bottom_right()); |
2233 blue_content_to_target_transform.Translate(offset.x(), offset.y()); | 2209 blue_quad_to_target_transform.Translate(offset.x(), offset.y()); |
2234 gfx::RectF blue_scissor_rect = blue_clip_rect; | 2210 gfx::RectF blue_scissor_rect = blue_clip_rect; |
2235 blue_content_to_target_transform.TransformRect(&blue_scissor_rect); | 2211 blue_quad_to_target_transform.TransformRect(&blue_scissor_rect); |
2236 SharedQuadState* blue_shared_state = | 2212 SharedQuadState* blue_shared_state = CreateTestSharedQuadStateClipped( |
2237 CreateTestSharedQuadStateClipped(blue_content_to_target_transform, | 2213 blue_quad_to_target_transform, blue_rect, |
2238 blue_rect, | 2214 gfx::ToEnclosingRect(blue_scissor_rect), pass.get()); |
2239 gfx::ToEnclosingRect(blue_scissor_rect), | |
2240 pass.get()); | |
2241 | 2215 |
2242 PictureDrawQuad* blue_quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2216 PictureDrawQuad* blue_quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2243 | 2217 |
2244 blue_quad->SetNew(blue_shared_state, | 2218 blue_quad->SetNew(blue_shared_state, |
2245 viewport, // Intentionally bigger than clip. | 2219 viewport, // Intentionally bigger than clip. |
2246 gfx::Rect(), viewport, gfx::RectF(viewport), | 2220 gfx::Rect(), viewport, gfx::RectF(viewport), |
2247 viewport.size(), nearest_neighbor, texture_format, viewport, | 2221 viewport.size(), nearest_neighbor, texture_format, viewport, |
2248 1.f, blue_pile.get()); | 2222 1.f, blue_pile.get()); |
2249 | 2223 |
2250 // One viewport-filling green quad. | 2224 // One viewport-filling green quad. |
2251 scoped_ptr<FakePicturePile> green_recording = | 2225 scoped_ptr<FakePicturePile> green_recording = |
2252 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2226 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2253 SkPaint green_paint; | 2227 SkPaint green_paint; |
2254 green_paint.setColor(SK_ColorGREEN); | 2228 green_paint.setColor(SK_ColorGREEN); |
2255 green_recording->add_draw_rect_with_paint(viewport, green_paint); | 2229 green_recording->add_draw_rect_with_paint(viewport, green_paint); |
2256 green_recording->Rerecord(); | 2230 green_recording->Rerecord(); |
2257 scoped_refptr<FakePicturePileImpl> green_pile = | 2231 scoped_refptr<FakePicturePileImpl> green_pile = |
2258 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); | 2232 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); |
2259 | 2233 |
2260 gfx::Transform green_content_to_target_transform; | 2234 gfx::Transform green_quad_to_target_transform; |
2261 SharedQuadState* green_shared_state = CreateTestSharedQuadState( | 2235 SharedQuadState* green_shared_state = CreateTestSharedQuadState( |
2262 green_content_to_target_transform, viewport, pass.get()); | 2236 green_quad_to_target_transform, viewport, pass.get()); |
2263 | 2237 |
2264 PictureDrawQuad* green_quad = | 2238 PictureDrawQuad* green_quad = |
2265 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2239 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2266 green_quad->SetNew(green_shared_state, viewport, gfx::Rect(), viewport, | 2240 green_quad->SetNew(green_shared_state, viewport, gfx::Rect(), viewport, |
2267 gfx::RectF(0.f, 0.f, 1.f, 1.f), viewport.size(), | 2241 gfx::RectF(0.f, 0.f, 1.f, 1.f), viewport.size(), |
2268 nearest_neighbor, texture_format, viewport, 1.f, | 2242 nearest_neighbor, texture_format, viewport, 1.f, |
2269 green_pile.get()); | 2243 green_pile.get()); |
2270 | 2244 |
2271 RenderPassList pass_list; | 2245 RenderPassList pass_list; |
2272 pass_list.push_back(pass.Pass()); | 2246 pass_list.push_back(pass.Pass()); |
(...skipping 19 matching lines...) Expand all Loading... |
2292 // One viewport-filling 0.5-opacity green quad. | 2266 // One viewport-filling 0.5-opacity green quad. |
2293 scoped_ptr<FakePicturePile> green_recording = | 2267 scoped_ptr<FakePicturePile> green_recording = |
2294 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2268 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2295 SkPaint green_paint; | 2269 SkPaint green_paint; |
2296 green_paint.setColor(SK_ColorGREEN); | 2270 green_paint.setColor(SK_ColorGREEN); |
2297 green_recording->add_draw_rect_with_paint(viewport, green_paint); | 2271 green_recording->add_draw_rect_with_paint(viewport, green_paint); |
2298 green_recording->Rerecord(); | 2272 green_recording->Rerecord(); |
2299 scoped_refptr<FakePicturePileImpl> green_pile = | 2273 scoped_refptr<FakePicturePileImpl> green_pile = |
2300 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); | 2274 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); |
2301 | 2275 |
2302 gfx::Transform green_content_to_target_transform; | 2276 gfx::Transform green_quad_to_target_transform; |
2303 SharedQuadState* green_shared_state = CreateTestSharedQuadState( | 2277 SharedQuadState* green_shared_state = CreateTestSharedQuadState( |
2304 green_content_to_target_transform, viewport, pass.get()); | 2278 green_quad_to_target_transform, viewport, pass.get()); |
2305 green_shared_state->opacity = 0.5f; | 2279 green_shared_state->opacity = 0.5f; |
2306 | 2280 |
2307 PictureDrawQuad* green_quad = | 2281 PictureDrawQuad* green_quad = |
2308 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2282 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2309 green_quad->SetNew(green_shared_state, viewport, gfx::Rect(), viewport, | 2283 green_quad->SetNew(green_shared_state, viewport, gfx::Rect(), viewport, |
2310 gfx::RectF(0, 0, 1, 1), viewport.size(), nearest_neighbor, | 2284 gfx::RectF(0, 0, 1, 1), viewport.size(), nearest_neighbor, |
2311 texture_format, viewport, 1.f, green_pile.get()); | 2285 texture_format, viewport, 1.f, green_pile.get()); |
2312 | 2286 |
2313 // One viewport-filling white quad. | 2287 // One viewport-filling white quad. |
2314 scoped_ptr<FakePicturePile> white_recording = | 2288 scoped_ptr<FakePicturePile> white_recording = |
2315 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2289 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2316 SkPaint white_paint; | 2290 SkPaint white_paint; |
2317 white_paint.setColor(SK_ColorWHITE); | 2291 white_paint.setColor(SK_ColorWHITE); |
2318 white_recording->add_draw_rect_with_paint(viewport, white_paint); | 2292 white_recording->add_draw_rect_with_paint(viewport, white_paint); |
2319 white_recording->Rerecord(); | 2293 white_recording->Rerecord(); |
2320 scoped_refptr<FakePicturePileImpl> white_pile = | 2294 scoped_refptr<FakePicturePileImpl> white_pile = |
2321 FakePicturePileImpl::CreateFromPile(white_recording.get(), nullptr); | 2295 FakePicturePileImpl::CreateFromPile(white_recording.get(), nullptr); |
2322 | 2296 |
2323 gfx::Transform white_content_to_target_transform; | 2297 gfx::Transform white_quad_to_target_transform; |
2324 SharedQuadState* white_shared_state = CreateTestSharedQuadState( | 2298 SharedQuadState* white_shared_state = CreateTestSharedQuadState( |
2325 white_content_to_target_transform, viewport, pass.get()); | 2299 white_quad_to_target_transform, viewport, pass.get()); |
2326 | 2300 |
2327 PictureDrawQuad* white_quad = | 2301 PictureDrawQuad* white_quad = |
2328 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2302 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2329 white_quad->SetNew(white_shared_state, viewport, gfx::Rect(), viewport, | 2303 white_quad->SetNew(white_shared_state, viewport, gfx::Rect(), viewport, |
2330 gfx::RectF(0, 0, 1, 1), viewport.size(), nearest_neighbor, | 2304 gfx::RectF(0, 0, 1, 1), viewport.size(), nearest_neighbor, |
2331 texture_format, viewport, 1.f, white_pile.get()); | 2305 texture_format, viewport, 1.f, white_pile.get()); |
2332 | 2306 |
2333 RenderPassList pass_list; | 2307 RenderPassList pass_list; |
2334 pass_list.push_back(pass.Pass()); | 2308 pass_list.push_back(pass.Pass()); |
2335 | 2309 |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2384 | 2358 |
2385 scoped_ptr<FakePicturePile> recording = | 2359 scoped_ptr<FakePicturePile> recording = |
2386 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2360 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2387 SkPaint paint; | 2361 SkPaint paint; |
2388 paint.setFilterQuality(kLow_SkFilterQuality); | 2362 paint.setFilterQuality(kLow_SkFilterQuality); |
2389 recording->add_draw_bitmap_with_paint(bitmap, gfx::Point(), paint); | 2363 recording->add_draw_bitmap_with_paint(bitmap, gfx::Point(), paint); |
2390 recording->Rerecord(); | 2364 recording->Rerecord(); |
2391 scoped_refptr<FakePicturePileImpl> pile = | 2365 scoped_refptr<FakePicturePileImpl> pile = |
2392 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); | 2366 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); |
2393 | 2367 |
2394 gfx::Transform content_to_target_transform; | 2368 gfx::Transform quad_to_target_transform; |
2395 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2369 SharedQuadState* shared_state = |
2396 content_to_target_transform, viewport, pass.get()); | 2370 CreateTestSharedQuadState(quad_to_target_transform, viewport, pass.get()); |
2397 | 2371 |
2398 PictureDrawQuad* quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2372 PictureDrawQuad* quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2399 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, | 2373 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, |
2400 gfx::RectF(0, 0, 2, 2), viewport.size(), nearest_neighbor, | 2374 gfx::RectF(0, 0, 2, 2), viewport.size(), nearest_neighbor, |
2401 texture_format, viewport, 1.f, pile.get()); | 2375 texture_format, viewport, 1.f, pile.get()); |
2402 | 2376 |
2403 RenderPassList pass_list; | 2377 RenderPassList pass_list; |
2404 pass_list.push_back(pass.Pass()); | 2378 pass_list.push_back(pass.Pass()); |
2405 | 2379 |
2406 this->disable_picture_quad_image_filtering_ = true; | 2380 this->disable_picture_quad_image_filtering_ = true; |
(...skipping 29 matching lines...) Expand all Loading... |
2436 | 2410 |
2437 scoped_ptr<FakePicturePile> recording = | 2411 scoped_ptr<FakePicturePile> recording = |
2438 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2412 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2439 SkPaint paint; | 2413 SkPaint paint; |
2440 paint.setFilterQuality(kLow_SkFilterQuality); | 2414 paint.setFilterQuality(kLow_SkFilterQuality); |
2441 recording->add_draw_bitmap_with_paint(bitmap, gfx::Point(), paint); | 2415 recording->add_draw_bitmap_with_paint(bitmap, gfx::Point(), paint); |
2442 recording->Rerecord(); | 2416 recording->Rerecord(); |
2443 scoped_refptr<FakePicturePileImpl> pile = | 2417 scoped_refptr<FakePicturePileImpl> pile = |
2444 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); | 2418 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); |
2445 | 2419 |
2446 gfx::Transform content_to_target_transform; | 2420 gfx::Transform quad_to_target_transform; |
2447 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2421 SharedQuadState* shared_state = |
2448 content_to_target_transform, viewport, pass.get()); | 2422 CreateTestSharedQuadState(quad_to_target_transform, viewport, pass.get()); |
2449 | 2423 |
2450 PictureDrawQuad* quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2424 PictureDrawQuad* quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2451 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, | 2425 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, |
2452 gfx::RectF(0, 0, 2, 2), viewport.size(), nearest_neighbor, | 2426 gfx::RectF(0, 0, 2, 2), viewport.size(), nearest_neighbor, |
2453 texture_format, viewport, 1.f, pile.get()); | 2427 texture_format, viewport, 1.f, pile.get()); |
2454 | 2428 |
2455 RenderPassList pass_list; | 2429 RenderPassList pass_list; |
2456 pass_list.push_back(pass.Pass()); | 2430 pass_list.push_back(pass.Pass()); |
2457 | 2431 |
2458 EXPECT_TRUE(this->RunPixelTest( | 2432 EXPECT_TRUE(this->RunPixelTest( |
(...skipping 28 matching lines...) Expand all Loading... |
2487 SkAutoLockPixels lock(bitmap); | 2461 SkAutoLockPixels lock(bitmap); |
2488 this->resource_provider_->CopyToResource( | 2462 this->resource_provider_->CopyToResource( |
2489 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); | 2463 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); |
2490 } | 2464 } |
2491 | 2465 |
2492 RenderPassId id(1, 1); | 2466 RenderPassId id(1, 1); |
2493 gfx::Transform transform_to_root; | 2467 gfx::Transform transform_to_root; |
2494 scoped_ptr<RenderPass> pass = | 2468 scoped_ptr<RenderPass> pass = |
2495 CreateTestRenderPass(id, viewport, transform_to_root); | 2469 CreateTestRenderPass(id, viewport, transform_to_root); |
2496 | 2470 |
2497 gfx::Transform content_to_target_transform; | 2471 gfx::Transform quad_to_target_transform; |
2498 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2472 SharedQuadState* shared_state = |
2499 content_to_target_transform, viewport, pass.get()); | 2473 CreateTestSharedQuadState(quad_to_target_transform, viewport, pass.get()); |
2500 | 2474 |
2501 TileDrawQuad* quad = pass->CreateAndAppendDrawQuad<TileDrawQuad>(); | 2475 TileDrawQuad* quad = pass->CreateAndAppendDrawQuad<TileDrawQuad>(); |
2502 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, | 2476 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, |
2503 gfx::Rect(tile_size), tile_size, swizzle_contents, | 2477 gfx::Rect(tile_size), tile_size, swizzle_contents, |
2504 nearest_neighbor); | 2478 nearest_neighbor); |
2505 | 2479 |
2506 RenderPassList pass_list; | 2480 RenderPassList pass_list; |
2507 pass_list.push_back(pass.Pass()); | 2481 pass_list.push_back(pass.Pass()); |
2508 | 2482 |
2509 EXPECT_TRUE(this->RunPixelTest( | 2483 EXPECT_TRUE(this->RunPixelTest( |
(...skipping 28 matching lines...) Expand all Loading... |
2538 SkAutoLockPixels lock(bitmap); | 2512 SkAutoLockPixels lock(bitmap); |
2539 this->resource_provider_->CopyToResource( | 2513 this->resource_provider_->CopyToResource( |
2540 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); | 2514 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); |
2541 } | 2515 } |
2542 | 2516 |
2543 RenderPassId id(1, 1); | 2517 RenderPassId id(1, 1); |
2544 gfx::Transform transform_to_root; | 2518 gfx::Transform transform_to_root; |
2545 scoped_ptr<RenderPass> pass = | 2519 scoped_ptr<RenderPass> pass = |
2546 CreateTestRenderPass(id, viewport, transform_to_root); | 2520 CreateTestRenderPass(id, viewport, transform_to_root); |
2547 | 2521 |
2548 gfx::Transform content_to_target_transform; | 2522 gfx::Transform quad_to_target_transform; |
2549 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2523 SharedQuadState* shared_state = |
2550 content_to_target_transform, viewport, pass.get()); | 2524 CreateTestSharedQuadState(quad_to_target_transform, viewport, pass.get()); |
2551 | 2525 |
2552 float vertex_opacity[4] = {1.0f, 1.0f, 1.0f, 1.0f}; | 2526 float vertex_opacity[4] = {1.0f, 1.0f, 1.0f, 1.0f}; |
2553 TextureDrawQuad* quad = pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); | 2527 TextureDrawQuad* quad = pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); |
2554 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, false, | 2528 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, false, |
2555 gfx::PointF(0, 0), gfx::PointF(1, 1), SK_ColorBLACK, | 2529 gfx::PointF(0, 0), gfx::PointF(1, 1), SK_ColorBLACK, |
2556 vertex_opacity, false, nearest_neighbor); | 2530 vertex_opacity, false, nearest_neighbor); |
2557 | 2531 |
2558 RenderPassList pass_list; | 2532 RenderPassList pass_list; |
2559 pass_list.push_back(pass.Pass()); | 2533 pass_list.push_back(pass.Pass()); |
2560 | 2534 |
(...skipping 29 matching lines...) Expand all Loading... |
2590 SkAutoLockPixels lock(bitmap); | 2564 SkAutoLockPixels lock(bitmap); |
2591 this->resource_provider_->CopyToResource( | 2565 this->resource_provider_->CopyToResource( |
2592 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); | 2566 resource, static_cast<uint8_t*>(bitmap.getPixels()), tile_size); |
2593 } | 2567 } |
2594 | 2568 |
2595 RenderPassId id(1, 1); | 2569 RenderPassId id(1, 1); |
2596 gfx::Transform transform_to_root; | 2570 gfx::Transform transform_to_root; |
2597 scoped_ptr<RenderPass> pass = | 2571 scoped_ptr<RenderPass> pass = |
2598 CreateTestRenderPass(id, viewport, transform_to_root); | 2572 CreateTestRenderPass(id, viewport, transform_to_root); |
2599 | 2573 |
2600 gfx::Transform content_to_target_transform; | 2574 gfx::Transform quad_to_target_transform; |
2601 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2575 SharedQuadState* shared_state = |
2602 content_to_target_transform, viewport, pass.get()); | 2576 CreateTestSharedQuadState(quad_to_target_transform, viewport, pass.get()); |
2603 | 2577 |
2604 float vertex_opacity[4] = {1.0f, 1.0f, 1.0f, 1.0f}; | 2578 float vertex_opacity[4] = {1.0f, 1.0f, 1.0f, 1.0f}; |
2605 TextureDrawQuad* quad = pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); | 2579 TextureDrawQuad* quad = pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); |
2606 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, false, | 2580 quad->SetNew(shared_state, viewport, gfx::Rect(), viewport, resource, false, |
2607 gfx::PointF(0, 0), gfx::PointF(1, 1), SK_ColorBLACK, | 2581 gfx::PointF(0, 0), gfx::PointF(1, 1), SK_ColorBLACK, |
2608 vertex_opacity, false, nearest_neighbor); | 2582 vertex_opacity, false, nearest_neighbor); |
2609 | 2583 |
2610 RenderPassList pass_list; | 2584 RenderPassList pass_list; |
2611 pass_list.push_back(pass.Pass()); | 2585 pass_list.push_back(pass.Pass()); |
2612 | 2586 |
(...skipping 14 matching lines...) Expand all Loading... |
2627 | 2601 |
2628 RenderPassId id(1, 1); | 2602 RenderPassId id(1, 1); |
2629 gfx::Transform transform_to_root; | 2603 gfx::Transform transform_to_root; |
2630 scoped_ptr<RenderPass> pass = | 2604 scoped_ptr<RenderPass> pass = |
2631 CreateTestRenderPass(id, viewport, transform_to_root); | 2605 CreateTestRenderPass(id, viewport, transform_to_root); |
2632 | 2606 |
2633 // As scaling up the blue checkerboards will cause sampling on the GPU, | 2607 // As scaling up the blue checkerboards will cause sampling on the GPU, |
2634 // a few extra "cleanup rects" need to be added to clobber the blending | 2608 // a few extra "cleanup rects" need to be added to clobber the blending |
2635 // to make the output image more clean. This will also test subrects | 2609 // to make the output image more clean. This will also test subrects |
2636 // of the layer. | 2610 // of the layer. |
2637 gfx::Transform green_content_to_target_transform; | 2611 gfx::Transform green_quad_to_target_transform; |
2638 gfx::Rect green_rect1(gfx::Point(80, 0), gfx::Size(20, 100)); | 2612 gfx::Rect green_rect1(gfx::Point(80, 0), gfx::Size(20, 100)); |
2639 gfx::Rect green_rect2(gfx::Point(0, 80), gfx::Size(100, 20)); | 2613 gfx::Rect green_rect2(gfx::Point(0, 80), gfx::Size(100, 20)); |
2640 | 2614 |
2641 scoped_ptr<FakePicturePile> green_recording = | 2615 scoped_ptr<FakePicturePile> green_recording = |
2642 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); | 2616 FakePicturePile::CreateFilledPile(pile_tile_size, viewport.size()); |
2643 | 2617 |
2644 SkPaint red_paint; | 2618 SkPaint red_paint; |
2645 red_paint.setColor(SK_ColorRED); | 2619 red_paint.setColor(SK_ColorRED); |
2646 green_recording->add_draw_rect_with_paint(viewport, red_paint); | 2620 green_recording->add_draw_rect_with_paint(viewport, red_paint); |
2647 SkPaint green_paint; | 2621 SkPaint green_paint; |
2648 green_paint.setColor(SK_ColorGREEN); | 2622 green_paint.setColor(SK_ColorGREEN); |
2649 green_recording->add_draw_rect_with_paint(green_rect1, green_paint); | 2623 green_recording->add_draw_rect_with_paint(green_rect1, green_paint); |
2650 green_recording->add_draw_rect_with_paint(green_rect2, green_paint); | 2624 green_recording->add_draw_rect_with_paint(green_rect2, green_paint); |
2651 green_recording->Rerecord(); | 2625 green_recording->Rerecord(); |
2652 scoped_refptr<FakePicturePileImpl> green_pile = | 2626 scoped_refptr<FakePicturePileImpl> green_pile = |
2653 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); | 2627 FakePicturePileImpl::CreateFromPile(green_recording.get(), nullptr); |
2654 | 2628 |
2655 SharedQuadState* top_right_green_shared_quad_state = | 2629 SharedQuadState* top_right_green_shared_quad_state = |
2656 CreateTestSharedQuadState( | 2630 CreateTestSharedQuadState(green_quad_to_target_transform, viewport, |
2657 green_content_to_target_transform, viewport, pass.get()); | 2631 pass.get()); |
2658 | 2632 |
2659 PictureDrawQuad* green_quad1 = | 2633 PictureDrawQuad* green_quad1 = |
2660 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2634 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2661 green_quad1->SetNew(top_right_green_shared_quad_state, green_rect1, | 2635 green_quad1->SetNew(top_right_green_shared_quad_state, green_rect1, |
2662 gfx::Rect(), green_rect1, gfx::RectF(green_rect1.size()), | 2636 gfx::Rect(), green_rect1, gfx::RectF(green_rect1.size()), |
2663 green_rect1.size(), nearest_neighbor, texture_format, | 2637 green_rect1.size(), nearest_neighbor, texture_format, |
2664 green_rect1, 1.f, green_pile.get()); | 2638 green_rect1, 1.f, green_pile.get()); |
2665 | 2639 |
2666 PictureDrawQuad* green_quad2 = | 2640 PictureDrawQuad* green_quad2 = |
2667 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2641 pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2668 green_quad2->SetNew(top_right_green_shared_quad_state, green_rect2, | 2642 green_quad2->SetNew(top_right_green_shared_quad_state, green_rect2, |
2669 gfx::Rect(), green_rect2, gfx::RectF(green_rect2.size()), | 2643 gfx::Rect(), green_rect2, gfx::RectF(green_rect2.size()), |
2670 green_rect2.size(), nearest_neighbor, texture_format, | 2644 green_rect2.size(), nearest_neighbor, texture_format, |
2671 green_rect2, 1.f, green_pile.get()); | 2645 green_rect2, 1.f, green_pile.get()); |
2672 | 2646 |
2673 // Add a green clipped checkerboard in the bottom right to help test | 2647 // Add a green clipped checkerboard in the bottom right to help test |
2674 // interleaving picture quad content and solid color content. | 2648 // interleaving picture quad content and solid color content. |
2675 gfx::Rect bottom_right_rect( | 2649 gfx::Rect bottom_right_rect( |
2676 gfx::Point(viewport.width() / 2, viewport.height() / 2), | 2650 gfx::Point(viewport.width() / 2, viewport.height() / 2), |
2677 gfx::Size(viewport.width() / 2, viewport.height() / 2)); | 2651 gfx::Size(viewport.width() / 2, viewport.height() / 2)); |
2678 SharedQuadState* bottom_right_green_shared_state = | 2652 SharedQuadState* bottom_right_green_shared_state = |
2679 CreateTestSharedQuadStateClipped(green_content_to_target_transform, | 2653 CreateTestSharedQuadStateClipped(green_quad_to_target_transform, viewport, |
2680 viewport, | 2654 bottom_right_rect, pass.get()); |
2681 bottom_right_rect, | |
2682 pass.get()); | |
2683 SolidColorDrawQuad* bottom_right_color_quad = | 2655 SolidColorDrawQuad* bottom_right_color_quad = |
2684 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2656 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2685 bottom_right_color_quad->SetNew(bottom_right_green_shared_state, | 2657 bottom_right_color_quad->SetNew(bottom_right_green_shared_state, |
2686 viewport, | 2658 viewport, |
2687 viewport, | 2659 viewport, |
2688 SK_ColorGREEN, | 2660 SK_ColorGREEN, |
2689 false); | 2661 false); |
2690 | 2662 |
2691 // Add two blue checkerboards taking up the bottom left and top right, | 2663 // Add two blue checkerboards taking up the bottom left and top right, |
2692 // but use content scales as content rects to make this happen. | 2664 // but use content scales as content rects to make this happen. |
(...skipping 29 matching lines...) Expand all Loading... |
2722 scoped_refptr<FakePicturePileImpl> pile = | 2694 scoped_refptr<FakePicturePileImpl> pile = |
2723 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); | 2695 FakePicturePileImpl::CreateFromPile(recording.get(), nullptr); |
2724 | 2696 |
2725 gfx::Rect content_rect( | 2697 gfx::Rect content_rect( |
2726 gfx::ScaleToEnclosingRect(layer_rect, contents_scale)); | 2698 gfx::ScaleToEnclosingRect(layer_rect, contents_scale)); |
2727 gfx::Rect content_union_rect( | 2699 gfx::Rect content_union_rect( |
2728 gfx::ToEnclosingRect(gfx::ScaleRect(union_layer_rect, contents_scale))); | 2700 gfx::ToEnclosingRect(gfx::ScaleRect(union_layer_rect, contents_scale))); |
2729 | 2701 |
2730 // At a scale of 4x the rectangles with a width of 2.5 will take up 10 pixels, | 2702 // At a scale of 4x the rectangles with a width of 2.5 will take up 10 pixels, |
2731 // so scale an additional 10x to make them 100x100. | 2703 // so scale an additional 10x to make them 100x100. |
2732 gfx::Transform content_to_target_transform; | 2704 gfx::Transform quad_to_target_transform; |
2733 content_to_target_transform.Scale(10.0, 10.0); | 2705 quad_to_target_transform.Scale(10.0, 10.0); |
2734 gfx::Rect quad_content_rect(gfx::Size(20, 20)); | 2706 gfx::Rect quad_content_rect(gfx::Size(20, 20)); |
2735 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( | 2707 SharedQuadState* blue_shared_state = CreateTestSharedQuadState( |
2736 content_to_target_transform, quad_content_rect, pass.get()); | 2708 quad_to_target_transform, quad_content_rect, pass.get()); |
2737 | 2709 |
2738 PictureDrawQuad* blue_quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); | 2710 PictureDrawQuad* blue_quad = pass->CreateAndAppendDrawQuad<PictureDrawQuad>(); |
2739 blue_quad->SetNew(blue_shared_state, quad_content_rect, gfx::Rect(), | 2711 blue_quad->SetNew(blue_shared_state, quad_content_rect, gfx::Rect(), |
2740 quad_content_rect, gfx::RectF(quad_content_rect), | 2712 quad_content_rect, gfx::RectF(quad_content_rect), |
2741 content_union_rect.size(), nearest_neighbor, texture_format, | 2713 content_union_rect.size(), nearest_neighbor, texture_format, |
2742 content_union_rect, contents_scale, pile.get()); | 2714 content_union_rect, contents_scale, pile.get()); |
2743 | 2715 |
2744 // Fill left half of viewport with green. | 2716 // Fill left half of viewport with green. |
2745 gfx::Transform half_green_content_to_target_transform; | 2717 gfx::Transform half_green_quad_to_target_transform; |
2746 gfx::Rect half_green_rect(gfx::Size(viewport.width() / 2, viewport.height())); | 2718 gfx::Rect half_green_rect(gfx::Size(viewport.width() / 2, viewport.height())); |
2747 SharedQuadState* half_green_shared_state = CreateTestSharedQuadState( | 2719 SharedQuadState* half_green_shared_state = CreateTestSharedQuadState( |
2748 half_green_content_to_target_transform, half_green_rect, pass.get()); | 2720 half_green_quad_to_target_transform, half_green_rect, pass.get()); |
2749 SolidColorDrawQuad* half_color_quad = | 2721 SolidColorDrawQuad* half_color_quad = |
2750 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2722 pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2751 half_color_quad->SetNew(half_green_shared_state, | 2723 half_color_quad->SetNew(half_green_shared_state, |
2752 half_green_rect, | 2724 half_green_rect, |
2753 half_green_rect, | 2725 half_green_rect, |
2754 SK_ColorGREEN, | 2726 SK_ColorGREEN, |
2755 false); | 2727 false); |
2756 | 2728 |
2757 RenderPassList pass_list; | 2729 RenderPassList pass_list; |
2758 pass_list.push_back(pass.Pass()); | 2730 pass_list.push_back(pass.Pass()); |
(...skipping 14 matching lines...) Expand all Loading... |
2773 RenderPassId root_pass_id(1, 1); | 2745 RenderPassId root_pass_id(1, 1); |
2774 scoped_ptr<RenderPass> root_pass = | 2746 scoped_ptr<RenderPass> root_pass = |
2775 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 2747 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
2776 | 2748 |
2777 RenderPassId child_pass_id(2, 2); | 2749 RenderPassId child_pass_id(2, 2); |
2778 gfx::Rect pass_rect(this->device_viewport_size_); | 2750 gfx::Rect pass_rect(this->device_viewport_size_); |
2779 gfx::Transform transform_to_root; | 2751 gfx::Transform transform_to_root; |
2780 scoped_ptr<RenderPass> child_pass = | 2752 scoped_ptr<RenderPass> child_pass = |
2781 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 2753 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
2782 | 2754 |
2783 gfx::Transform content_to_target_transform; | 2755 gfx::Transform quad_to_target_transform; |
2784 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2756 SharedQuadState* shared_state = CreateTestSharedQuadState( |
2785 content_to_target_transform, viewport_rect, child_pass.get()); | 2757 quad_to_target_transform, viewport_rect, child_pass.get()); |
2786 | 2758 |
2787 gfx::Rect blue_rect(0, | 2759 gfx::Rect blue_rect(0, |
2788 0, | 2760 0, |
2789 this->device_viewport_size_.width(), | 2761 this->device_viewport_size_.width(), |
2790 this->device_viewport_size_.height() / 2); | 2762 this->device_viewport_size_.height() / 2); |
2791 SolidColorDrawQuad* blue = | 2763 SolidColorDrawQuad* blue = |
2792 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2764 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2793 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 2765 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
2794 gfx::Rect yellow_rect(0, | 2766 gfx::Rect yellow_rect(0, |
2795 this->device_viewport_size_.height() / 2, | 2767 this->device_viewport_size_.height() / 2, |
(...skipping 25 matching lines...) Expand all Loading... |
2821 RenderPassId root_pass_id(1, 1); | 2793 RenderPassId root_pass_id(1, 1); |
2822 scoped_ptr<RenderPass> root_pass = | 2794 scoped_ptr<RenderPass> root_pass = |
2823 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 2795 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
2824 | 2796 |
2825 RenderPassId child_pass_id(2, 2); | 2797 RenderPassId child_pass_id(2, 2); |
2826 gfx::Rect pass_rect(this->device_viewport_size_); | 2798 gfx::Rect pass_rect(this->device_viewport_size_); |
2827 gfx::Transform transform_to_root; | 2799 gfx::Transform transform_to_root; |
2828 scoped_ptr<RenderPass> child_pass = | 2800 scoped_ptr<RenderPass> child_pass = |
2829 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 2801 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
2830 | 2802 |
2831 gfx::Transform content_to_target_transform; | 2803 gfx::Transform quad_to_target_transform; |
2832 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2804 SharedQuadState* shared_state = CreateTestSharedQuadState( |
2833 content_to_target_transform, viewport_rect, child_pass.get()); | 2805 quad_to_target_transform, viewport_rect, child_pass.get()); |
2834 | 2806 |
2835 gfx::Rect blue_rect(0, | 2807 gfx::Rect blue_rect(0, |
2836 0, | 2808 0, |
2837 this->device_viewport_size_.width(), | 2809 this->device_viewport_size_.width(), |
2838 this->device_viewport_size_.height() / 2); | 2810 this->device_viewport_size_.height() / 2); |
2839 SolidColorDrawQuad* blue = | 2811 SolidColorDrawQuad* blue = |
2840 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2812 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2841 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 2813 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
2842 gfx::Rect yellow_rect(0, | 2814 gfx::Rect yellow_rect(0, |
2843 this->device_viewport_size_.height() / 2, | 2815 this->device_viewport_size_.height() / 2, |
(...skipping 26 matching lines...) Expand all Loading... |
2870 RenderPassId root_pass_id(1, 1); | 2842 RenderPassId root_pass_id(1, 1); |
2871 scoped_ptr<RenderPass> root_pass = | 2843 scoped_ptr<RenderPass> root_pass = |
2872 CreateTestRootRenderPass(root_pass_id, viewport_rect); | 2844 CreateTestRootRenderPass(root_pass_id, viewport_rect); |
2873 | 2845 |
2874 RenderPassId child_pass_id(2, 2); | 2846 RenderPassId child_pass_id(2, 2); |
2875 gfx::Rect pass_rect(this->device_viewport_size_); | 2847 gfx::Rect pass_rect(this->device_viewport_size_); |
2876 gfx::Transform transform_to_root; | 2848 gfx::Transform transform_to_root; |
2877 scoped_ptr<RenderPass> child_pass = | 2849 scoped_ptr<RenderPass> child_pass = |
2878 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); | 2850 CreateTestRenderPass(child_pass_id, pass_rect, transform_to_root); |
2879 | 2851 |
2880 gfx::Transform content_to_target_transform; | 2852 gfx::Transform quad_to_target_transform; |
2881 SharedQuadState* shared_state = CreateTestSharedQuadState( | 2853 SharedQuadState* shared_state = CreateTestSharedQuadState( |
2882 content_to_target_transform, viewport_rect, child_pass.get()); | 2854 quad_to_target_transform, viewport_rect, child_pass.get()); |
2883 | 2855 |
2884 // Draw a green quad full-size with a blue quad in the lower-right corner. | 2856 // Draw a green quad full-size with a blue quad in the lower-right corner. |
2885 gfx::Rect blue_rect(this->device_viewport_size_.width() * 3 / 4, | 2857 gfx::Rect blue_rect(this->device_viewport_size_.width() * 3 / 4, |
2886 this->device_viewport_size_.height() * 3 / 4, | 2858 this->device_viewport_size_.height() * 3 / 4, |
2887 this->device_viewport_size_.width() * 3 / 4, | 2859 this->device_viewport_size_.width() * 3 / 4, |
2888 this->device_viewport_size_.height() * 3 / 4); | 2860 this->device_viewport_size_.height() * 3 / 4); |
2889 SolidColorDrawQuad* blue = | 2861 SolidColorDrawQuad* blue = |
2890 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 2862 child_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
2891 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); | 2863 blue->SetNew(shared_state, blue_rect, blue_rect, SK_ColorBLUE, false); |
2892 gfx::Rect green_rect(0, | 2864 gfx::Rect green_rect(0, |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3071 ? FILE_PATH_LITERAL("four_blue_green_checkers.png") | 3043 ? FILE_PATH_LITERAL("four_blue_green_checkers.png") |
3072 : FILE_PATH_LITERAL("checkers_big.png"); | 3044 : FILE_PATH_LITERAL("checkers_big.png"); |
3073 EXPECT_TRUE(this->RunPixelTest(&pass_list, base::FilePath(path), | 3045 EXPECT_TRUE(this->RunPixelTest(&pass_list, base::FilePath(path), |
3074 ExactPixelComparator(true))); | 3046 ExactPixelComparator(true))); |
3075 } | 3047 } |
3076 | 3048 |
3077 #endif // !defined(OS_ANDROID) | 3049 #endif // !defined(OS_ANDROID) |
3078 | 3050 |
3079 } // namespace | 3051 } // namespace |
3080 } // namespace cc | 3052 } // namespace cc |
OLD | NEW |