mtklein
62e1a1a4ba
Make SK_BUILD_FOR_WIN32 auto-detection work.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2205173003
No public API changes
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/2205173003
2016-08-03 11:09:59 -07:00
robertphillips
a746f7894a
Fix dtor bug in SkLights
...
The overriding problem was that the SkTDArray wasn't calling the SkLight destructors.
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2206823003
Review-Url: https://codereview.chromium.org/2206823003
2016-08-03 09:40:39 -07:00
bungeman
38d909ec28
Move off SK_SUPPORT_LEGACY_DATA_FACTORIES.
...
This moves Skia code off of SK_SUPPORT_LEGACY_DATA_FACTORIES.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2206633004
Review-Url: https://codereview.chromium.org/2206633004
2016-08-02 14:40:46 -07:00
msarett
a25f470bc7
Delete SkNinePatch
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2206663002
Review-Url: https://codereview.chromium.org/2206663002
2016-08-02 13:55:10 -07:00
mtklein
091cb8d72d
Delete SkARGBImageEncoder.
...
It appears to be unused now except by its unit test, also deleted.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2208433002
No public API changes.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/2208433002
2016-08-02 12:57:33 -07:00
mtklein
5dbd274846
gn: fix fiddle
...
- __SK_FORCE_IMAGE_DECODER_LINKING makes sure the PNG encoder is linked
- updated path to make working with sample draw.cpp easier.
No public API changes.
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2202353002
Review-Url: https://codereview.chromium.org/2202353002
2016-08-02 11:13:49 -07:00
bungeman
b1dd067128
Remove 'Ulta' width.
...
All users of this old name appear to be updated.
TBR=reed
Removing unused and mis-spelled API.
Review-Url: https://codereview.chromium.org/2206453003
2016-08-02 10:43:29 -07:00
msarett
c573a40ed5
Add drawImageLattice() and drawBitmapLattice() APIs
...
The specified image/bitmap is divided into rects, which
can be draw stretched, shrunk, or at a fixed size. Will be
used by Android to draw 9patch (which are acutally N-patch)
images.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1992283002
Review-Url: https://codereview.chromium.org/1992283002
2016-08-02 08:05:56 -07:00
reed
320a40d773
Always return ImageShader, even from SkShader::MakeBitmapShader
...
Lessons learned
1. ImageShader (correctly) always compresses (typically via PNG) during serialization. This has the surprise results of
- if the image was marked opaque, but has some non-opaque pixels (i.e. bug in blitter or caller), then compressing may "fix" those pixels, making the deserialized version draw differently. bug filed.
- 565 compressess/decompresses to 8888 (at least on Mac), which draws differently (esp. under some filters). bug filed.
2. BitmapShader did not enforce a copy for mutable bitmaps, but ImageShader does (since it creates an Image). Thus the former would see subsequent changes to the pixels after shader creation, while the latter does not, hence the change to the BlitRow test to avoid this modify-after-create pattern. I sure hope this prev. behavior was a bug/undefined-behavior, since this CL changes that.
BUG=skia:5595
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2195893002
Review-Url: https://codereview.chromium.org/2195893002
2016-08-02 06:12:06 -07:00
mtklein
1bb5fecbea
Sketch SkPictureRecorder::optimizeFor(GrContext*).
...
I'm open to API suggestions.
We can pass this in finishAs(), up front, whatever.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2203453002
Review-Url: https://codereview.chromium.org/2203453002
2016-08-01 13:17:47 -07:00
bungeman
d783e08004
Replace 'Ulta' with 'Ultra'.
...
Start fixing a typo in an enum name.
TBR=reed
This is just a typo fix.
Review-Url: https://codereview.chromium.org/2202703002
2016-08-01 12:37:13 -07:00
reed
f1ac18229c
implement isABitmap for imageshader, return localmatrix for bitmap's impl
...
For imageshader, I only return true if the image is explicitly raster-backed. I do not return true for texture, nor for generator (i.e. lazy/picture) backed. Is that ok?
BUG=skia:5592
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2197323002
Review-Url: https://codereview.chromium.org/2197323002
2016-08-01 11:24:14 -07:00
mtklein
da574d17f8
Replace old SkRecords RefBox with sk_sp.
...
The main differences are that RefBox's constructor reffed and sk_sp's doesn't,
and that RefBox auto-casts to the underlying pointer while sk_sp doesn't.
I've added a bunch of sk_ref_sp() and .get() to compensate.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2197243003
Review-Url: https://codereview.chromium.org/2197243003
2016-08-01 11:24:03 -07:00
dvonbeck
9b03e7b29d
GrFP can express distance vector field req., program builder declares variable for it
...
This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates:
- from child FPs to their parent
- from parent FPs to the GrPaint
- from GrPaint through the PipelineBuilder into GrPipeline
- acessed from GrPipeline by GrGLSLProgramBuilder
GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method.
This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002
Committed: https://skia.googlesource.com/skia/+/4ef6dfa7089c092c67b0d5ec34e89c1e319af196
Review-Url: https://codereview.chromium.org/2114993002
2016-08-01 11:01:56 -07:00
msarett
abbd6d5e02
Add SkColorSpace::Equals() API
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196743002
Review-Url: https://codereview.chromium.org/2196743002
2016-08-01 09:43:08 -07:00
mtklein
8d7f5c3f29
Default fake gamma to sRGB.
...
No one appears to be using the default 2.2.
This makes SK_GAMMA_SRGB the default / a no-op, which seems more realistic.
Chrome's explicitly setting SK_GAMMA_EXPONENT or SK_GAMMA_SRGB.
We set Android platform explicitly to 1.4.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2198073002
Review-Url: https://codereview.chromium.org/2198073002
2016-08-01 09:22:12 -07:00
robertphillips
12e9662cf7
Remove some ancillary users of SkSurface::MakeRenderTargetDirect
...
calved off of: https://codereview.chromium.org/2176333002/ (Remove SkSurface::MakeRenderTargetDirect)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2198433003
Review-Url: https://codereview.chromium.org/2198433003
2016-08-01 05:53:23 -07:00
mtklein
02aed95f9c
Revert of GrFP can express distance vector field req., program builder declares variable for it (patchset #20 id:370001 of https://codereview.chromium.org/2114993002/ )
...
Reason for revert:
UBSAN says we're reading a bad bool here:
bool usesDistanceVectorField() const { return fUsesDistanceVectorField; }
../../../include/gpu/GrPaint.h:83:51: runtime error: load of value 239, which is not a valid value for type 'bool'
SUMMARY: AddressSanitizer: undefined-behavior ../../../include/gpu/GrPaint.h:83:51 in
Seems likely also the root of Valgrind failure:
https://luci-milo.appspot.com/swarming/task/30522e4f2241cb10
Original issue's description:
> GrFP can express distance vector field req., program builder declares variable for it
>
> This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates:
>
> - from child FPs to their parent
> - from parent FPs to the GrPaint
> - from GrPaint through the PipelineBuilder into GrPipeline
> - acessed from GrPipeline by GrGLSLProgramBuilder
>
> GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method.
>
> This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002
>
> Committed: https://skia.googlesource.com/skia/+/4ef6dfa7089c092c67b0d5ec34e89c1e319af196
TBR=egdaniel@google.com ,robertphillips@google.com,bsalomon@google.com,dvonbeck@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review-Url: https://codereview.chromium.org/2201613002
2016-07-30 14:21:10 -07:00
csmartdalton
4c18b62a00
Add ES 3.0 fallback for instanced rendering
...
Adds the ability for GLInstancedRendering to use
glDrawElementsInstanced when glDrawElementsIndirect is not supported.
The only remaining 3.1 dependency now is EXT_texture_buffer.
Also moves the cap for glDraw*Instanced out of GrCaps and into
GrGLCaps.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2193303002
Review-Url: https://codereview.chromium.org/2193303002
2016-07-29 12:19:28 -07:00
bungeman
aa8f39402c
Conditionally define SK_SUPPORT_LEGACY_DATA_FACTORIES.
...
In order to remove this define it will first need to be defined in
Chromium. However, doing so causes redefinition warnings as errors.
Only define this macro if it is not already defined to avoid this.
TBR=reed
This doesn't change any API.
Review-Url: https://codereview.chromium.org/2198453002
2016-07-29 10:47:45 -07:00
dvonbeck
4ef6dfa708
GrFP can express distance vector field req., program builder declares variable for it
...
This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates:
- from child FPs to their parent
- from parent FPs to the GrPaint
- from GrPaint through the PipelineBuilder into GrPipeline
- acessed from GrPipeline by GrGLSLProgramBuilder
GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method.
This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002
Review-Url: https://codereview.chromium.org/2114993002
2016-07-29 09:53:56 -07:00
robertphillips
1e8761809d
Remove GrContext::applyGamma
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2191323002
Review-Url: https://codereview.chromium.org/2191323002
2016-07-29 08:28:25 -07:00
csmartdalton
e0d362929d
Add test configs for instanced rendering
...
Adds the following configs and enables them on select bots:
glinst, glinst4, glinstdit4, glinst16, glinstdit16,
esinst, esinst4, esinstdit4
Makes general changes to GrContextOptions, GrCaps, etc. to facilitate
this.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182783004
Review-Url: https://codereview.chromium.org/2182783004
2016-07-29 08:14:20 -07:00
msarett
50ce1f28ff
Add color space xform support to SkJpegCodec (includes F16!)
...
Also changes SkColorXform to support:
RGBA->RGBA
RGBA->BGRA
Instead of:
RGBA->SkPMColor
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/73d55332e2846dd05e9efdaa2f017bcc3872884b
Review-Url: https://codereview.chromium.org/2174493002
2016-07-29 06:23:33 -07:00
msarett
39979d8c6b
Revert of Add color space xform support to SkJpegCodec (includes F16!) (patchset #9 id:260001 of https://codereview.chromium.org/2174493002/ )
...
Reason for revert:
Breaking MSAN
Original issue's description:
> Add color space xform support to SkJpegCodec (includes F16!)
>
> Also changes SkColorXform to support:
> RGBA->RGBA
> RGBA->BGRA
>
> Instead of:
> RGBA->SkPMColor
>
> TBR=reed@google.com
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002
> CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/73d55332e2846dd05e9efdaa2f017bcc3872884b
TBR=mtklein@google.com ,reed@google.com,herb@google.com,brianosman@google.com
# 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/2195523002
2016-07-28 17:11:18 -07:00
robertphillips
ecf3dbe8f2
Remove use of MakeRenderTargetDirect from view system
...
Here is the CL that sent me down the SkGammaColorFilter path
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2178353005
Review-Url: https://codereview.chromium.org/2178353005
2016-07-28 15:17:34 -07:00
msarett
73d55332e2
Add color space xform support to SkJpegCodec (includes F16!)
...
Also changes SkColorXform to support:
RGBA->RGBA
RGBA->BGRA
Instead of:
RGBA->SkPMColor
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2174493002
2016-07-28 15:06:16 -07:00
reed
9b84f8c812
turn bitmaps into images during recording
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185563003
Review-Url: https://codereview.chromium.org/2185563003
2016-07-28 14:26:13 -07:00
msarett
a0605bf9d1
Add writeToMemory() API to SkColorSpace
...
New API mirrors the form of similar APIs in SkRegion,
SkMatrix, etc.
This also fixes a bug:
SkImageInfo appears in a object that Chrome stores in
discardable memory. So when sk_sp<SkColorSpace> was added
to SkImageInfo a leak was introduced. We'll use this new
method and deserialize to store the SkColorSpace in the
discardable object.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2192903002
Review-Url: https://codereview.chromium.org/2192903002
2016-07-28 10:47:50 -07:00
fmalita
eae6a91277
SkPaint intercept API for SkTextBlob and horizontal text
...
Add getPosTextHIntercepts(), getTextBlobIntercepts().
Consolidate the implementation in GetTextIntercepts<> template.
BUG=chormium:581456
R=caryclark@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186663004
Review-Url: https://codereview.chromium.org/2186663004
2016-07-28 09:47:24 -07:00
mtklein
fa84d94bb0
Make both SK_API definition points identical and order independent.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2189983002
Review-Url: https://codereview.chromium.org/2189983002
2016-07-28 09:45:15 -07:00
robertphillips
a408c8fb6d
Add SkGammaColorFilter
...
WDYT about this as a means of replacing GrContext::applyGamma with a normal SkCanvas::drawImage?
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2190573002
Review-Url: https://codereview.chromium.org/2190573002
2016-07-28 09:20:33 -07:00
msarett
7b9b541af8
Expose more gamma info for UMA statistics
...
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188633003
Review-Url: https://codereview.chromium.org/2188633003
2016-07-27 13:51:46 -07:00
csmartdalton
34ee0c950e
Fix GrDrawContextPriv::stencilRect
...
Updates stencilRect to call drawNonAAFilledRect instead of
drawFilledRect. drawFilledRect can use coverage AA, which isn't
appropriate for stencil draws. Also modifies drawNonAAFilledRect to
take a "useHWAA" argument instead of trying to deduce whether it
should be used.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187583002
Review-Url: https://codereview.chromium.org/2187583002
2016-07-27 13:22:27 -07:00
robertphillips
6738c70242
Rename GrContext's newDrawContext & drawContext to makeDrawContext
...
These both return sk_sp.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186073002
Review-Url: https://codereview.chromium.org/2186073002
2016-07-27 12:13:51 -07:00
caryclark
d6562000ef
require semi at the end of SkASSERT and friends
...
R=bungeman@google.com
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185063002
Review-Url: https://codereview.chromium.org/2185063002
2016-07-27 12:02:07 -07:00
mtklein
570c868b38
Clean up some unused atomic routines.
...
AtomicTest was the only use of sk_atomic_add().
AtomicInc64 bench was the only use of sk_atomic_inc(int64_t*).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183473005
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN-Trybot,Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Release-TSAN-Trybot
Review-Url: https://codereview.chromium.org/2183473005
2016-07-27 08:40:45 -07:00
egdaniel
735109c248
Add gyp define to enable vulkan debug layers
...
On Debug vulkan bots, running with the debug layers on seems to be adding
more than an hour to the total running time. Since we suppress any output
on the bots anyways the debug layers are serving no purpose. Thus I am
adding a gyp define to disable the layers on the bot.
With this change, by default when running vulkan in Debug, the debug_layers
will be enabled. The bots should disable the layers. Android framework
should also have them disabled by default.
TBR=djsollen@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185953003
Review-Url: https://codereview.chromium.org/2185953003
2016-07-27 08:03:57 -07:00
brianosman
9f97882322
Simplify color space xform storage and usage (float[] vs. SkMatrix44)
...
Public API is really just internal.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185533005
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/2185533005
2016-07-27 05:25:26 -07:00
fmalita
6ceef3dd67
Initial SVG model
...
A minimal subset needed to render tiger.svg: <svg>, <g>, <path>, 'd', 'fill'/'stroke' (color-only), 'transform'.
R=reed@google.com ,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164193002
Review-Url: https://codereview.chromium.org/2164193002
2016-07-26 18:46:34 -07:00
jcgregorio
aef94d1818
Avoid warnings on GCC 4.8.4
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183243002
[mtklein adds...]
TBR=reed@google.com
No public API changes.
Review-Url: https://codereview.chromium.org/2183243002
2016-07-26 14:10:17 -07:00
mtklein
1b51e0ec46
Move SkJSONCPP.h to tools. It tool-only.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2184483003
CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/2184483003
2016-07-26 12:41:27 -07:00
reed
e93393b311
don't specialize drawBitmapRect for minirecorder; no longer called by blink
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183193002
Review-Url: https://codereview.chromium.org/2183193002
2016-07-26 12:21:10 -07:00
bsalomon
d1bdd1fcbd
Use Windowing system-specific WindowContext factories.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2169543002
Review-Url: https://codereview.chromium.org/2169543002
2016-07-26 12:02:51 -07:00
robertphillips
7e92276554
Reduce usage of MakeRenderTargetDirect
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187573002
Review-Url: https://codereview.chromium.org/2187573002
2016-07-26 11:38:17 -07:00
brianosman
3a0dbde1cf
Remove SkSurfaceProps gamma-correctness flag entirely.
...
This is no longer required - gamma-correctness is now just based on the
presence or absence of a color space.
Public API change is just removal of (unused) flag.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188463002
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/2188463002
2016-07-26 11:36:05 -07:00
brianosman
9dc935fa11
Remove all usage of SkSurfaceProps::isGammaCorrect()
...
DrawContext's isGammaCorrect now just based on presence of color space.
Next change will remove the function and flag entirely, but I wanted to
land this separately. This alters a few GMs in srgb/f16 mode, generally
those that are creating off-screen surfaces in ways that were somewhat
lossy before. No unexplained changes.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186633002
Review-Url: https://codereview.chromium.org/2186633002
2016-07-26 10:21:55 -07:00
robertphillips
8c523e0f3f
Move prepareForExternalIO from GrRenderTarget to GrDrawContext
...
This is part of the push to remove GrRenderTarget from SkGpuDevice
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182543003
Review-Url: https://codereview.chromium.org/2182543003
2016-07-26 07:41:01 -07:00
bungeman
b8113780c3
Update typeface serialization style.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2030683002
Committed: https://skia.googlesource.com/skia/+/7ae1c72e593823e6e300e4199558555765bcec17
Review-Url: https://codereview.chromium.org/2030683002
2016-07-25 16:54:59 -07:00
bungeman
6e45bda29e
Add test for typeface style round trip.
...
This also fixes the CG and GDI ports so they pass the test.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2171163002
Review-Url: https://codereview.chromium.org/2171163002
2016-07-25 15:11:49 -07:00
brianosman
8fe485b793
Just pass the draw context to paint conversion
...
Concentrate on using draw context functionality to answer gamma and color
related queries in more places.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182603003
Review-Url: https://codereview.chromium.org/2182603003
2016-07-25 12:31:51 -07:00
reed
c7ec7c9cab
remove/deprecate SkBitmap::getTexture, as it now always returns false
...
oh happy day
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175873002
Review-Url: https://codereview.chromium.org/2175873002
2016-07-25 08:29:10 -07:00
reed
2c9e20055b
remove fClipStack and attach/deattach-from-canvas
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180793002
Review-Url: https://codereview.chromium.org/2180793002
2016-07-25 08:05:23 -07:00
halcanary
d0e95a524c
typedef uint16_t SkGlyphID
...
This goes well with our existing `typedef int32_t SkUnichar`.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2095263003
Review-Url: https://codereview.chromium.org/2095263003
2016-07-25 07:18:12 -07:00
brianosman
1638c0deea
Add destination color space to AsFPArgs. Eliminates last XFORMTODO.
...
This is going to be needed in many more places as I finish connecting the
dots. Even better - I'd like to switch to a world where SkColorSpace !=
nullptr is the only signal we use for gamma-correct rendering, so I can
eliminate SkSourceGammaTreatment and SkSurfaceProps::isGammaCorrect.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180503002
Review-Url: https://codereview.chromium.org/2180503002
2016-07-25 05:12:53 -07:00
reed
b560b5c8c0
lockPixelsAreWritable is deprecated
...
BUG=skia:4328
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2177063002
TBR=
Review-Url: https://codereview.chromium.org/2177063002
2016-07-24 12:30:34 -07:00
senorblanco
9c1d45d986
Always init SkPathRef variables.
...
BUG=623195
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2173853003
Review-Url: https://codereview.chromium.org/2173853003
2016-07-22 13:51:42 -07:00
mtklein
9a5c47f4ef
Add SkRasterPipeline blitter.
...
This is now pixel-exact with the existing sRGB SW impl as far as I've tested.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146413002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot
Committed: https://skia.googlesource.com/skia/+/3011e337693a9786f62d8de9ac4b239ad6dbdaca
Review-Url: https://codereview.chromium.org/2146413002
2016-07-22 11:05:04 -07:00
brianosman
839345d634
Bundle SkShader::asFragmentProcessor arguments in a struct
...
The signature of this thing keeps changing (and is about to change again).
This just makes maintenance much easier.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175563003
Review-Url: https://codereview.chromium.org/2175563003
2016-07-22 11:04:53 -07:00
mtklein
aa29b27329
Revert of Add SkRasterPipeline blitter. (patchset #18 id:340001 of https://codereview.chromium.org/2146413002/ )
...
Reason for revert:
Leaking the blitter
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/7908/steps/test_skia%20on%20Ubuntu/logs/stdio
Original issue's description:
> Add SkRasterPipeline blitter.
>
> This is now pixel-exact with the existing sRGB SW impl as far as I've tested.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146413002
> CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/3011e337693a9786f62d8de9ac4b239ad6dbdaca
TBR=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/2178523002
2016-07-22 10:20:52 -07:00
vjiaoblack
5bfee98c8c
Creating framework for drawShadowedPicture
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146073003
Committed: https://skia.googlesource.com/skia/+/0ae097d116f4332be02a135ffc99c162473dee6a
Committed: https://skia.googlesource.com/skia/+/95302da19d8b0a3bcd9d9be0e79f486760787f09
Review-Url: https://codereview.chromium.org/2146073003
2016-07-22 10:04:15 -07:00
csmartdalton
cbecb082d1
Allow GrReducedClip to take non-integer query bounds
...
Fixes places where AA bloat was being conflated with geometric
boundaries and updates GrReducedClip to work with non-integer query
bounds. This allows for better clip reduction with AA shared edges.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2160093002
Review-Url: https://codereview.chromium.org/2160093002
2016-07-22 08:59:08 -07:00
mtklein
3011e33769
Add SkRasterPipeline blitter.
...
This is now pixel-exact with the existing sRGB SW impl as far as I've tested.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146413002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2146413002
2016-07-22 08:53:26 -07:00
bsalomon
bb24383abb
Revert of Retract PipelineBuilder some more (patchset #9 id:160001 of https://codereview.chromium.org/2092893003/ )
...
Reason for revert:
skbug.com/5559
Original issue's description:
> Retract PipelineBuilder some more
>
> The main part of this CL is widening SkDrawContext::drawBatch's API to accept the userStencilSettings & drawFace
>
> There is some ancillary spookiness related to expanding the should_apply_coverage_aa & mustUseHWAA methods to encompass mixedSamples
>
> Calved off:
> https://codereview.chromium.org/2165283002/ (Remove DrawFace enum from GrPipelineBuilder)
> https://codereview.chromium.org/2167183002/ (Minor change to Ganesh path renderers)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2092893003
>
> Committed: https://skia.googlesource.com/skia/+/2895eeb11a9f0d9c0018d49dd4bc45f6c6fc062c
TBR=robertphillips@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/2175573004
2016-07-22 07:10:20 -07:00
brianosman
396fcdba14
Cleanup of code that converts from GPU-backed resources to SkImageInfo
...
Functions like GrMakeInfoFromTexture encouraged incorrect code to be
written. Similarly, the ability to construct an info from any GrSurface
was never going to be correct. Luckily, the only client of that had all
of the correct parameters much higher on the stack (and dictated or
replaced most of the properties of the returned info anyway).
With this, I can finally remove the color space as an output of the
pixel config -> color type conversion, which was never going to be
correct.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2173513002
Review-Url: https://codereview.chromium.org/2173513002
2016-07-22 06:26:11 -07:00
brianosman
dfe4f2e4fe
Add SkColorSpace to GrDrawContext
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164363002
Review-Url: https://codereview.chromium.org/2164363002
2016-07-21 13:28:36 -07:00
robertphillips
2895eeb11a
Retract PipelineBuilder some more
...
The main part of this CL is widening SkDrawContext::drawBatch's API to accept the userStencilSettings & drawFace
There is some ancillary spookiness related to expanding the should_apply_coverage_aa & mustUseHWAA methods to encompass mixedSamples
Calved off:
https://codereview.chromium.org/2165283002/ (Remove DrawFace enum from GrPipelineBuilder)
https://codereview.chromium.org/2167183002/ (Minor change to Ganesh path renderers)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2092893003
Review-Url: https://codereview.chromium.org/2092893003
2016-07-21 12:04:08 -07:00
msarett
530c844d25
Remove unnecessary getColorSpace() API from SkCodec
...
Not needed since now we can get it from the SkImageInfo.
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2170793004
Review-Url: https://codereview.chromium.org/2170793004
2016-07-21 11:57:49 -07:00
vjiaoblack
95302da19d
Creating framework for drawShadowedPicture
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146073003
Committed: https://skia.googlesource.com/skia/+/0ae097d116f4332be02a135ffc99c162473dee6a
Review-Url: https://codereview.chromium.org/2146073003
2016-07-21 10:25:54 -07:00
vjiaoblack
33d325890e
Revert of Creating framework for drawShadowedPicture (patchset #14 id:260001 of https://codereview.chromium.org/2146073003/ )
...
Reason for revert:
Decided to re-wait for a final LGTM.
Already found a bug in variable naming to fix.
Original issue's description:
> Creating framework for drawShadowedPicture
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146073003
>
> Committed: https://skia.googlesource.com/skia/+/0ae097d116f4332be02a135ffc99c162473dee6a
TBR=reed@google.com ,robertphillips@google.com,bsalomon@google.com,jvanverth@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/2167223002
2016-07-21 09:24:16 -07:00
robertphillips
5fa7f30331
Remove DrawFace enum from GrPipelineBuilder
...
This gets GrPipelineBuilder.h out of the headers
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002
Committed: https://skia.googlesource.com/skia/+/da152ebb032c61bb2561bbb3e9a78037ad174d34
Review-Url: https://codereview.chromium.org/2165283002
2016-07-21 09:21:04 -07:00
vjiaoblack
0ae097d116
Creating framework for drawShadowedPicture
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146073003
Review-Url: https://codereview.chromium.org/2146073003
2016-07-21 09:10:23 -07:00
robertphillips
5d1676c751
Revert of Remove DrawFace enum from GrPipelineBuilder (patchset #2 id:20001 of https://codereview.chromium.org/2165283002/ )
...
Reason for revert:
No Vulkan bot in CQ :(
Original issue's description:
> Remove DrawFace enum from GrPipelineBuilder
>
> This gets GrPipelineBuilder.h out of the headers
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002
>
> Committed: https://skia.googlesource.com/skia/+/da152ebb032c61bb2561bbb3e9a78037ad174d34
TBR=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/2167193002
2016-07-21 08:18:05 -07:00
robertphillips
da152ebb03
Remove DrawFace enum from GrPipelineBuilder
...
This gets GrPipelineBuilder.h out of the headers
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002
Review-Url: https://codereview.chromium.org/2165283002
2016-07-21 07:58:41 -07:00
robertphillips
1f3923e4e5
Deprecate SkDevice::accessBitmap method
...
Relies on https://codereview.chromium.org/2162423003/ (Add SK_SUPPORT_LEGACY_ACCESSBITMAP Skia guard) landing in Chromium first.
Calved off: https://codereview.chromium.org/2163323002/ (Add desired width & height to drawContext (as opposed to using the width & height of the RT))
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2168483003
Review-Url: https://codereview.chromium.org/2168483003
2016-07-21 07:17:54 -07:00
brianosman
afbf71dd92
Adding color space to SkSpecialImage
...
Mostly means that GPU backed special images need to be supplied (and
store) a color space object.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163343002
Review-Url: https://codereview.chromium.org/2163343002
2016-07-21 07:15:37 -07:00
brianosman
dddbe380b0
Adding an SkColorSpace to SkImage_Gpu
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165703003
Review-Url: https://codereview.chromium.org/2165703003
2016-07-20 13:55:39 -07:00
reed
cf5c846b41
remove dead methods now that we use specials exclusively for imagefilters
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164763003
Review-Url: https://codereview.chromium.org/2164763003
2016-07-20 12:28:40 -07:00
dvonbeck
c526da94e4
SkLS now accepting nullptr for diffuse shader and normal source, now accurately handling alpha
...
This CL's base is the CL for taking in a diffuse shader into SkLS on the API side: https://codereview.chromium.org/2064153002
BUG=skia:5502,skia:5517
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132113002
Review-Url: https://codereview.chromium.org/2132113002
2016-07-20 11:20:30 -07:00
bungeman
1f790aaeef
Improve assert reporting.
...
Make SkASSERTF output readable.
Ensure the assert predicate is stringified once.
Make the abort code consistent.
TBR=reed
This doesn't change any public API, most of this should be privatized.
Review-Url: https://codereview.chromium.org/2161103002
2016-07-20 09:49:10 -07:00
robertphillips
ea70c4bb22
Remove SkDevice::accessRenderTarget virtual
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167723002
Review-Url: https://codereview.chromium.org/2167723002
2016-07-20 08:54:31 -07:00
reed
a2217ef965
use special-image for imagefilters and save/restore layer
...
add special virtuals to device, in preparation for using them instead of bitmap for imagefilters
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155933002
patch from issue 2155933002 at patchset 20001 (http://crrev.com/2155933002#ps20001 )
use specialimages instead of bitmaps for imagefiltering
Review-Url: https://codereview.chromium.org/2155063002
2016-07-20 06:04:34 -07:00
reed
e51c356ae4
pre-land special methods on device
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161233002
Review-Url: https://codereview.chromium.org/2161233002
2016-07-19 14:33:20 -07:00
brianosman
9ecaa1d9f0
Remove unused MakeFromTextureCopy API
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165803002
Review-Url: https://codereview.chromium.org/2165803002
2016-07-19 14:16:49 -07:00
robertphillips
e34f17d236
Make SkFont a bit more useable
...
Split out of https://codereview.chromium.org/2163483002/ (Use SkFont in GrStencilAndCoverTextContext)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163633002
Review-Url: https://codereview.chromium.org/2163633002
2016-07-19 07:59:22 -07:00
fmalita
01c97230f8
Delete the legacy SVG parser
...
Unused.
R=reed@google.com ,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154193003
CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Review-Url: https://codereview.chromium.org/2154193003
2016-07-19 06:12:54 -07:00
fmalita
fd75dd4086
Delete SkXMLPullParser
...
Unused & not being built.
R=reed@google.com ,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163463002
Review-Url: https://codereview.chromium.org/2163463002
2016-07-19 05:14:41 -07:00
fmalita
a427cc4d6b
Remove SkDOM::build(const char doc[], size_t len)
...
This flavor is unused, and we have the more general SkStream API.
R=stephana@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154733003
Review-Url: https://codereview.chromium.org/2154733003
2016-07-18 10:56:43 -07:00
brianosman
54f30c13fc
Introduce GrColorSpaceXform, for gamut conversion on textures
...
GrTextureAccess optionally includes an instance, computed from the src
and dst color spaces. In all common cases (no color space for either src
or dst, or same color space for both), no object is allocated.
This change is orthogonal to my attempts to get color space attached to
render targets - regardless of how we choose to do that, this will give
us the source color space at all points where we are connecting src to
dst.
There are many dangling injection points where I've been inserting
nullptr, but I have a record of all of them. Additionally, there are now
three places (the most common simple paths for bitmap/image rendering)
where things are plumbed enough that I expect to have access to the dst
color space (all marked with XFORMTODO).
In addition to getting the dst color space, I need to inject shader code
and uniform uploading for appendTextureLookup and friends.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154753003
Review-Url: https://codereview.chromium.org/2154753003
2016-07-18 10:53:52 -07:00
robertphillips
6451a0cea6
Add makeSpecial calls to SkGpuDevice
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161533003
Review-Url: https://codereview.chromium.org/2161533003
2016-07-18 08:31:31 -07:00
jcgregorio
eb9a84aa57
Revert of remove unused TableMaskFilter (patchset #1 id:1 of https://codereview.chromium.org/2156463002/ )
...
Reason for revert:
Needed for Android:
frameworks/base/core/jni/android/graphics/MaskFilter.cpp:5:10: fatal error: 'SkTableMaskFilter.h' file not found
Original issue's description:
> remove unused TableMaskFilter
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2156463002
>
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/59779ae8ce316bf8b8082ec2df1683ccd38161f1
TBR=reed@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review-Url: https://codereview.chromium.org/2156183002
2016-07-18 08:18:51 -07:00
bsalomon
0ae36a2ceb
In GrShape detect that stroked axis-aligned lines are rrects.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2151313002
Review-Url: https://codereview.chromium.org/2151313002
2016-07-18 07:31:13 -07:00
abarth
6fc8ff024b
Add support for Fuchsia
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2152273002
[mtklein edit from here down]
No public API changes.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/2152273002
2016-07-15 15:15:15 -07:00
reed
7503d60847
move responsibility for creating raster-device into pdf
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146333004
NOTRY=True
win failure seems unrelated
Review-Url: https://codereview.chromium.org/2146333004
2016-07-15 14:23:30 -07:00
reed
cd4051e1c4
remove unused CreateInfo flag
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2153173002
NOTRY=True
Review-Url: https://codereview.chromium.org/2153173002
2016-07-15 09:41:27 -07:00
fmalita
7445e86bac
Dust-off SkXMLParser
...
Hook up SkXMLParser to Expat, such that it can actually parse, err,
XML.
Add a trivial unit test.
R=robertphillips@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2142893006
Review-Url: https://codereview.chromium.org/2142893006
2016-07-14 19:14:06 -07:00
reed
59779ae8ce
remove unused TableMaskFilter
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2156463002
TBR=
Review-Url: https://codereview.chromium.org/2156463002
2016-07-14 19:13:20 -07:00
robertphillips
4c7e117b69
Remove dead flag from SkPictureRecorder
...
With the Chrome CL (https://codereview.chromium.org/2149533003/ (Remove use of unsupported Skia flag)) landed, this should be good to go.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2152943002
Review-Url: https://codereview.chromium.org/2152943002
2016-07-14 13:44:14 -07:00
dvonbeck
cfc79fe9a3
Added premulFourChannelColor to GrInvariantOutput
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2148273002
Review-Url: https://codereview.chromium.org/2148273002
2016-07-14 09:02:18 -07:00
bsalomon
614d8f9a3c
Remove GrWrapTextureInBitmap from public API
...
BUG=skia:5531
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147053002
Review-Url: https://codereview.chromium.org/2147053002
2016-07-13 15:42:40 -07:00
egdaniel
990dbc8879
Add Texture2D and Sampler GrSLTypes
...
These two new types are in support of Vulkan and the ability to send
separate texture and sampler uniforms to the shader. They don't really fit
well in the current system, since the current system ties together to idea
of intended use and how to emit shader code into the same GrSLType enum.
In vulkan, I want the GrGLSLSampler object to be used as a Sampler2D, but
when appending its declaration it will emit a Texture2D and sampler object.
Our query for GrSLTypeIsSamplerType refers more to the combination of texture
and sampler and not just the sampler part. The GrSLTypeIs2DTextureType query
is for is a a SamplerType that uses Texture2Ds. My new types don't really fit
into either these categories as they are just half of the whole.
In some refactoring down the road (possibly connected with SkSL), I suggest we
split apart the concept of how we intend to use a GrGLSLSampler (Sampler2D, SamplerBuffer,
etc.), from how we actually add it to the code (sampler, texture2D, sampler2D, etc.).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2143143002
Review-Url: https://codereview.chromium.org/2143143002
2016-07-13 14:09:31 -07:00
vjiaoblack
e5de130788
Added the framework for having canvas/recorder/picture record depth_set's.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2127233002
Committed: https://skia.googlesource.com/skia/+/6d3fb898d5f73a82e36f11c712a633c3921ed518
Committed: https://skia.googlesource.com/skia/+/1185d90c785f743364cc9113d7007a59af07470c
Review-Url: https://codereview.chromium.org/2127233002
2016-07-13 14:05:28 -07:00
reed
9f01276464
move GrPixelRef headers to private (as we work to eliminate them)
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150693002
Review-Url: https://codereview.chromium.org/2150693002
2016-07-13 13:43:49 -07:00
csmartdalton
97f6cd5d0f
Pre-crop filled rects to avoid scissor
...
Updates GrDrawContext to crop filled rects to the clip bounds before
creating batches for them. Also adds clipping logic to ignore scissor
when the draw falls completely inside. These two changes combined
reduce API traffic and improve batching.
In the future this can and should be improved by switching to floating
point clip boundaries, thus allowing us to throw out non pixel aligned
rectangle clips as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132073002
Committed: https://skia.googlesource.com/skia/+/7969838702135b9f127bd738728da61bc49b050a
Committed: https://skia.googlesource.com/skia/+/86de59f4a99b5f54be0483c60ff0335be55b2bdf
Review-Url: https://codereview.chromium.org/2132073002
2016-07-13 13:37:08 -07:00
liyuqian
0d2c234e44
Fix SkFixedDiv macro
...
Previously, the macro won't pass the unit test that I just added in this
CL.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2149733002
Review-Url: https://codereview.chromium.org/2149733002
2016-07-13 13:34:46 -07:00
robertphillips
dda54455a2
Remove GrLayerHoister
...
This relies on https://codereview.chromium.org/1944013002/ (Add legacy flag to allow Skia to remove Ganesh layer hoister) landing first so as to not break the DEPS roll.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1950523002
Review-Url: https://codereview.chromium.org/1950523002
2016-07-13 13:27:16 -07:00
reed
b1b12f8666
handle large conic weights
...
BUG=627414
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2142393003
Review-Url: https://codereview.chromium.org/2142393003
2016-07-13 10:56:53 -07:00
csmartdalton
485a12003a
Add resource provider flag to avoid client-side buffers
...
On some platforms, a newly-created buffer was liable to be CPU backed.
This would break code that expected a VBO (aka instanced rendering).
This change adds an optional flag to GrResourceProvider that requires
a buffer to be created in GPU memory.
It also moves the CPU backing logic into Gr land in order to properly
cache real VBOs on platforms that prefer client-side buffers.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2143333002
Review-Url: https://codereview.chromium.org/2143333002
2016-07-13 10:16:32 -07:00
robertphillips
59cf61ab03
Retract PipelineBuilder from GrClip::apply
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147443004
Review-Url: https://codereview.chromium.org/2147443004
2016-07-13 09:18:21 -07:00
mtklein
6e998e6137
Revert "Added the framework for having canvas/recorder/picture record depth_set's."
...
1-click revert failed again.
This reverts commit 1185d90c78
.
BUG=skia:
TBR=
NOTRY=true
Review-Url: https://codereview.chromium.org/2147963002
2016-07-13 09:03:48 -07:00
vjiaoblack
1185d90c78
Added the framework for having canvas/recorder/picture record depth_set's.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2127233002
Committed: https://skia.googlesource.com/skia/+/6d3fb898d5f73a82e36f11c712a633c3921ed518
Review-Url: https://codereview.chromium.org/2127233002
2016-07-13 08:35:41 -07:00
bungeman
e3aea10428
Remove user specified typeface id.
...
Now that there may be multiple font managers in a process the typeface
ids must be unique across all typefaces, not just unique within a font
manager. If two typefaces have the same id there will be issues in the
glyph cache. All existing font managers were already doing this by
calling SkFontCache::NewFontID, so centralize this in SkTypeface.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147733002
Review-Url: https://codereview.chromium.org/2147733002
2016-07-13 05:16:58 -07:00
msarett
ba3880fa6d
Revert of Pre-crop filled rects to avoid scissor (patchset #6 id:100001 of https://codereview.chromium.org/2132073002/ )
...
Reason for revert:
I think this is still causing a test failure on Chrome windows bots.
https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/243928/steps/cc_unittests%20%28with%20patch%29%20on%20Windows-7-SP1/logs/stdio
Original issue's description:
> Pre-crop filled rects to avoid scissor
>
> Updates GrDrawContext to crop filled rects to the clip bounds before
> creating batches for them. Also adds clipping logic to ignore scissor
> when the draw falls completely inside. These two changes combined
> reduce API traffic and improve batching.
>
> In the future this can and should be improved by switching to floating
> point clip boundaries, thus allowing us to throw out non pixel aligned
> rectangle clips as well.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132073002
>
> Committed: https://skia.googlesource.com/skia/+/7969838702135b9f127bd738728da61bc49b050a
> Committed: https://skia.googlesource.com/skia/+/86de59f4a99b5f54be0483c60ff0335be55b2bdf
TBR=bsalomon@google.com ,robertphillips@google.com,csmartdalton@google.com
# 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/2140253004
2016-07-12 18:48:21 -07:00
bsalomon
634b430080
Add a function to convert a texture backed SkImage to raster.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147493004
Review-Url: https://codereview.chromium.org/2147493004
2016-07-12 18:11:17 -07:00
mtklein
e504dbc092
Revert "Added the framework for having canvas/recorder/picture record depth_set's."
...
1-click revert failed.
This reverts commit 6d3fb898d5
.
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2148543002
Review-Url: https://codereview.chromium.org/2148543002
2016-07-12 15:41:08 -07:00
bungeman
7438bfc080
Factor code to rotate a canvas about a point.
...
SkMatrix::scale and ::rotate take a point around which to scale or rotate.
Canvas lacks these helpers, so the code to rotate a canvas around a
point has been duplicated many times. Factor all of these
implementations into SkCanvas::rotate.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2142033002
Review-Url: https://codereview.chromium.org/2142033002
2016-07-12 15:01:19 -07:00
vjiaoblack
6d3fb898d5
Added the framework for having canvas/recorder/picture record depth_set's.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2127233002
Review-Url: https://codereview.chromium.org/2127233002
2016-07-12 14:50:41 -07:00
csmartdalton
86de59f4a9
Pre-crop filled rects to avoid scissor
...
Updates GrDrawContext to crop filled rects to the clip bounds before
creating batches for them. Also adds clipping logic to ignore scissor
when the draw falls completely inside. These two changes combined
reduce API traffic and improve batching.
In the future this can and should be improved by switching to floating
point clip boundaries, thus allowing us to throw out non pixel aligned
rectangle clips as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132073002
Committed: https://skia.googlesource.com/skia/+/7969838702135b9f127bd738728da61bc49b050a
Review-Url: https://codereview.chromium.org/2132073002
2016-07-12 14:45:23 -07:00
msarett
aeadcdfbf2
Revert of Pre-crop filled rects to avoid scissor (patchset #6 id:100001 of https://codereview.chromium.org/2132073002/ )
...
Reason for revert:
I believe that this is breaking the roll.
https://codereview.chromium.org/2141923002
https://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/258434/steps/cc_unittests%20%28with%20patch%29%20on%20Mac-10.9/logs/stdio
Original issue's description:
> Pre-crop filled rects to avoid scissor
>
> Updates GrDrawContext to crop filled rects to the clip bounds before
> creating batches for them. Also adds clipping logic to ignore scissor
> when the draw falls completely inside. These two changes combined
> reduce API traffic and improve batching.
>
> In the future this can and should be improved by switching to floating
> point clip boundaries, thus allowing us to throw out non pixel aligned
> rectangle clips as well.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132073002
>
> Committed: https://skia.googlesource.com/skia/+/7969838702135b9f127bd738728da61bc49b050a
TBR=bsalomon@google.com ,robertphillips@google.com,csmartdalton@google.com
# 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/2145573002
2016-07-12 05:40:39 -07:00
msarett
afb8539f62
Revert of try to speed-up maprect + round2i + contains (patchset #8 id:140001 of https://codereview.chromium.org/2133413002/ )
...
Reason for revert:
Breaking the roll...
https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/253294/steps/compile%20%28with%20patch%29/logs/stdio
Original issue's description:
> try to speed-up maprect + round2i + contains
>
> We call roundOut in a few places. If we can get SkNx::Ceil we could efficiently implement that as well.
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2133413002
> CQ_INCLUDE_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/b42b785d1cbc98bd34aceae338060831b974f9c5
TBR=mtklein@google.com ,reed@google.com
# 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/2136343002
2016-07-11 14:57:26 -07:00
csmartdalton
7969838702
Pre-crop filled rects to avoid scissor
...
Updates GrDrawContext to crop filled rects to the clip bounds before
creating batches for them. Also adds clipping logic to ignore scissor
when the draw falls completely inside. These two changes combined
reduce API traffic and improve batching.
In the future this can and should be improved by switching to floating
point clip boundaries, thus allowing us to throw out non pixel aligned
rectangle clips as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2132073002
Review-Url: https://codereview.chromium.org/2132073002
2016-07-11 14:34:12 -07:00
reed
b42b785d1c
try to speed-up maprect + round2i + contains
...
We call roundOut in a few places. If we can get SkNx::Ceil we could efficiently implement that as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2133413002
CQ_INCLUDE_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2133413002
2016-07-11 13:17:35 -07:00
reed
6092b6e0e5
Revert of change mapRectScaleTranslate to pass args/ret by value (patchset #1 id:1 of https://codereview.chromium.org/2137853002/ )
...
Reason for revert:
Triggered a compiler bug on Android?
FAILED: /usr/bin/ccache /b/work/skia/platform_tools/android/bin/../toolchains/arm-r11c-14/bin/arm-linux-androideabi-g++ -MMD -MF obj/src/core/core.SkMatrix.o.d -DSK_INTERNAL -DSK_GAMMA_APPLY_TO_A8 -DQT_NO_KEYWORDS -DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0 -DSK_SUPPORT_GPU=1 -DSK_FORCE_DISTANCE_FIELD_TEXT=0 -DSK_HAS_GIF_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_TEST_QCMS -DSK_IS_BOT -DSK_CODEC_DECODES_RAW -DSK_ARM_HAS_NEON -DSK_BUILD_FOR_ANDROID -DSK_GAMMA_EXPONENT=1.4 -DSK_GAMMA_CONTRAST=0.0 -DSKIA_DLL -DSKIA_IMPLEMENTATION=1 -DSK_SUPPORT_LEGACY_CLIPTOLAYERFLAG -DNDEBUG -I../../../include/c -I../../../include/config -I../../../include/core -I../../../include/pathops -I../../../include/ports -I../../../include/private -I../../../include/utils -I../../../include/images -I../../../src/core -I../../../src/sfnt -I../../../src/image -I../../../src/opts -I../../../src/utils -I../../../include/gpu -I../../../src/gpu -I../../../platform_tools/android/third_party/cpufeatures -fPIC -g -fno-exceptions -fstrict-aliasing -Wall -Wextra -Winit-self -Wpointer-arith -Wsign-compare -Wvla -Wno-unused-parameter -Werror -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=softfp -fuse-ld=gold -O2 -std=c++11 -fno-rtti -fno-threadsafe-statics -Wnon-virtual-dtor -c ../../../src/core/SkMatrix.cpp -o obj/src/core/core.SkMatrix.o
../../../src/core/SkMatrix.cpp: In member function 'SkRect SkMatrix::mapRectScaleTranslate(SkRect) const':
../../../src/core/SkMatrix.cpp:1120:1: error: unrecognizable insn:
}
^
(insn 32 31 33 2 (set (reg:V4SF 115 [ D.83077 ])
(unspec:V4SF [
(mem/c:V4SF (reg/f:SI 104 virtual-incoming-args) [0 MEM[(const __builtin_neon_sf[4] *)&src]+0 S16 A32])
] UNSPEC_VLD1)) /b/work/skia/platform_tools/android/toolchains/arm-r11c-14/lib/gcc/arm-linux-androideabi/4.9/include/arm_neon.h:8693 -1
(nil))
../../../src/core/SkMatrix.cpp:1120:1: internal compiler error: in extract_insn, at recog.c:2202
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://source.android.com/source/report-bugs.html > for instructions.
Original issue's description:
> change mapRectScaleTranslate to pass args/ret by value
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2137853002
>
> TBR=mtklein
>
> Committed: https://skia.googlesource.com/skia/+/14dce6ed5934d7a6e1fac79f8e76e12f5670aae2
TBR=msarett@google.com ,mtklein@google.com
# 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/2139523002
2016-07-10 11:45:35 -07:00
reed
14dce6ed59
change mapRectScaleTranslate to pass args/ret by value
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2137853002
TBR=mtklein
Review-Url: https://codereview.chromium.org/2137853002
2016-07-10 11:35:03 -07:00
robertphillips
443023975e
Add choke point for modifying non-AA rect draws (e.g., applying clipping)
...
NOTREECHECKS=true
NOPRESUBMIT=true
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125333002
Committed: https://skia.googlesource.com/skia/+/e5e3a7a5203f256083d015c923cc9c662877aba9
Review-Url: https://codereview.chromium.org/2125333002
2016-07-08 14:43:04 -07:00
robertphillips
9a4cfa81de
Revert of Add choke point for modifying non-AA rect draws (e.g., applying clipping) (patchset #6 id:100001 of https://codereview.chromium.org/2125333002/ )
...
Reason for revert:
problems
Original issue's description:
> Add choke point for modifying non-AA rect draws (e.g., applying clipping)
>
> NOTREECHECKS=true
> NOPRESUBMIT=true
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125333002
>
> Committed: https://skia.googlesource.com/skia/+/e5e3a7a5203f256083d015c923cc9c662877aba9
TBR=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/2136643002
2016-07-08 13:30:04 -07:00
bungeman
7ad42cfe87
Corrected test for gcc/libc++ workaround.
...
NOTREECHECKS=true
NOTRY=true
The presubmit bot is all hung up.
Review-Url: https://codereview.chromium.org/2136613002
2016-07-08 12:25:37 -07:00
robertphillips
e5e3a7a520
Add choke point for modifying non-AA rect draws (e.g., applying clipping)
...
NOTREECHECKS=true
NOPRESUBMIT=true
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125333002
Review-Url: https://codereview.chromium.org/2125333002
2016-07-08 12:00:07 -07:00
bsalomon
6cc9006a90
Use clipped bounds for reordering decisions
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2137543002
NOTREECHECKS=true
NOPRESUBMIT=true
Review-Url: https://codereview.chromium.org/2137543002
2016-07-08 11:31:23 -07:00
bsalomon
bd2bbe4a17
Don't scissor draws overlapping the render target's edges
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2135673002
Review-Url: https://codereview.chromium.org/2135673002
2016-07-08 07:36:42 -07:00
bsalomon
f48c62fa6a
Promote the GCC/libc++/<memory> 'typedef float float32_t' workaround to SkTypes.h
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2135453002
Review-Url: https://codereview.chromium.org/2135453002
2016-07-08 03:28:42 -07:00
reed
ea5a6513c0
make some canvas utils virtual (for proxy based subclasses)
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2130973002
Review-Url: https://codereview.chromium.org/2130973002
2016-07-07 16:44:27 -07:00
reed
63f30d9049
fix typos and capitalization on drawTextRSXform CL
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2123923006
Review-Url: https://codereview.chromium.org/2123923006
2016-07-07 16:32:51 -07:00
reed
45561a0b15
drawTextRSXform
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2130643004
Review-Url: https://codereview.chromium.org/2130643004
2016-07-07 12:47:17 -07:00
csmartdalton
a7f29640f6
Begin instanced rendering for simple shapes
...
Adds a module that performs instanced rendering and starts using it
for a select subset of draws on Mac GL platforms. The instance
processor can currently handle rects, ovals, round rects, and double
round rects. It can generalize shapes as round rects in order to
improve batching. The instance processor also employs new drawing
algorithms, irrespective of instanced rendering, that improve GPU-side
performance (e.g. sample mask, different triangle layouts, etc.).
This change only scratches the surface of instanced rendering. The
majority of draws still only have one instance. Future work may
include:
* Passing coord transforms through the texel buffer.
* Sending FP uniforms through instanced vertex attribs.
* Using instanced rendering for more draws (stencil writes,
drawAtlas, etc.).
* Adding more shapes to the instance processor’s repertoire.
* Batching draws that have mismatched scissors (analyzing draw
bounds, inserting clip planes, etc.).
* Bindless textures.
* Uber shaders.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2066993003
Committed: https://skia.googlesource.com/skia/+/42eafa4bc00354b132ad114d22ed6b95d8849891
Review-Url: https://codereview.chromium.org/2066993003
2016-07-07 08:49:11 -07:00
mtklein
e5fb9c8079
centralize VECTORCALL as SK_VECTORCALL
...
Gonna start using this, might as well define it once centrally.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126253002
No public API changes.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/2126253002
2016-07-07 08:12:09 -07:00
bsalomon
a7d85ba138
Add gm that tests shaded stroked rectangles.
...
Fix GPU handling of previously untested cases.
Move rect->path fallback from SkGpuDevice to GrDrawContext.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125663003
Review-Url: https://codereview.chromium.org/2125663003
2016-07-06 11:54:59 -07:00
csmartdalton
0d28e574ac
Fix caching of sample locations
...
The original caching logic for sample locations wishfully assumed that
the GPU would always use the same sample pattern for render targets
that had the same number of samples. It turns out we can't rely on
that. This change improves the caching logic to handle mismatched
simple patterns with the same count, and adds a unit test that
emulates different sample patterns observed on real hardware.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2111423002
Committed: https://skia.googlesource.com/skia/+/09d49a3bfe2d1e652a648ce1ea0962b38d10d166
Review-Url: https://codereview.chromium.org/2111423002
2016-07-06 09:59:43 -07:00
robertphillips
01a19504c4
Move GrNonAAFillRectPerspectiveBatch to its own file
...
Get this out of the way of the upcoming changes (and add a test for it)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2108403005
Review-Url: https://codereview.chromium.org/2108403005
2016-07-06 09:58:57 -07:00
reed
41c27e15ec
Experiment: add flag for finish-recording to return null
...
BUG=skia:5495
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2106843004
Review-Url: https://codereview.chromium.org/2106843004
2016-07-06 09:29:17 -07:00
liyuqian
97a0918715
Try fix the mac build bot after removing Android SampleApp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2117793002
Review-Url: https://codereview.chromium.org/2117793002
2016-07-06 07:52:08 -07:00
fmalita
03912f141f
Document SkSurface::MakeRaster's memory initialization
...
So clients don't go clearing w/ SK_ColorTRANSPARENT unnecessarily.
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2066903003
Review-Url: https://codereview.chromium.org/2066903003
2016-07-06 06:22:06 -07:00
reed
2dcb615c6f
make setScaleTranslate public
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2122093002
TBR=
Review-Url: https://codereview.chromium.org/2122093002
2016-07-05 20:10:42 -07:00
ksakamoto
ec7f2ac728
Revert of Begin instanced rendering for simple shapes (patchset #20 id:380001 of https://codereview.chromium.org/2066993003/ )
...
Reason for revert:
This caused static initializer regressions in Chromium (crbug.com/625728).
Relevant build logs here:
Linux:
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/21849
Mac:
https://build.chromium.org/p/chromium/builders/Mac/builds/17350
Relevant lines from the error log:
Linux:
# InstanceProcessor.cpp GrUniqueKey::GenerateDomain()
# InstanceProcessor.cpp gr_instanced::kShapeBufferDomain
FAILED linux-release-64/sizes/nacl_helper-si/initializers: actual 8, expected 7, better lower
FAILED linux-release-64/sizes/chrome-si/initializers: actual 8, expected 7, better lower
Mac:
FAILED mac-release/sizes/chrome-si/initializers: actual 2, expected 0, better lower
Original issue's description:
> Begin instanced rendering for simple shapes
>
> Adds a module that performs instanced rendering and starts using it
> for a select subset of draws on Mac GL platforms. The instance
> processor can currently handle rects, ovals, round rects, and double
> round rects. It can generalize shapes as round rects in order to
> improve batching. The instance processor also employs new drawing
> algorithms, irrespective of instanced rendering, that improve GPU-side
> performance (e.g. sample mask, different triangle layouts, etc.).
>
> This change only scratches the surface of instanced rendering. The
> majority of draws still only have one instance. Future work may
> include:
>
> * Passing coord transforms through the texel buffer.
> * Sending FP uniforms through instanced vertex attribs.
> * Using instanced rendering for more draws (stencil writes,
> drawAtlas, etc.).
> * Adding more shapes to the instance processor’s repertoire.
> * Batching draws that have mismatched scissors (analyzing draw
> bounds, inserting clip planes, etc.).
> * Bindless textures.
> * Uber shaders.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2066993003
>
> Committed: https://skia.googlesource.com/skia/+/42eafa4bc00354b132ad114d22ed6b95d8849891
NOTREECHECKS=true
TBR=bsalomon@google.com ,egdaniel@google.com,robertphillips@google.com,csmartdalton@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review-Url: https://codereview.chromium.org/2123693002
2016-07-05 03:54:53 -07:00
rmistry
42e6798696
Revert of Fix caching of sample locations (patchset #3 id:40001 of https://codereview.chromium.org/2111423002/ )
...
Reason for revert:
Seems to be causing Chromium roll failures:
* https://codereview.chromium.org/2120373003
* https://codereview.chromium.org/2117193002
* https://codereview.chromium.org/2124653002
Original issue's description:
> Fix caching of sample locations
>
> The original caching logic for sample locations wishfully assumed that
> the GPU would always use the same sample pattern for render targets
> that had the same number of samples. It turns out we can't rely on
> that. This change improves the caching logic to handle mismatched
> simple patterns with the same count, and adds a unit test that
> emulates different sample patterns observed on real hardware.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2111423002
>
> Committed: https://skia.googlesource.com/skia/+/09d49a3bfe2d1e652a648ce1ea0962b38d10d166
TBR=bsalomon@google.com ,csmartdalton@google.com
# 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/2120403002
2016-07-04 17:45:06 -07:00
csmartdalton
09d49a3bfe
Fix caching of sample locations
...
The original caching logic for sample locations wishfully assumed that
the GPU would always use the same sample pattern for render targets
that had the same number of samples. It turns out we can't rely on
that. This change improves the caching logic to handle mismatched
simple patterns with the same count, and adds a unit test that
emulates different sample patterns observed on real hardware.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2111423002
Review-Url: https://codereview.chromium.org/2111423002
2016-07-04 15:55:17 -07:00
reed
2b2810b4eb
all dumpcanvas to be built in release
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2123633002
TBR=
Review-Url: https://codereview.chromium.org/2123633002
2016-07-04 14:28:32 -07:00
csmartdalton
42eafa4bc0
Begin instanced rendering for simple shapes
...
Adds a module that performs instanced rendering and starts using it
for a select subset of draws on Mac GL platforms. The instance
processor can currently handle rects, ovals, round rects, and double
round rects. It can generalize shapes as round rects in order to
improve batching. The instance processor also employs new drawing
algorithms, irrespective of instanced rendering, that improve GPU-side
performance (e.g. sample mask, different triangle layouts, etc.).
This change only scratches the surface of instanced rendering. The
majority of draws still only have one instance. Future work may
include:
* Passing coord transforms through the texel buffer.
* Sending FP uniforms through instanced vertex attribs.
* Using instanced rendering for more draws (stencil writes,
drawAtlas, etc.).
* Adding more shapes to the instance processor’s repertoire.
* Batching draws that have mismatched scissors (analyzing draw
bounds, inserting clip planes, etc.).
* Bindless textures.
* Uber shaders.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2066993003
Review-Url: https://codereview.chromium.org/2066993003
2016-06-30 12:15:49 -07:00
halcanary
9f4b332f59
SkPDF: allow overriding Producer metadata
...
I recommend not using this functionality.
Also, some documentation.
BUG=skia:5436
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2074583003
Review-Url: https://codereview.chromium.org/2074583003
2016-06-30 08:22:04 -07:00
reed
d922c33a8e
inline very common intersect+rect_rgn
...
Extracted from previous compound CL (with other changes).
This is the very common case for clips, and inlining this eliminates a series of function calls.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2116513002
TBR=mtklein
Review-Url: https://codereview.chromium.org/2116513002
2016-06-30 07:47:34 -07:00