Descriptioncc: Refactor WorkerPoolTaskClient::AcquireBufferForRaster
With the introduction of GPU rasterization, we no longer rasterize to a bitmap. We rasterize directly to a texture-backed SkCanvas. This patch refactors AcquireBufferForRaster into AcquireCanvasForRaster to unify the API used by software and gpu rasterization.
It also allows us to cache the gpu canvas with the resource so that we do not need to re-create it whenever a tile needs to be repainted. Creating a new gpu canvas is expensive on command-buffer - both on client and service side. The client side adds a flush every time an FBO is created or destroyed. The service side checks for FBO completeness. This patch eliminates the setup/destroy cost of gpu canvas.
BUG=334492
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=250924
Patch Set 1 #Patch Set 2 : rebase origin/master #Patch Set 3 : implement acquire/release/map/unmap #
Total comments: 8
Patch Set 4 : addressed comments #Patch Set 5 : rebase #Patch Set 6 : updated unittests #
Total comments: 3
Patch Set 7 : rebase #Patch Set 8 : added comments for the new API #Patch Set 9 : fixed cc_perftests compile error #
Messages
Total messages: 11 (0 generated)
|