31 Commits

Author SHA1 Message Date
Chris Craik
e5b50197e8 Support for stencil clipping in layers
bug:22480459

Change-Id: Ic9e8652379524ccc46d8722ce49f9190b08a2abc
2016-01-05 10:18:35 -08:00
Chris Craik
5430ab220b Avoid unneeded rect params
Change-Id: I2d8dcf6b09fdc554a403ac74763bf856b5f5d9fa
2015-12-10 16:29:01 -08:00
Chris Craik
8d2cf943d9 Add region-tracking to OffscreenBuffers
Change-Id: I024c7219c080b9a89888517f5a89d49dfe8065ba
2015-11-02 17:34:06 -08:00
Chris Craik
b565df13a9 Initial commit of new Canvas operation recording / replay
Done:
- drawRect, drawBitmap, drawColor, drawPaint, drawRenderNode, drawRegion
- Recording with new DisplayList format
- batching & reordering
- Stateless op reorder
- Stateless op rendering
- Frame lifecycle (clear, geterror, cleanup)

Not done:
- SaveLayer (clipped and unclipped)
- HW layers
- Complex clipping
- Ripple projection
- Z reordering
- Z shadows
- onDefer prefetching (text + task kickoff)
- round rect clip
- linear allocation for std collections
- AssetAtlas support

Change-Id: Iaf98c1a3aeab5fa47cc8f9c6d964420abc0e7691
2015-10-14 16:10:40 -07:00
Chris Craik
12efe649d3 Move ortho matrix out of glop
It's fbo-global, so don't bother stashing/restoring it repeatedly.

Change-Id: Icb32e3eda5d2086aaae07140f8ff40e038dad5fe
2015-09-28 15:52:14 -07:00
Chris Craik
6c2c62c1ed Remove unnecessary glop color storage
Change-Id: I68817449d2e0d593dccb7e9be8c8ca45b7ab2fc2
2015-09-21 16:16:22 -07:00
Chris Craik
b9ce116dac Switch several enums to enum classes
Change-Id: I00ecd0b61657196b51704f70ca31a9d1c1ac254e
2015-08-21 23:05:44 +00:00
Chris Craik
7c85c54499 Remove Matrix4::load(Matrix4&)
bug:22320446

Change-Id: Id6d1cc9b4aea828b0cdf622ad672064d72671f8d
2015-08-19 15:10:25 -07:00
Chris Craik
b1f990de40 Fix roundrect clipping / blending ordering
bug:21803918

Also, don't consider rr clipped ops opaque, and put stage
checking behind a debug flag.

Change-Id: I9304ae571337a7cf835524682d1a590a21d30fa4
2015-06-12 13:20:37 -07:00
Chris Craik
53e51e4aa9 Handle shader matrix correctly when ignoring canvas transform
bug:20063841

Restores old SkShader matrix behavior from before the Glop refactor.

Many drawing operations draw without sending the canvas transform to
the GL shader. In such cases, we need to adapt the matrix sent to the
SkShader logic to invert the canvas transform that's built into
the mesh.

Change-Id: I42b6f59df36ce46436322b95bf9ad2140795ee58
2015-06-02 16:28:39 -07:00
Chris Craik
2507c34d91 Cleanup properties
bug:19967854

Separate properties from Caches, into static, RenderThread-only class.

Also rewrites the means for java to set properties to correctly handle
threading, and adds an override for profile bars so that SysUi doesn't clutter
the screen with them.

Change-Id: I6e21a96065f52b9ecc49d1a126244804ba106fa9
2015-05-05 10:36:09 -07:00
Chris Craik
828407356d Delete pre-glop path
bug:19014311

Change-Id: I06376b6f625455892d8eafe2727b78025a64c4bf
2015-04-03 13:01:18 -07:00
Chris Craik
48f650cb24 Track down unsupported texture target
bug:19641517

Change-Id: Idc2e413abef5bb1438ffb3f52efb001504d3e89f
2015-03-10 14:02:06 -07:00
Chris Craik
edacf22ca1 Merge "Glop based composeLayerRegion/Rect" 2015-03-10 16:29:14 +00:00
Chris Craik
182952f5ee Glop based composeLayerRegion/Rect
Change-Id: I69440cabca84948e8aaead9479d616ebc2496517
2015-03-09 18:06:32 -07:00
Chris Craik
eb911c2b0e Rewrite glop texture asserts
bug:19641517

Also switch Glop VertexAttribFlags to use int for group of flags.

Change-Id: Ib7b1934197a62206a55baa6ab484ac59f5bec816
2015-03-09 13:36:35 -07:00
Chris Craik
8820fd1d82 Patch cleanup, reenable Patch Glops
bug:19597454

Change-Id: If12b95e83588b81a553210cd8c2437c6c771073a
2015-03-04 15:32:47 -08:00
Chris Craik
0556d90253 Glop DrawPatch support
Change-Id: Icaa78bdb2cf52c1fc2194ec4016634967d17fb6a
2015-03-03 09:54:14 -08:00
Chris Craik
a6b52198b9 Glop drawBitmaps, drawPatches
Change-Id: I3f1cd3f47f97d2e0c9b9d153732e26ee0b1c58c2
2015-03-03 08:58:14 -08:00
Chris Craik
26bf34200e Glop TextureLayer support
Change-Id: I348a926bd4a2f47be9fdbe74058c0aa2f8dc6276
2015-02-27 10:50:12 -08:00
Chris Craik
ef2507439c Glop mesh reorg, support for drawBitmapMesh
Change-Id: Iaf5550bdd93da93e59a5b838234ab5612e067387
2015-02-26 10:56:07 -08:00
Chris Craik
14100ac9f8 Glop support for custom textured UVs, simplify drawBitmap(src,dst)
Front load the scaling-to-support-shaders to record time.

Change-Id: I861c82d9d16d3c5e063cf87230127eed0b3f9b54
2015-02-25 10:18:46 -08:00
Chris Craik
f27133df2d Glop layer mesh rendering
Change-Id: I2d902819d5d77f496b67d4d25a298782903e410d
2015-02-19 18:06:05 -08:00
Chris Craik
2bb8f5606d Glop text shadows, clearLayerRegions, and rectangleList
Change-Id: I83b36d1ee5d8f05f41acf244639019f9b8da79cd
2015-02-17 17:46:39 -08:00
Chris Craik
922d3a7f6f Glop SkiaShader support
Change-Id: I894a0b62701bd02367ab970813e4c332147351a2
2015-02-17 15:45:46 -08:00
Chris Craik
30036092b4 Glop path texture support
Change-Id: I505eb05991ca4c9b2e01e49988b8f962fad51462
2015-02-12 16:16:57 -08:00
Chris Craik
0519c810a5 Glop Bitmap and RoundRect clipping support
Change-Id: I4577546a5d2e5f084cc03f39a89db9231b8111ee
2015-02-12 12:30:59 -08:00
Chris Craik
08fa43fdeb Fix Glop vertex alpha blending
Need to force blending if vertices have alpha attribute

Change-Id: I821792db6b613b4d0243cf9c7a045cba014acdc1
2015-02-09 19:08:02 -08:00
Chris Craik
2ab95d780b Glop support for indexed quads
bug:19014311
Change-Id: If35a873421b41cc4508b0d8ac1b4d900c9bb3717
2015-02-09 11:04:31 -08:00
Chris Craik
117bdbcfa3 Glop ColorFilter & VertexBuffer support, initial enable
Enables Glop rendering for supported Rects and VertexBuffers
Also removes unused Query object

Change-Id: Ibe227bc362685a153159f75077664f0947764e06
2015-02-06 13:42:25 -08:00
Chris Craik
031888744e GlopBuilder, and test app refactor
Change-Id: I2cd299ccf178007fd5f83bab6c3448f03aec7843
2015-02-04 15:57:59 -08:00