| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "cc/trees/layer_tree_host_impl.h" | 5 #include "cc/trees/layer_tree_host_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <limits> | 8 #include <limits> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <set> | 10 #include <set> |
| (...skipping 2089 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2100 use_msaa_ ? settings_.gpu_rasterization_msaa_sample_count : 0; | 2100 use_msaa_ ? settings_.gpu_rasterization_msaa_sample_count : 0; |
| 2101 | 2101 |
| 2102 *tile_task_worker_pool = GpuTileTaskWorkerPool::Create( | 2102 *tile_task_worker_pool = GpuTileTaskWorkerPool::Create( |
| 2103 task_runner, task_graph_runner, context_provider, | 2103 task_runner, task_graph_runner, context_provider, |
| 2104 resource_provider_.get(), settings_.use_distance_field_text, | 2104 resource_provider_.get(), settings_.use_distance_field_text, |
| 2105 msaa_sample_count); | 2105 msaa_sample_count); |
| 2106 return; | 2106 return; |
| 2107 } | 2107 } |
| 2108 | 2108 |
| 2109 if (GetRendererCapabilities().using_image) { | 2109 if (GetRendererCapabilities().using_image) { |
| 2110 unsigned image_target = settings_.use_image_texture_target; | 2110 unsigned map_image_target = settings_.map_image_texture_target; |
| 2111 DCHECK_IMPLIES( | 2111 DCHECK_IMPLIES( |
| 2112 image_target == GL_TEXTURE_RECTANGLE_ARB, | 2112 map_image_target == GL_TEXTURE_RECTANGLE_ARB, |
| 2113 context_provider->ContextCapabilities().gpu.texture_rectangle); | 2113 context_provider->ContextCapabilities().gpu.texture_rectangle); |
| 2114 DCHECK_IMPLIES( | 2114 DCHECK_IMPLIES( |
| 2115 image_target == GL_TEXTURE_EXTERNAL_OES, | 2115 map_image_target == GL_TEXTURE_EXTERNAL_OES, |
| 2116 context_provider->ContextCapabilities().gpu.egl_image_external); |
| 2117 unsigned persistent_map_image_target = |
| 2118 settings_.persistent_map_image_texture_target; |
| 2119 DCHECK_IMPLIES( |
| 2120 persistent_map_image_target == GL_TEXTURE_RECTANGLE_ARB, |
| 2121 context_provider->ContextCapabilities().gpu.texture_rectangle); |
| 2122 DCHECK_IMPLIES( |
| 2123 persistent_map_image_target == GL_TEXTURE_EXTERNAL_OES, |
| 2116 context_provider->ContextCapabilities().gpu.egl_image_external); | 2124 context_provider->ContextCapabilities().gpu.egl_image_external); |
| 2117 | 2125 |
| 2118 if (settings_.use_zero_copy || IsSynchronousSingleThreaded()) { | 2126 if (settings_.use_zero_copy || IsSynchronousSingleThreaded()) { |
| 2127 // TODO(danakj): ZeroCopy doesn't support partial updates. Use |
| 2128 // persistent_map_image_target when it does. crbug.com/487387 |
| 2119 *resource_pool = | 2129 *resource_pool = |
| 2120 ResourcePool::Create(resource_provider_.get(), image_target); | 2130 ResourcePool::Create(resource_provider_.get(), map_image_target); |
| 2121 | 2131 |
| 2122 *tile_task_worker_pool = ZeroCopyTileTaskWorkerPool::Create( | 2132 *tile_task_worker_pool = ZeroCopyTileTaskWorkerPool::Create( |
| 2123 task_runner, task_graph_runner, resource_provider_.get()); | 2133 task_runner, task_graph_runner, resource_provider_.get()); |
| 2124 return; | 2134 return; |
| 2125 } | 2135 } |
| 2126 | 2136 |
| 2127 if (settings_.use_one_copy) { | 2137 if (settings_.use_one_copy) { |
| 2128 // We need to create a staging resource pool when using copy rasterizer. | 2138 // We need to create a staging resource pool when using copy rasterizer. |
| 2139 // TODO(danakj): OneCopy doesn't support partial updates. Use |
| 2140 // persistent_map_image_target when it does. crbug.com/487387 |
| 2129 *staging_resource_pool = | 2141 *staging_resource_pool = |
| 2130 ResourcePool::Create(resource_provider_.get(), image_target); | 2142 ResourcePool::Create(resource_provider_.get(), map_image_target); |
| 2131 *resource_pool = | 2143 *resource_pool = |
| 2132 ResourcePool::Create(resource_provider_.get(), GL_TEXTURE_2D); | 2144 ResourcePool::Create(resource_provider_.get(), GL_TEXTURE_2D); |
| 2133 | 2145 |
| 2134 *tile_task_worker_pool = OneCopyTileTaskWorkerPool::Create( | 2146 *tile_task_worker_pool = OneCopyTileTaskWorkerPool::Create( |
| 2135 task_runner, task_graph_runner, context_provider, | 2147 task_runner, task_graph_runner, context_provider, |
| 2136 resource_provider_.get(), staging_resource_pool_.get()); | 2148 resource_provider_.get(), staging_resource_pool_.get()); |
| 2137 return; | 2149 return; |
| 2138 } | 2150 } |
| 2139 } | 2151 } |
| 2140 | 2152 |
| (...skipping 1293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3434 new_target.SetToMin(layer_impl->MaxScrollOffset()); | 3446 new_target.SetToMin(layer_impl->MaxScrollOffset()); |
| 3435 | 3447 |
| 3436 curve->UpdateTarget( | 3448 curve->UpdateTarget( |
| 3437 animation->TrimTimeToCurrentIteration(CurrentBeginFrameArgs().frame_time) | 3449 animation->TrimTimeToCurrentIteration(CurrentBeginFrameArgs().frame_time) |
| 3438 .InSecondsF(), | 3450 .InSecondsF(), |
| 3439 new_target); | 3451 new_target); |
| 3440 | 3452 |
| 3441 return true; | 3453 return true; |
| 3442 } | 3454 } |
| 3443 } // namespace cc | 3455 } // namespace cc |
| OLD | NEW |