Commit Graph

20979 Commits

Author SHA1 Message Date
brianosman
c6052ac41a Put back the 0.5 bias in the shader. Only adjust the radii for the geometry, not the radii constants.
After working through this with Jim, this is more mathematically correct, and also accounts for the inner radius.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692683003

Review URL: https://codereview.chromium.org/1692683003
2016-02-12 10:20:01 -08:00
ethannicholas
de8e54ccfd skiaserve now retains the graphics context rather than creating a new one each request
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1693893002

Review URL: https://codereview.chromium.org/1693893002
2016-02-12 10:09:34 -08:00
djsollen
2a8fcb4647 Update Android framework makefile to build static and shared libs
Also use static lib for testing tools and expose includes needed for
other framework testing tools to statically link in Skia.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1696483002

Review URL: https://codereview.chromium.org/1696483002
2016-02-12 08:44:39 -08:00
halcanary
6f96cf4bde Documantation: nanobench
DOCS_PREVIEW= https://skia.org/dev/testing/tests?cl=1696723002
              https://skia.org/dev/testing/tests?cl=1696723002#bench
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1696723002
NOTRY=true

Review URL: https://codereview.chromium.org/1696723002
2016-02-12 08:08:27 -08:00
brianosman
09bf666233 Remove the 0.5 bias from the ellipse edge function. This makes coverage drop to zero before we get clipped by the rasterizer (i.e. ensures the generated ellipse is inscribed in the geometry).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683843006

Review URL: https://codereview.chromium.org/1683843006
2016-02-12 07:45:56 -08:00
halcanary
d798feb97e SkDocument: remove use of SkTArray (part 3/3).
TBR=reed
Removal only. Verbal lgtm.

Review URL: https://codereview.chromium.org/1692703003
2016-02-12 07:26:46 -08:00
ethannicholas
891ad66d14 fixed SkDebugCanvas' handling of drawPicture
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133008

Review URL: https://codereview.chromium.org/1685133008
2016-02-12 07:15:45 -08:00
benjaminwagner
186e0b9f59 Enable RAW codec for Google3.
This CL depends on internal cl/113089689.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692513003

Review URL: https://codereview.chromium.org/1692513003
2016-02-11 16:00:24 -08:00
msarett
829caa2f6b Delete SkDecodingImageGenerator
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692053002

Review URL: https://codereview.chromium.org/1692053002
2016-02-11 14:17:17 -08:00
brianosman
bb2ff94e22 Switch to vertex colors rather than uniforms for color in Ellipse/Circle/RRect/DRRect
[Notes:]
- Performance delta on desktop looked like noise. I'm curious what the results will be on low-end mobile GPUs. I'm still trying to figure out how I determine that with perf, etc...
- There appeared to be a single one-pixel image diff while running dm, if I'm understanding the results of skdiff correctly, so that's probably good news?
- Should I include anyone else on the review?

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1675833002

Review URL: https://codereview.chromium.org/1675833002
2016-02-11 14:15:18 -08:00
cdalton
d36f2c4bc0 Add #define directives to GrGLSLShaderBuilder
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1660813002

Review URL: https://codereview.chromium.org/1660813002
2016-02-11 14:10:38 -08:00
msarett
9b9497ef14 Implement onSkipScanlines() for bmp and wbmp
TBR=reed@google.com
BUG=skia:4270
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691083002

Review URL: https://codereview.chromium.org/1691083002
2016-02-11 13:29:36 -08:00
ethannicholas
f8289d9bd1 fixed off-by-one error in skiaserve /cmd
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692683002

Review URL: https://codereview.chromium.org/1692683002
2016-02-11 13:10:37 -08:00
cdalton
5e58ceea85 Add GrShaderFlags enum
Replaces GrGLSLUniformHandler::ShaderVisibility with GrShaderFlags.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684063006

Review URL: https://codereview.chromium.org/1684063006
2016-02-11 12:49:47 -08:00
mtklein
ddb64c81fb new version of SkHalfToFloat_01
This is a little faster than the previous version, and much better explained.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688233002

Review URL: https://codereview.chromium.org/1688233002
2016-02-11 12:48:23 -08:00
joshualitt
bc81111f24 start to chip away at friending of GrAtlasTextBatch/GrAtlasTextBlob
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684253002

Review URL: https://codereview.chromium.org/1684253002
2016-02-11 12:42:02 -08:00
kjlubick
0eed945294 Revert of Make copySurface work for texture dsts, return a bool, & add unit test. (patchset #6 id:100001 of https://codereview.chromium.org/1684313002/ )
Reason for revert:
Copy surface tests are not happy for Windows, Android and probably others:
https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release/builds/4161
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Win8-MSVC-ShuttleA-GPU-GTX960-x86_64-Release/builds/3694

Original issue's description:
> Make copySurface work for texture dsts, return a bool, & add unit test.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002
>
> Committed: https://skia.googlesource.com/skia/+/7ea5e28065e5eb797e95f5d81c1a65cf3209d741

TBR=robertphillips@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1690053002
2016-02-11 12:05:24 -08:00
joshualitt
27004b7e65 Remove GrContext* from GrTextContext
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686143003

Review URL: https://codereview.chromium.org/1686143003
2016-02-11 12:00:33 -08:00
bsalomon
7ea5e28065 Make copySurface work for texture dsts, return a bool, & add unit test.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002

Review URL: https://codereview.chromium.org/1684313002
2016-02-11 11:42:31 -08:00
joshualitt
e1745a1efc enable ThermalManager on Android
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684653002

Review URL: https://codereview.chromium.org/1684653002
2016-02-11 11:42:19 -08:00
msarett
f4004f9309 Support more color types for ICOs
BUG=skia:4620
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1694513002

Review URL: https://codereview.chromium.org/1694513002
2016-02-11 10:49:31 -08:00
msarett
17315c20e7 Avoid initializing memory twice on incomplete RLE bmps
BUG=skia:4582
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689983002

Review URL: https://codereview.chromium.org/1689983002
2016-02-11 10:35:48 -08:00
ethannicholas
f62a8b786c integrated SkDebugCanvas JSON support with UrlDataManager
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686143004

Review URL: https://codereview.chromium.org/1686143004
2016-02-11 10:35:21 -08:00
scroggo
bed1ed6eac Test SkAndroidCodec for more types
Now that SkAndroidCodec supports all types, stop selectively running
its tests for the types supported by BRD.

For the tests that actually require BRD support (i.e. partial
scanlines), change the method name from supports_scaled_codec to
supports_partial_scanlines to be more accurate today.

Use the name SkAndroidCodec instead of SkScaledCodec.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691823002

Review URL: https://codereview.chromium.org/1691823002
2016-02-11 10:24:55 -08:00
brianosman
b8c97ba80b Further reduce the number of primitives in the donut tests. Avoids crashes on iOS.
BUG=skia:4937
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691813002

Review URL: https://codereview.chromium.org/1691813002
2016-02-11 09:07:02 -08:00
msarett
ef02b24d1c Clarify bmp comment about when we support the alpha mask
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689183002

Review URL: https://codereview.chromium.org/1689183002
2016-02-11 08:41:53 -08:00
msarett
4946b9419f Fix scanline decoding of rare RLE bmps
This also exposed a bug in rewinding RLE bmps, which I have also
fixed in this CL.

This should fix testcase7.bmp on Gold.

The image that I am adding to resources is in the
public domain.

BUG=skia:4730
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689953002

Review URL: https://codereview.chromium.org/1689953002
2016-02-11 08:41:01 -08:00
mtklein
c1eb311f4e SkNx refactoring
- add back Sk4i typedef
  - define SSE casts in terms of Sk4i
      * uint8  <-> float becomes uint8  <-> int <-> float
      * uint16 <-> float becomes uint16 <-> int <-> float

    This has the nice side effect of specializing uint8 <-> int
    and uint16 <-> int, which are useful in their own right.

There are many cast specializations now, some of which call each other.
I have tried to arrange them in some sort of sensible order, subject to
the constraint that those called must precede those who call.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690633003
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1690633003
2016-02-11 08:10:22 -08:00
fmalita
49b9f8c93e Remove SK_SUPPORT_LEGACY_BITMAP_FILTER guard
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1695443002

Review URL: https://codereview.chromium.org/1695443002
2016-02-11 08:06:39 -08:00
halcanary
7001576c71 SkDocument: remove use of SkTArray (part 1/3).
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689683002

Review URL: https://codereview.chromium.org/1689683002
2016-02-11 07:59:59 -08:00
joshualitt
db6a254bdc wire up new json code in skiaserve
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691773002

Review URL: https://codereview.chromium.org/1691773002
2016-02-11 07:09:51 -08:00
joshualitt
860fc696d7 fix for gpu valgrind bot
TBR=egdaniel@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689823004

Review URL: https://codereview.chromium.org/1689823004
2016-02-11 06:53:36 -08:00
joshualitt
1b39f43941 Pass a GrContext pointer in GrDrawContext constructor
TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691503002

Review URL: https://codereview.chromium.org/1691503002
2016-02-11 06:46:52 -08:00
msarett
84451024bf Add AndroidCodecBench to time scaled decodes
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685693003

Review URL: https://codereview.chromium.org/1685693003
2016-02-11 06:45:51 -08:00
mtklein
fff055cc5f SkHalfToFloat_01 / SkFloatToHalf_01
These are basically inlined, 4-at-a-time versions of our existing functions,
but cut down to avoid any work that's only necessary outside [0,1].

Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.

In exchange for a little speed, f32->f16 does not round properly.
Instead it truncates, so it's never off by more than 1 bit.

Support for finite values >1 or <0 is straightforward to add back.
>1 might already work as-is.

Getting close to _u16 performance:
    micros   	bench
    261.13  	xferu64_bw_1_opaque_u16
   1833.51  	xferu64_bw_1_alpha_u16
   2762.32 ?	xferu64_aa_1_opaque_u16
   3334.29  	xferu64_aa_1_alpha_u16
    249.78  	xferu64_bw_1_opaque_f16
   3383.18  	xferu64_bw_1_alpha_f16
   4214.72  	xferu64_aa_1_opaque_f16
   4701.19  	xferu64_aa_1_alpha_f16

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005

Committed: https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9

CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1685133005
2016-02-11 06:30:03 -08:00
mtklein
cbefc5e4ca Revert of SkHalfToFloat_01 / SkFloatToHalf_01 (patchset #11 id:200001 of https://codereview.chromium.org/1685133005/ )
Reason for revert:
Gotta fix Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Original issue's description:
> SkHalfToFloat_01 / SkFloatToHalf_01
>
> These are basically inlined, 4-at-a-time versions of our existing functions,
> but cut down to avoid any work that's only necessary outside [0,1].
>
> Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.
>
> In exchange for a little speed, f32->f16 does not round properly.
> Instead it truncates, so it's never off by more than 1 bit.
>
> Support for finite values >1 or <0 is straightforward to add back.
> >1 might already work as-is.
>
> Getting close to _u16 performance:
>     micros   	bench
>     261.13  	xferu64_bw_1_opaque_u16
>    1833.51  	xferu64_bw_1_alpha_u16
>    2762.32 ?	xferu64_aa_1_opaque_u16
>    3334.29  	xferu64_aa_1_alpha_u16
>     249.78  	xferu64_bw_1_opaque_f16
>    3383.18  	xferu64_bw_1_alpha_f16
>    4214.72  	xferu64_aa_1_opaque_f16
>    4701.19  	xferu64_aa_1_alpha_f16
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005
>
> Committed: https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9

TBR=jvanverth@google.com,reed@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1693443003
2016-02-11 06:00:49 -08:00
mtklein
9ea11a4235 SkHalfToFloat_01 / SkFloatToHalf_01
These are basically inlined, 4-at-a-time versions of our existing functions,
but cut down to avoid any work that's only necessary outside [0,1].

Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.

In exchange for a little speed, f32->f16 does not round properly.
Instead it truncates, so it's never off by more than 1 bit.

Support for finite values >1 or <0 is straightforward to add back.
>1 might already work as-is.

Getting close to _u16 performance:
    micros   	bench
    261.13  	xferu64_bw_1_opaque_u16
   1833.51  	xferu64_bw_1_alpha_u16
   2762.32 ?	xferu64_aa_1_opaque_u16
   3334.29  	xferu64_aa_1_alpha_u16
    249.78  	xferu64_bw_1_opaque_f16
   3383.18  	xferu64_bw_1_alpha_f16
   4214.72  	xferu64_aa_1_opaque_f16
   4701.19  	xferu64_aa_1_alpha_f16

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005

Review URL: https://codereview.chromium.org/1685133005
2016-02-11 05:56:08 -08:00
joshualitt
2c89bc153b Move surface props off of GrTextContext
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685653004

Review URL: https://codereview.chromium.org/1685653004
2016-02-11 05:42:30 -08:00
erikchen
9a1ed5d81d skia: Add support for CHROMIUM_image backed textures.
I created a new abstract base class TextureStorageAllocator that consumers of
Skia can subclass and pass back to Skia. When a surface is created with a
pointer to a TextureStorageAllocator, any textures it creates, or that are
derived from the original surface, will allocate and deallocate storage using
the methods on TextureStorageAllocator.

BUG=https://code.google.com/p/chromium/issues/detail?id=579664
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1623653002

Committed: https://skia.googlesource.com/skia/+/92098e691f10a010e7421125ba4d44c02506bb55

Committed: https://skia.googlesource.com/skia/+/7fec91ce6660190f8d7c5eb6f3061e4550cc672b

Committed: https://skia.googlesource.com/skia/+/b8d6e088590160f1198110c2371b802c1d541a36

Review URL: https://codereview.chromium.org/1623653002
2016-02-10 16:32:35 -08:00
cdalton
4a6e40d9d2 Add bench and gm for shapes
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1677253002

patch from issue 1686673002 at patchset 20001 (http://crrev.com/1686673002#ps20001)

Review URL: https://codereview.chromium.org/1677253002
2016-02-10 14:54:21 -08:00
jcgregorio
12d47ce49e skiaserve: Fix /cmd/N and /cmd/N[0|1], the response was never queued.
BUG=skia:
R=joshualitt@google.com, ethannicholas@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686553006

Review URL: https://codereview.chromium.org/1686553006
2016-02-10 14:10:37 -08:00
ethannicholas
1446a9a67a added JSON support for various lesser-used features
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690613002

Review URL: https://codereview.chromium.org/1690613002
2016-02-10 14:05:02 -08:00
msarett
d5951b1d85 More efficient Jpeg skipScanlines for older versions of libjpeg-turbo
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683283002

Review URL: https://codereview.chromium.org/1683283002
2016-02-10 13:49:36 -08:00
msarett
02b407b744 Fix bug processing bmp bit masks
BUG=skia:4866
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688003002

Review URL: https://codereview.chromium.org/1688003002
2016-02-10 13:40:10 -08:00
ethannicholas
402cd91f60 added SkDebugCanvas::toJSON
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684233002

Review URL: https://codereview.chromium.org/1684233002
2016-02-10 12:57:30 -08:00
rmistry
d31588523c Documentation for accessing the different repositories of SKPs
BUG=skia:2306
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683233002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1683233002

Review URL: https://codereview.chromium.org/1683233002
2016-02-10 12:55:07 -08:00
joshualitt
e55750e3fe Start whittling down GrTextContext
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684733005

Review URL: https://codereview.chromium.org/1684733005
2016-02-10 12:52:21 -08:00
ethannicholas
bd3dae8a97 added some missing static modifiers
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690683002

Review URL: https://codereview.chromium.org/1690683002
2016-02-10 12:10:01 -08:00
joshualitt
9230377242 Remove GrTextBlobCache/GrAtlasTextBlob friendliness
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686113002

Review URL: https://codereview.chromium.org/1686113002
2016-02-10 11:55:52 -08:00
reed
60ae6b0e32 disable flaky gm for now
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689653002

TBR=

Review URL: https://codereview.chromium.org/1689653002
2016-02-10 11:36:06 -08:00