robertphillips
869c5e82a7
Dependencies are now added between the drawTargets in GrPipeline
...
This CL relies on https://codereview.chromium.org/1414773002/ (Add the machinery to GrDrawTarget to enable topological sorting)
BUG=skia:4094
Committed: https://skia.googlesource.com/skia/+/45a1c34f607a970933e5cd05e1df6cd8090db1be
Review URL: https://codereview.chromium.org/1414903002
2015-10-22 05:19:50 -07:00
bsalomon
045802dbb7
Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
...
Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
Committed: https://skia.googlesource.com/skia/+/1a197ea31e0aac7ea312e9a6c0d9f5df626b0350
Review URL: https://codereview.chromium.org/1409163002
2015-10-20 07:58:01 -07:00
Brian Salomon
bc0bcc08b3
Revert recent CLs around GrTextureMaker/GrTextureParamsAdjuster
...
Review URL: https://codereview.chromium.org/1411353002 .
2015-10-19 15:12:32 -04:00
bsalomon
2fc11d39d1
Move definitions of GrGL basic types (e.g. GrGLenum) to their own header.
...
Review URL: https://codereview.chromium.org/1410333003
2015-10-19 09:03:23 -07:00
bsalomon
1a197ea31e
Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
...
Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
Review URL: https://codereview.chromium.org/1409163002
2015-10-19 08:24:09 -07:00
robertphillips
77a2e52c7d
Remove DrawingMgr shims from GrContext
...
BUG=skia:4094
Review URL: https://codereview.chromium.org/1413673002
2015-10-17 07:43:27 -07:00
egdaniel
91957941ce
Revert of Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what… (patchset #4 id:60001 of https://codereview.chromium.org/1409163002/ )
...
Reason for revert:
breaking nanobench
Original issue's description:
> Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
>
> Committed: https://skia.googlesource.com/skia/+/fcffaf22d697f06f903c3193308f9dc54a959f79
TBR=reed@google.com ,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1409923003
2015-10-16 13:59:14 -07:00
bsalomon
fcffaf22d6
Rewrite GrTextureMaker to disentangle bitmap case from base class and give GPU object a say in what copying needs to be done.
...
Review URL: https://codereview.chromium.org/1409163002
2015-10-16 13:35:10 -07:00
robertphillips
a106c62753
Loosen requirement that there be only one GrDrawTarget
...
BUG=skia:4094
Review URL: https://codereview.chromium.org/1406173003
2015-10-16 09:07:06 -07:00
robertphillips
2e1e51f049
GrDrawContext now holds GrRenderTarget pointer
...
Review URL: https://codereview.chromium.org/1404823005
2015-10-15 08:01:49 -07:00
kkinnunen
0adfffba1b
Fix dm with Chromium command buffer driver
...
Fix a crash in dm when run with Chromium command buffer driver.
Also removes glCopyTextureCHROMIUM, it does not seem to be used.
This is removed on the grounds that it would need similar change,
if it was used. The variable fCopyTextureCHROMIUM does not seem to
be populated in the Chromium side, either.
BUG=skia:2992
Review URL: https://codereview.chromium.org/1389213004
2015-10-13 12:58:38 -07:00
bsalomon
afa95e270c
Remove image usage type enum. Use GrTextureParams instead.
...
BUG=skia:
Review URL: https://codereview.chromium.org/1404433002
2015-10-12 10:39:46 -07:00
bsalomon
f276ac5c16
Move functions from SkGr to SkGrPriv.h
...
Review URL: https://codereview.chromium.org/1397123002
2015-10-09 13:36:42 -07:00
cdalton
8585dd26bf
Updates nvpr text blobs to not store a direct reference to the
...
per-glyph GPU path object, but rather store a key for looking it up in
the resource cache. This allows the cache to purge glyphs when needed.
Also indirectly fixes a memory leak that was introduced with nvpr text
blobs.
BUG=skia:
Review URL: https://codereview.chromium.org/1374853004
2015-10-08 08:04:09 -07:00
bsalomon
4a33952961
Bye bye processor data manager.
...
Review URL: https://codereview.chromium.org/1388113002
2015-10-06 08:40:51 -07:00
robertphillips
2d70dcbe5c
Dynamically allocate the GrDrawContexts
...
This CL moves the allocation and storage of the GrTextContexts into the DrawingManager. The GrDrawContexts now just get their GrTextContext from the DrawingManager.
Review URL: https://codereview.chromium.org/1375153007
2015-10-06 07:38:23 -07:00
bsalomon
473addf176
Remove separate cache for clip mask textures
...
Review URL: https://codereview.chromium.org/1377943003
2015-10-02 07:49:06 -07:00
vbuzinov
3e77ba96d5
Implement stencil clipping in mixed sampled render targets
...
This change enables multisampled clipping for mixed sampled
render targets. Previously clipping in mixed samples config
behaved the same as in the gpu config.
In order to retrofit non-MSAA draw methods, programmable sample
locations are used in order to colocate all samples at (0.5, 0.5).
Requires support for NV_sample_locations.
BUG=skia:4399
Review URL: https://codereview.chromium.org/1232103002
2015-09-30 23:02:06 -07:00
reed
b39abc4d76
remove unused helper function
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1376603006
2015-09-29 18:27:59 -07:00
herb
62a69c26b3
Move Mutexy things to private.
...
There is no API change.
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1368333004
2015-09-29 11:47:45 -07:00
bsalomon
e25eea4b36
Use child processors to implement compose color filter.
...
Review URL: https://codereview.chromium.org/1368423003
2015-09-29 06:38:55 -07:00
bsalomon
f1b7a1d828
Make skpaint->grpaint flow work for composing draws (verts and atlas)
...
One side effect is that the SkShader's (or implicit shader's) fragment processor is responsible for the transition from an unpremul paint color to a premul color.
Review URL: https://codereview.chromium.org/1348583002
2015-09-28 06:26:29 -07:00
bsalomon
aca31fea8c
Stop supporting HW dither
...
Review URL: https://codereview.chromium.org/1359833004
2015-09-22 11:38:46 -07:00
bsalomon
87ba62e67c
Replace GrExtractAlphaFragmentProcessor with DstIn compose processor
...
Review URL: https://codereview.chromium.org/1347943003
2015-09-22 06:42:00 -07:00
mdempsky
106b12427e
Remove SkNEW and SkDELETE macros
...
This CL removes the uses of SkNEW that have resprouted since commit
385fe4d
, and removes the macros entirely now that Android and Chromium
have been cleaned up to no longer depend on them.
A bunch of files implicitly depend on #include <new> from SkPostConfig.h
still though, so keep that for now. To be fixed in a followup CL.
[mtklein mucking around]
Only public API removed.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1360653004
2015-09-22 06:10:35 -07:00
halcanary
0fc1dbe592
SK_API for include/gpu/gl/GrGLInterface.h
...
Review URL: https://codereview.chromium.org/1357823003
2015-09-21 08:22:19 -07:00
reed
3322a8137d
share code between SkGr and Cacherator
...
BUG=skia:
Review URL: https://codereview.chromium.org/1351533004
2015-09-16 10:09:24 -07:00
bsalomon
ae4738f677
Create fragment processor for performing input color blend with child processor
...
The new FP is used to implement SkXM::Mode color filters and SkXM::Mode image filters. Also, these now support all advanced SkXM::Mode xfermodes.
Review URL: https://codereview.chromium.org/1334293003
2015-09-15 15:33:27 -07:00
ericrk
0a5fa484fd
Add onMemoryDump to GrContext
...
Adds an entry point to GrContext to allow enumeration and tracing of GPU resources
via the newly added SkTraceMemoryDump.
Plan is for Chrome to call this on each of its GrContexts.
Dumps both the total size of GPU resources, as well as the total purgeable size.
BUG=526261
Review URL: https://codereview.chromium.org/1313743002
2015-09-15 14:16:10 -07:00
egdaniel
723b0501e2
Add support for blending of LCD for all blend modes.
...
BUG=skia:
Review URL: https://codereview.chromium.org/1313623002
2015-09-15 09:31:40 -07:00
bsalomon
506c802a3d
Add helper for creating leaf FPs inside GrFP::TestCreate functions
...
Review URL: https://codereview.chromium.org/1334273003
2015-09-14 13:16:26 -07:00
egdaniel
ec00d94199
Move some of the adding stencil attachment logic of Gpu and into Render Target.
...
The new flow of calls for attaching a Stencil looks like:
Client
rt->attachStencilAttachment()
gpu->getStencilAttachment()
glgpu->createStencilAttachment()
glrt->completeStencilAttachment() //actually attaches
BUG=skia:
Review URL: https://codereview.chromium.org/1333383002
2015-09-14 12:56:10 -07:00
bsalomon
b5b603241a
Test that GrFragmentProcessors work without input colors.
...
Committed: https://skia.googlesource.com/skia/+/72c58e7052af2a0855412ce4b249f977069db751
Review URL: https://codereview.chromium.org/1341853002
2015-09-14 12:26:34 -07:00
bsalomon
59ce45fe79
Revert of Test that GrFragmentProcessors work without input colors. (patchset #2 id:20001 of https://codereview.chromium.org/1341853002/ )
...
Reason for revert:
Need to fix up more processor subclasses.
Original issue's description:
> Test that GrFragmentProcessors work without input colors.
>
> Committed: https://skia.googlesource.com/skia/+/72c58e7052af2a0855412ce4b249f977069db751
TBR=joshualitt@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1338403003
2015-09-14 12:01:42 -07:00
bsalomon
72c58e7052
Test that GrFragmentProcessors work without input colors.
...
Review URL: https://codereview.chromium.org/1341853002
2015-09-14 11:55:52 -07:00
hendrikw
eddbefb4a5
skia: Add ANGLE with GL backend to nanobench/DM
...
This will allow us to test this without hacking it in, might be useful
for others too.
Review URL: https://codereview.chromium.org/1338003002
2015-09-11 13:07:29 -07:00
reed
85d9178832
Use SkImageCacherator in SkImages
...
Possible follow-up changes to consider
1. Roll SkImage_Raster and _Gpu into _Generator, where the generator (or cacherator) is backed by a pre-existing texture or raster.
2. Evolve SkImageUsageType into a verb requiring stretching, and have the caller (common code) digest the caps() and usage, so that subclasses are just told what to do (stretch or not)
3. Common code/utility to convert an unstretched texture into a stretch one (and cache it) if the generator can only make an unstretched one.
BUG=skia:
Review URL: https://codereview.chromium.org/1282363002
2015-09-10 14:33:38 -07:00
joshualitt
f238469b05
Late creation of GrPathProcessor
...
BUG=skia:
Review URL: https://codereview.chromium.org/1337513002
2015-09-10 11:00:51 -07:00
bsalomon
6c6f65885b
Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU raster threads accessing the same GrContext to read back GPU input data
...
BUG=chromium:524717
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/eb662bc407cec0585a821946fef123102cae64db
Review URL: https://codereview.chromium.org/1329313002
2015-09-10 08:12:46 -07:00
bsalomon
32ab260ee1
Revert of Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU raster threads accessin… (patchset #1 id:1 of https://codereview.chromium.org/1329313002/ )
...
Reason for revert:
breaking the bots
Original issue's description:
> Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU raster threads accessing the same GrContext to read back GPU input data
>
> BUG=chromium:524717
>
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/eb662bc407cec0585a821946fef123102cae64db
TBR=reed@google.com ,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:524717
Review URL: https://codereview.chromium.org/1334603002
2015-09-09 18:57:49 -07:00
bsalomon
eb662bc407
Add a mutex to GrContext::readSurfacePixels to protect against multiple CPU raster threads accessing the same GrContext to read back GPU input data
...
BUG=chromium:524717
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1329313002
2015-09-09 18:05:03 -07:00
bsalomon
cb1ccfd205
SK_API on GrWrapTextureInBitmap
...
BUG=chromium:524717
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1334563002
2015-09-09 14:51:52 -07:00
wangyix
809e5afdd9
Brian requested a new namespace for factories that create fragment processors that combine 2 things with a xfermode. This way, we can change the implementation of these factories in the future to not use GrComposeEffect if desired.
...
BUG=skia:4182
Review URL: https://codereview.chromium.org/1306163005
2015-09-09 12:58:32 -07:00
joshualitt
af2533a165
Make GrProcessorDataManager a noop
...
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1323963003
2015-09-09 10:00:12 -07:00
bsalomon
1fcc01c415
GrPathRangeBatch
...
BUG=skia:
Review URL: https://codereview.chromium.org/1315563003
2015-09-09 09:48:06 -07:00
reed
43fe6185c5
refactor parts of SkGr.cpp for use by SkImages
...
BUG=skia:
Review URL: https://codereview.chromium.org/1315353006
2015-09-08 08:37:36 -07:00
bungeman
a3434d83cf
Add skstd::unique_ptr and use it.
...
TBR=bsalomon@google.com
The one gpu include change is just to fix swap in implementation.
Review URL: https://codereview.chromium.org/1330503006
2015-09-07 12:45:52 -07:00
jvanverth
5a42c33f27
Add new surface flag
...
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/1320533005
2015-09-02 12:26:10 -07:00
joshualitt
dac7005b87
Remove GrGpuTraceMarker hooks until we rethink the design
...
TBR=bsalomon@google.com
BUG=526308
Review URL: https://codereview.chromium.org/1323823003
2015-09-01 08:19:46 -07:00
bsalomon
c21b09eec9
Change SkShader;asFragmentProcessor signature to no longer take skpaint\grcolor*
...
Committed: https://skia.googlesource.com/skia/+/ecfdc251be71f3d634e76afdd6375bf55fc061aa
Review URL: https://codereview.chromium.org/1316513002
2015-08-28 18:46:56 -07:00