mtklein
45e58c8807
Move sRGB <-> linear conversion components to their own files.
...
This makes them a little easier to use outside SkColorXform code.
I've added some notes about how best to use them and their eccentricities, and added a test.
Ultimately any software sRGB <-> linear conversion should funnel somehow through here.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2128893002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/2128893002
2016-07-07 14:47:36 -07:00
reed
6d2c3e7da6
add bounds to textblob
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2124113003
TBR=
Review-Url: https://codereview.chromium.org/2124113003
2016-07-07 14:10:14 -07:00
hush
c79fc33d3e
Revert of Better encapsulate oval/rrect batchs. (patchset #5 id:80001 of https://codereview.chromium.org/2104423003/ )
...
Reason for revert:
This CL is suspected to break compilation on arm64.
https://build.chromium.org/p/chromium.android/builders/Android%20arm64%20Builder%20%28dbg%29/builds/5851/steps/compile/logs/stdio
Original issue's description:
> Better encapsulate oval/rrect batchs.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2104423003
>
> Committed: https://skia.googlesource.com/skia/+/5fd209e8ee477c703bc5c11b008f247d515fc0fc
> Committed: https://skia.googlesource.com/skia/+/7f06c6947a3bef78dc57b9252779567c33604c90
> Committed: https://skia.googlesource.com/skia/+/11bf8b2eae7d1780cb969146422a2ab3b933047a
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/2121313004
2016-07-07 13:58:39 -07:00
brianosman
180500e5f1
Revert of Use sRGB pixel config for ARGB masks (color emoji) (patchset #1 id:1 of https://codereview.chromium.org/2129913004/ )
...
Reason for revert:
Color text rendering failing on ANGLE
Original issue's description:
> Use sRGB pixel config for ARGB masks (color emoji)
>
> Fixes over-bright color emoji and GM:colortype in sRGB mode
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129913004
>
> Committed: https://skia.googlesource.com/skia/+/920af9fac3d9e275a93910d9c626ee7bc23ed17a
TBR=bungeman@google.com ,jvanverth@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/2128583007
2016-07-07 13:18: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
halcanary
a76a10b730
SkPDF: Fix encoding of unichr outside of basic plane
...
In ToUnicode table, write unicode codepoints as one or two UTF16BE
values, rather than a single hex, as the standard requires.
Factor out uint16 -> big-endian hex code.
SkUtils is now a namespace.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2120533002
Review-Url: https://codereview.chromium.org/2120533002
2016-07-07 12:31:55 -07:00
halcanary
492d6b5b06
SkPDF: fix PDFA-only metadata error
...
Review-Url: https://codereview.chromium.org/2119883002
2016-07-07 12:28:31 -07:00
brianosman
920af9fac3
Use sRGB pixel config for ARGB masks (color emoji)
...
Fixes over-bright color emoji and GM:colortype in sRGB mode
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129913004
Review-Url: https://codereview.chromium.org/2129913004
2016-07-07 12:22:39 -07:00
egdaniel
27bb284739
Check granularity in render pass bounds
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126303002
Review-Url: https://codereview.chromium.org/2126303002
2016-07-07 11:58:35 -07:00
jvanverth
db37909347
Add offsets to GrVkBuffer.
...
BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2127183002
Review-Url: https://codereview.chromium.org/2127183002
2016-07-07 11:18:46 -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
jvanverth
d5f6e9a759
Only check resource tracking on program shutdown, not context shutdown
...
BUG=skia:5496
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2128273002
Review-Url: https://codereview.chromium.org/2128273002
2016-07-07 08:21:48 -07:00
egdaniel
6e46eea63e
Fix vulkan compile
...
TBR=jvanverth@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2122263003
Review-Url: https://codereview.chromium.org/2122263003
2016-07-07 08:12:33 -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
egdaniel
75d2bfceae
Correctly handle mat2x2 in Vulkan
...
BUG=skia:5497
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129953002
Review-Url: https://codereview.chromium.org/2129953002
2016-07-07 08:04:08 -07:00
bsalomon
11bf8b2eae
Better encapsulate oval/rrect batchs.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2104423003
Committed: https://skia.googlesource.com/skia/+/5fd209e8ee477c703bc5c11b008f247d515fc0fc
Committed: https://skia.googlesource.com/skia/+/7f06c6947a3bef78dc57b9252779567c33604c90
Review-Url: https://codereview.chromium.org/2104423003
2016-07-07 07:55:24 -07:00
robertphillips
3950f0d723
Remove fColor from PathRenderer DrawPathArgs struct
...
This was getting in the way of other refactorings.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126083002
Review-Url: https://codereview.chromium.org/2126083002
2016-07-07 07:33:13 -07:00
jvanverth
82356cc41f
Pull out freelist allocation from GrVkSubHeap
...
BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2128673002
Review-Url: https://codereview.chromium.org/2128673002
2016-07-07 07:16:42 -07:00
ethannicholas
552882f768
fix for SkSL producing invalid branch after an OpKill
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129913002
Review-Url: https://codereview.chromium.org/2129913002
2016-07-07 06:30:48 -07:00
dvonbeck
3f58cd0eb8
Abstracted diffuse color map out of SkLightingShaderImpl into a generic SkShader
...
Will not run until after landing https://codereview.chromium.org/2106893003/
This CL's base is the CL for the addition of NormalSource to the API: https://codereview.chromium.org/2063793002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2062703003
Review-Url: https://codereview.chromium.org/2062703003
2016-07-06 20:03:46 -07:00
bsalomon
28ef39624a
Hide NonAAStrokeRectBatch Geometry class and cleanup class.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126893002
Review-Url: https://codereview.chromium.org/2126893002
2016-07-06 18:56:04 -07:00
egdaniel
7e8cc21d57
Fix bounds computation for non-aa hairlines when snapping to pixel centers
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126913002
Review-Url: https://codereview.chromium.org/2126913002
2016-07-06 14:38:34 -07:00
jvanverth
47e3dbaab5
Deleting void pointers is bad, mmmkay?
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129483003
Review-Url: https://codereview.chromium.org/2129483003
2016-07-06 14:26:53 -07:00
liyuqian
2edb0f4a02
More accurate render time and continuous fresh
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129613002
Review-Url: https://codereview.chromium.org/2129613002
2016-07-06 14:11:32 -07:00
dvonbeck
5b794fad18
API change to allow for NormalSource selection at the user level.
...
This CL's base is the CL for CPU handling: https://codereview.chromium.org/2050773002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2063793002
Review-Url: https://codereview.chromium.org/2063793002
2016-07-06 13:58:36 -07:00
bsalomon
8b7a9e1e5a
Hide geometry class in AAStrokeRectBatch and remove unused Append function.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2119813004
Review-Url: https://codereview.chromium.org/2119813004
2016-07-06 13:06:23 -07:00
jvanverth
069c464a6b
Vulkan fixes for TesselatingPathRenderer test
...
- Be sure to release all secondard command buffers on shutdown
- Allow mapping of static buffers
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2123323002
Review-Url: https://codereview.chromium.org/2123323002
2016-07-06 12:56:11 -07:00
lsalzman
a4b8704e76
check for zero scale in SkDraw::ComputeResScaleForStroking
...
If the transform used to compute the res scale has both 0 scale and skew,
then it will currently compute a 0 res scale. This causes getFillPath
to trigger an assertion while using SkStroke since that can't handle
a 0 res scale.
Downstream Firefox bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1284356
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125933003
Review-Url: https://codereview.chromium.org/2125933003
2016-07-06 12:19:56 -07:00
egdaniel
5c4a381b31
Grow descriptor pools by 1.5
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2121243002
Review-Url: https://codereview.chromium.org/2121243002
2016-07-06 12:00:12 -07:00
dvonbeck
ca9eeab0ea
Fixed crash when RunInSeriesFP's color input is nil
...
SeriesFragmentProcessor would call emitChild with "" input color as opposed to nil input color when ginven a nil input color.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2106893003
Review-Url: https://codereview.chromium.org/2106893003
2016-07-06 12:00:06 -07:00
bungeman
61457a6b80
Add gm for various font rendering combinations.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2080453002
Review-Url: https://codereview.chromium.org/2080453002
2016-07-06 11:55:05 -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
bungeman
52fa668dc5
Update rebaseline instructions.
...
BUG=skia:2805
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=2127953002
Review-Url: https://codereview.chromium.org/2127953002
2016-07-06 10:19:54 -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
csmartdalton
afd6340d56
Check fIgnoresCoverage in GrPipeline::AreEqual
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2120153002
Review-Url: https://codereview.chromium.org/2120153002
2016-07-06 09:47:38 -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
jvanverth
7ec9241330
Add resource tracking output and command buffer recycling
...
BUG=skia:5042
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2115993002
Review-Url: https://codereview.chromium.org/2115993002
2016-07-06 09:24:57 -07:00
djsollen
d5fd2ff490
Compile Vulkan when building for the Android framework.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129523002
Review-Url: https://codereview.chromium.org/2129523002
2016-07-06 09:17:36 -07:00
egdaniel
2f5792a06c
Fix vulkan image sampling
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2118733005
Review-Url: https://codereview.chromium.org/2118733005
2016-07-06 08:51:23 -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
bsalomon
4be9a30aed
Increase batching for AA fill rects.
...
This allows batching of rects provided without a local matrix when local coords are required and when the view matrix changes.
It also allows batching of rects with a local matrix with rects without a local matrix.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2116823002
Committed: https://skia.googlesource.com/skia/+/e525ecaf63f225f1da6e9834f7a291c06ad44d23
Review-Url: https://codereview.chromium.org/2116823002
2016-07-06 07:03:26 -07:00
ethannicholas
8e5a588ab3
fix for Clang 3.8 warning in SkSL
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2118033002
Review-Url: https://codereview.chromium.org/2118033002
2016-07-06 06:55:44 -07:00
benjaminwagner
c3ea34b1ae
Blacklist fontscalerdistortable on Win8.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=2109583003
Review-Url: https://codereview.chromium.org/2109583003
2016-07-06 06:55:04 -07:00
bsalomon
9c67381dbc
Enlarge strokerect GM size to reveal hidden content
...
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2126723002
Review-Url: https://codereview.chromium.org/2126723002
2016-07-06 06:30:36 -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
pdr
1e2a702c19
Update dev docs to reference the new skia debugger (skiaserve)
...
This patch adds a new markdown file describing the new debugger along
with instructions on running it locally and a sweet screenshot. The
screenshot has been sized to not be clipped when viewed in production.
The old documentation for the qt-based debugger has been marked as
deprecated and all docs referencing the old debugger have been updated.
BUG=skia:5493
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2121673002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=2121673002
Review-Url: https://codereview.chromium.org/2121673002
2016-07-06 06:10:25 -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