scroggo@google.com
58be682c77
Share code in various SkGPipeCanvas::drawBitmap_ calls.
...
Also implement SkGPipeCanvas::drawBitmapMatrix, and
create a GM to make sure it works properly.
Use a flag instead of writing a bool for determining whether
drawBitmap_ has a paint and whether drawBitmapRect has a source
rectangle.
BUG=
TEST=drawbitmapmatrix GM
Review URL: https://codereview.appspot.com/6450053
git-svn-id: http://skia.googlecode.com/svn/trunk@4828 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 14:40:01 +00:00
scroggo@google.com
3cb969f27d
In SkGPipe, only serialize SkTypefaces in cross process mode.
...
Also make SkGPipeController ref the recording canvas to ensure that
objects used by SkGPipeCanvas (e.g. SharedHeap and fTypefaceSet, which
hold references to objects to which pointers are written to the stream)
survive to be played back even if SkGPipeWriter.endRecording() is called.
BUG=
TEST=TypefaceGM
Review URL: https://codereview.appspot.com/6447055
git-svn-id: http://skia.googlecode.com/svn/trunk@4817 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 20:39:19 +00:00
rileya@google.com
d7cc651b8d
Move GPU gradients into src/effects/gradients.
...
Review URL: https://codereview.appspot.com/6453055
git-svn-id: http://skia.googlecode.com/svn/trunk@4805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 14:00:39 +00:00
rileya@google.com
589708bf7c
Split SkGradientShader into separate files for each gradient subclass.
...
Review URL: https://codereview.appspot.com/6447049
git-svn-id: http://skia.googlecode.com/svn/trunk@4792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:04:23 +00:00
bsalomon@google.com
1c31f63323
Remove texture/mask setters on GrPaint
...
Review URL: http://codereview.appspot.com/6446052/
git-svn-id: http://skia.googlecode.com/svn/trunk@4790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:39:06 +00:00
chudy@google.com
ea5488b965
GL Widget Alpha
...
Review URL: https://codereview.appspot.com/6422060
git-svn-id: http://skia.googlecode.com/svn/trunk@4789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:38:22 +00:00
keyar@chromium.org
451bb9f801
Changed to a class based method in passing around the rendering method for render_pictures.
...
This is based on a comment for https://codereview.appspot.com/6427061/
Review URL: https://codereview.appspot.com/6405080
git-svn-id: http://skia.googlecode.com/svn/trunk@4786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 17:27:57 +00:00
bsalomon@google.com
dbbc4e2da9
Add GL uniform manager
...
Review URL: http://codereview.appspot.com/6423066/
git-svn-id: http://skia.googlecode.com/svn/trunk@4758 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:48:39 +00:00
borenet@google.com
de9ac1446c
Fix Android build for new toolchain
...
The new toolchain (r8b) does not automatically include
the necessary directories
(http://code.google.com/p/android/issues/detail?id=35279 ).
Add them manually until this is fixed.
Review URL: https://codereview.appspot.com/6419076
git-svn-id: http://skia.googlecode.com/svn/trunk@4749 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 15:17:03 +00:00
scroggo@google.com
dd39488997
Avoid a loop in writeString and writePad by zeroing padding first.
...
Also add a benchmark to time the new improved writeString. Before
my change the bench took ~1.23ms and afterwards it takes ~.95ms.
Add some testing to ensure that writePad works properly.
TEST=Writer32Test, WriterBench
Review URL: https://codereview.appspot.com/6438045
git-svn-id: http://skia.googlecode.com/svn/trunk@4742 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:47:55 +00:00
bungeman@google.com
bbe5013141
Split SkGlyph into its own header.
...
https://codereview.appspot.com/6434049/
git-svn-id: http://skia.googlecode.com/svn/trunk@4741 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:33:21 +00:00
bungeman@google.com
0eec2d0486
Remove SkSfntUtils, as it is not longer used.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4735 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 17:50:25 +00:00
reed@google.com
ca0062ee5e
add SkPaint::getPosTextPath(), with gm to test it
...
Review URL: https://codereview.appspot.com/6427055
git-svn-id: http://skia.googlecode.com/svn/trunk@4684 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:20:32 +00:00
chudy@google.com
d3058f5fd8
Quick bug fix that was rendering debugger unusable.
...
Review URL: https://codereview.appspot.com/6422050
git-svn-id: http://skia.googlecode.com/svn/trunk@4668 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:41:27 +00:00
twiz@google.com
5807116946
This CL implements the Ganesh path for the SkTable_ColorFilter color transformation.
...
A new texture stage dedicated to color transforms has been added, along with the new custom stage implementing the LUT.
Review URL: https://codereview.appspot.com/6351081
git-svn-id: http://skia.googlecode.com/svn/trunk@4663 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:41:50 +00:00
junov@chromium.org
77eec248cb
Refactoring SkDeferredCanvas to use SkGPipe.
...
Keeping the refactor hidden behind a config macro for now.
TEST=covered by existing skia gm tests
BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6405054
git-svn-id: http://skia.googlecode.com/svn/trunk@4656 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 17:54:45 +00:00
borenet@google.com
7ef392940d
Enable Compile Option to Build Android Executables
...
Since we can't debug APKs on 4.1, we sometimes need to
build Skia the old way for Android. This CL enables
a switch to do so.
Review URL: https://codereview.appspot.com/6408053
git-svn-id: http://skia.googlecode.com/svn/trunk@4653 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 14:59:54 +00:00
tomhudson@google.com
2f68e7684b
Move texture domains onto a GrCustomStage, off of GrSamplerState.
...
This will require gyp changes to roll into Chrome.
http://codereview.appspot.com/6405050/
git-svn-id: http://skia.googlecode.com/svn/trunk@4641 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 18:43:21 +00:00
keyar@chromium.org
a2333d9703
Added pipe as a rendering option for render_pictures.
...
I will add tiling as a rendering option and then figure out a way to not have the code duplicated between render_pictures and bench_pictures.
Review URL: https://codereview.appspot.com/6392066
git-svn-id: http://skia.googlecode.com/svn/trunk@4626 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:29:16 +00:00
scroggo@google.com
50ccb0a738
Add a skia method to perform an atomic add.
...
Complements sk_atomic_inc for when you want to increase by more than one.
This time, use the correct atomic add function on Windows.
Reviewed at https://codereview.appspot.com/6399050/
Review URL: https://codereview.appspot.com/6407048
git-svn-id: http://skia.googlecode.com/svn/trunk@4623 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 16:51:28 +00:00
scroggo@google.com
96cbd2c4d2
Revert "Add a method to atomic add."
...
This reverts commit eb539cf92f487daf9567ffbbba6b6653406d43ae.
BUG=
TEST=
Review URL: https://codereview.appspot.com/6395051
git-svn-id: http://skia.googlecode.com/svn/trunk@4615 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:22:56 +00:00
scroggo@google.com
e3f84f3911
Add a skia method to perform an atomic add.
...
Complements sk_atomic_inc for when you want to increase by more than one.
Review URL: https://codereview.appspot.com/6350106
git-svn-id: http://skia.googlecode.com/svn/trunk@4614 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:13:29 +00:00
reed@google.com
8d850be3aa
don't add circles on chopped cubics
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4600 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 15:55:15 +00:00
tomhudson@google.com
d0c1a06cb9
Introduces new SingleTextureEffect base class for GrCustomStage objects.
...
This class tracks the texture that the object uses. A future commit will get rid of the
GrTexture pointer currenty stored in the GrDrawState, allowing us to have CustomStages
*without* textures.
Requires gyp change on next roll.
http://codereview.appspot.com/6306097/
git-svn-id: http://skia.googlecode.com/svn/trunk@4576 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 17:23:52 +00:00
chudy@google.com
e606d6e210
SkHitBox added.
...
SkHitBox is a class that determines which draw command is associated with the pixel located at x,y. By calculating a single point instead of the entire bitmap at once there is no visible performance slowdown.
Review URL: https://codereview.appspot.com/6350098
git-svn-id: http://skia.googlecode.com/svn/trunk@4565 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 14:31:25 +00:00
senorblanco@chromium.org
5f47a39916
The correct fix for the lighting filters on Windows: set the GL calling
...
convention for all targets, not just gpu, since effects now makes GL calls too.
Build fix; unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@4559 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 00:34:39 +00:00
reed@google.com
b0a34d80c5
idea: add annotation to SkPaint
...
Review URL: https://codereview.appspot.com/6355050
git-svn-id: http://skia.googlecode.com/svn/trunk@4555 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 19:57:55 +00:00
senorblanco@chromium.org
894790d77c
This patch implements the diffuse and specular lighting filters in Ganesh.
...
There are three light types for each: distant, point and spot, whose code
generation lives in a GrGLLight class hierarchy. This similar to the CPU
implementation, where each light type provides a function to compute the vector
from the surface plane to the light (surfaceToLight) and to compute the light
colour (emitLightColour). Instead of templated member functions, as in the CPU
implementation, these are virtual functions to emit the light-specific GLSL
code.
All of the code for the GPU path lives in the same file as that for the CPU
path, SkLightingImageFilter.cpp. In order to provide Ganesh a hook to access
it, SkImageFilter now has a asNewCustomStage() virtual, which allows an image
filter to return a GrCustomStage representing that filter.
Note that this patch does not handle the border conditions correctly (the
[top|bottom][Left|Right]Normal() functions in the CPU implementation). That
will come in a future patch.
Review URL: http://codereview.appspot.com/6345081/
git-svn-id: http://skia.googlecode.com/svn/trunk@4535 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 16:01:22 +00:00
bungeman@google.com
37946b5b2e
Move animated view headers to correct directory.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4524 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 21:54:31 +00:00
bsalomon@google.com
f0a104e6f1
Remove GrStringBuilder
...
Review URL: http://codereview.appspot.com/6343093/
git-svn-id: http://skia.googlecode.com/svn/trunk@4514 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 17:51:07 +00:00
keyar@chromium.org
cf6c44cf92
Added a sgpipe benchmark.
...
Review URL: https://codereview.appspot.com/6349070
git-svn-id: http://skia.googlecode.com/svn/trunk@4490 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 19:37:40 +00:00
keyar@chromium.org
d1dc920097
Allow specific files and multiple inputs for picture testing tools.
...
Changed the render_pictures, bench_pictures and test_pictures.py so that multiple inputs can be given. Furthermore, specific files can also be specified.
Unit tests have also been added for picture_utils.cpp.
Review URL: https://codereview.appspot.com/6345054
git-svn-id: http://skia.googlecode.com/svn/trunk@4486 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 18:32:08 +00:00
borenet@google.com
0fcf474921
Remove unnecessary lines after Android gyp fix
...
Review URL: https://codereview.appspot.com/6353066
git-svn-id: http://skia.googlecode.com/svn/trunk@4452 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 16:03:51 +00:00
mike@reedtribe.org
43c62b11ec
add gm for hittesting paths
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4438 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 02:44:02 +00:00
caryclark@google.com
ec390ea610
update shapeops_edge gyp
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4432 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 20:44:59 +00:00
scroggo@google.com
4f1f6bf050
Properly handle extracted bitmaps in cross process/shared addr space SkGPipe.
...
Use the pixel ref which we have already copied and the appropriate pixel ref
offset.
Turn SampleDrawBitmap into a GM to test this functionality.
Review URL: https://codereview.appspot.com/6348059
git-svn-id: http://skia.googlecode.com/svn/trunk@4417 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 13:35:09 +00:00
robertphillips@google.com
41efe04af9
Partially rolled forward the SkGrPixelRef changes
...
http://codereview.appspot.com/6354060/
git-svn-id: http://skia.googlecode.com/svn/trunk@4415 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 20:55:14 +00:00
tomhudson@google.com
375ff85e96
Un-trifurcate GrTextContext: get rid of Default and Batched subclasses,
...
folding their functionality back into the base class.
Requires gyp changes.
http://codereview.appspot.com/6357048/
git-svn-id: http://skia.googlecode.com/svn/trunk@4411 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 18:37:57 +00:00
djsollen@google.com
e7290ef304
Update the makefile and gyp for the debugger.
...
Review URL: https://codereview.appspot.com/6355052
git-svn-id: http://skia.googlecode.com/svn/trunk@4410 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 18:26:27 +00:00
scroggo@google.com
32f20eb02c
Create a new GM to exercise ComposeShader.
...
Code borrowed from samplecode/SampleShaders.cpp
Review URL: https://codereview.appspot.com/6371043
git-svn-id: http://skia.googlecode.com/svn/trunk@4407 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 17:28:50 +00:00
chudy@google.com
b6789115b7
Add missing gyp dependencies for debugger
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4405 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 14:34:58 +00:00
chudy@google.com
902ebe5eb4
clt debugger
...
Review URL: https://codereview.appspot.com/6267043
git-svn-id: http://skia.googlecode.com/svn/trunk@4404 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 14:21:22 +00:00
robertphillips@google.com
e9c0469a49
Pseudo-reverted r4396 (SkGrPixelRef files are still in source pool but are unused)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4402 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-29 00:30:13 +00:00
robertphillips@google.com
5088eb49fe
Moved SkGrTexturePixelRef to SkGrPixelRef
...
http://codereview.appspot.com/6344054/
git-svn-id: http://skia.googlecode.com/svn/trunk@4397 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 20:59:13 +00:00
bsalomon@google.com
ded4f4b163
Initial support for GL_NV_path_renering. Experimental, there are still some issues to resolve, set gyp variable skia_nv_path_rendering=1 or build flag GR_GL_USE_NV_PATH_RENDERING to enable.
...
http://codereview.appspot.com/6349049/
git-svn-id: http://skia.googlecode.com/svn/trunk@4390 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 18:48:06 +00:00
djsollen@google.com
7f562ad0ad
fix the build
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4387 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 16:19:03 +00:00
djsollen@google.com
e341cb37e6
Separate target architecture type and width into separate variables.
...
Also add support for building mac in 64 bit mode.
Review URL: https://codereview.appspot.com/6343050
git-svn-id: http://skia.googlecode.com/svn/trunk@4385 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 16:08:05 +00:00
robertphillips@google.com
58b20215f6
Split GrSWMaskHelper into its own files
...
http://codereview.appspot.com/6350046/
git-svn-id: http://skia.googlecode.com/svn/trunk@4380 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 20:44:52 +00:00
junov@chromium.org
ef76060cbf
Adding checksum to SkFlatData to accelerate SkPicture recording.
...
The checksum triggers an early exit in the mem compare use to search for duplicate flattened objects. Also, call to memcmp was replaced with 64-bit at a time comparison loop.
Review URL: http://codereview.appspot.com/6339046/
BUG=http://code.google.com/p/chromium/issues/detail?id=54079
TEST=Checksum and PictureRecord tests in bench.exe
git-svn-id: http://skia.googlecode.com/svn/trunk@4378 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 20:03:16 +00:00
robertphillips@google.com
b74af872cc
Separated Inst counting from the SK_DEBUG #define (now SK_ENABLE_INST_COUNT)
...
http://codereview.appspot.com/6353047/
git-svn-id: http://skia.googlecode.com/svn/trunk@4376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:41:42 +00:00