summaryrefslogtreecommitdiffstats
path: root/libs/hwui/Program.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix various hw-accelerated line/point bugsChet Haase2011-04-271-1/+1
| | | | | | | | | | | All accelerated lines are now rendered as quads. Hairlines used to be rendered as GL_LINES, but these lines don't render the same as our non-accelerated lines, so we're using quads for everything. Also, fixed a bug in the way that we were offsetting quads (and not offseting points) to ensure that our lines/points actuall start on the same pixels as Skia's. Change-Id: I51b923cc08a9858444c430ba07bc8aa0c83cbe6a
* Correctly release the OpenGL Canvas on EGL error.Romain Guy2010-12-071-0/+8
| | | | Change-Id: Ib31fd8445f7ce5f7aa7e0205de0e7db80d024fc2
* Optimize FBO drawing with regions.Romain Guy2010-11-021-3/+3
| | | | | | | | | This optimization is currently disabled until Launcher is modified to take advantage of it. The optimization can be enabled by turning on RENDER_LAYERS_AS_REGIONS in the OpenGLRenderer.h file. Change-Id: I2fdf59d0f4dc690a3d7f712173ab8db3848b27b1
* Optimize GLSL shaders.Romain Guy2010-10-111-4/+4
| | | | Change-Id: I9a5e01bced63d8da0c61330a543a2b805388a59d
* Moved all the rendering code to the new shader generator.Romain Guy2010-07-291-142/+23
| | | | | | | | | | | The generator supports features that are not yet implement in the renderer: color matrix, lighting, porterduff color blending and composite shaders. This change also adds support for repeated/mirrored non-power of 2 bitmap shaders. Change-Id: I903a11a070c0eb9cc8850a60ef305751e5b47234
* Generate shaders to cover all possible cases.Romain Guy2010-07-271-13/+15
| | | | | | | | | | With this change, all the vertex and fragment shaders used by the GL renderer are now generated based on a program description supplied by the caller. This allows the renderer to generate a large number of shaders without having to write all the possible combinations by hand. The generated shaders are stored in a program cache. Change-Id: If54d286e77ae021c724d42090da476df12a18ebb
* Add text rendering.Romain Guy2010-07-211-0/+6
| | | | Change-Id: Ibe5a9fa844d531b31b55e43de403a98d49f659b9
* Add support for linear gradients.Romain Guy2010-07-191-0/+11
| | | | Change-Id: Id15329da065045b3f06fdaed615f33cd57608496
* Add program for linear gradient.Romain Guy2010-07-161-0/+39
| | | | | | | | This change adds a new DrawLinearGradientProgram class to enable the drawing of linear gradients. Two new vertex and fragment shaders are introduced, based on DrawTextureProgram's shaders. Change-Id: I885afc076bb6cef8cd3962ae21a086fa6a03bf96
* Correctly support pre-multiplied alpha, optimizations, more stuff.Romain Guy2010-07-121-3/+25
| | | | | | | | | | | | | | Add support for the following drawing functions: - drawBitmap(int[]...) - drawPaint() Optimizes shader state changes by enabling/disabling attribute arrays only when needed. Adds quick rejects when drawing trivial shapes to avoid unnecessary OpenGL operations. Change-Id: Ic2c6c2ed1523d08a63a8c95601a1ec40b6c7fbc9
* Optimize shader binding changes.Romain Guy2010-07-121-1/+17
| | | | | | | This change also cleans up the internal API a little bit by using mat4 everywhere instead of float[16] (for the ortho matrix for instance.) Change-Id: I35924c7dc17bad17f30307118d5ed437c2ed37e0
* Remove math from the vertex shader.Romain Guy2010-07-091-12/+13
| | | | Change-Id: I02847a60a8734bf8b3d29ec12e76297795095e38
* Reduced the complexity of layers composition.Romain Guy2010-06-271-0/+156
This change also refactors the code base a bit by moving classes out of OpenGLRenderer into separate headers/implementations. This makes the code more manageable. This change also adds documentation for implementation methods. The undocumented methods are simply Skia's Canvas methods. Change-Id: I54c68b443580a0129251dddc1a7ac95813d5289e