aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects/GrBitmapTextGeoProc.h
Commit message (Collapse)AuthorAge
* Revert "Change how vertex/instance attributes are handled in geometry ↵Gravatar Mike Klein2018-06-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | processors." This reverts commit 19c1233c447f625c2522e7ecd0a0adecc629bb2f. Reason for revert: want to make sure Google3 can roll Original change's description: > Change how vertex/instance attributes are handled in geometry processors. > > * No longer register vertex/instance attributes on base class, just counts > > * Separate instance and vertex attributes and remove InputRate and offset > > * Make attributes constexpr where possible > > Change-Id: I1f1d5e772fa177a96d2aeb805aab7b69f35bfae6 > Reviewed-on: https://skia-review.googlesource.com/132405 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Chris Dalton <csmartdalton@google.com> TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com Change-Id: I4800632515e14fbf54af52826928ac915657b59f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/135661 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Change how vertex/instance attributes are handled in geometry processors.Gravatar Brian Salomon2018-06-18
| | | | | | | | | | | | | * No longer register vertex/instance attributes on base class, just counts * Separate instance and vertex attributes and remove InputRate and offset * Make attributes constexpr where possible Change-Id: I1f1d5e772fa177a96d2aeb805aab7b69f35bfae6 Reviewed-on: https://skia-review.googlesource.com/132405 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* Add GPU perspective support for color emojiGravatar Jim Van Verth2018-05-24
| | | | | | | | | | Will also warp orthogonal bitmaps to handle skew and rotate transforms. Bug: skia:7985 Change-Id: Ib0d5476dd68603354be90c8d404f1e5140d63a0c Reviewed-on: https://skia-review.googlesource.com/129480 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix check for valid proxies returned by AtlasManager.Gravatar Jim Van Verth2018-05-16
| | | | | | | | | | | | Also renames a lot of variables to make it clearer that getProxies() returns the number of instantiated proxies, not the number of all proxies. Bug: skia: Change-Id: Ifbc910cbd6635dccdb4e7f0df2e69a0f341130af Reviewed-on: https://skia-review.googlesource.com/128660 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Separate creation time & flush time behavior in GrDrawOpAtlas (take 3)Gravatar Robert Phillips2018-03-01
| | | | | | | | | | | | | | | | | | | | | | | | | This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache. For the GrDrawOpAtlas: At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated. The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time. During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive. The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas It now carries a GrProxyProvider for when it needs to create an atlas It passes in a GrResourceProvider* at flush time to allow instantiation. It does not, yet, allocate that GrDrawOpAtlases it might ever require. TBR=bsalomon@google.com Change-Id: I276d339d81e7b709140e082a7b58c5584f73ab70 Reviewed-on: https://skia-review.googlesource.com/111100 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Revert "Revert "Allow GrDrawOpAtlas to grow as needed""Gravatar Jim Van Verth2017-09-18
| | | | | | | | Bug: skia:3550 Change-Id: I11a3b39ed7470542447f0e46141a26eef7a9bdaf Reviewed-on: https://skia-review.googlesource.com/47240 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Revert "Allow GrDrawOpAtlas to grow as needed"Gravatar Jim Van Verth2017-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 03168b8a62a0d3d14b7a0d14642df4d82203b87c. Reason for revert: Assert in resetting texture proxies. Original change's description: > Allow GrDrawOpAtlas to grow as needed > > Bug: skia:3550 > Change-Id: Ib5312c8c06ba8549d90545658df6686c45058255 > Reviewed-on: https://skia-review.googlesource.com/45841 > Commit-Queue: Jim Van Verth <jvanverth@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=jvanverth@google.com,robertphillips@google.com Change-Id: I05e084b4cefa57e558f296d6087d4f03fa16ac81 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:3550 Reviewed-on: https://skia-review.googlesource.com/47140 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Allow GrDrawOpAtlas to grow as neededGravatar Jim Van Verth2017-09-15
| | | | | | | | Bug: skia:3550 Change-Id: Ib5312c8c06ba8549d90545658df6686c45058255 Reviewed-on: https://skia-review.googlesource.com/45841 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add support for additional textures in GrDrawOpAtlasGravatar Jim Van Verth2017-09-12
| | | | | | | | | | Step two in supporting growable/shrinkable atlases. Bug: skia:3550 Change-Id: I0cdec2a9f59cc8ced071bfeec2f8ed5a228c4b7a Reviewed-on: https://skia-review.googlesource.com/43260 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Rework GrSamplerParams to be more compact and use its own wrap mode enum.Gravatar Brian Salomon2017-09-07
| | | | | | | | | The main change is to make GrSamplerParams smaller by making its enums have byte-sized underlying types. The rest is cosmetic. Change-Id: Ib71ea50612d24619a85e463826c6b8dfb9b445e3 Reviewed-on: https://skia-review.googlesource.com/43200 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* GR_TEST_UTILS fixesGravatar Brian Salomon2017-07-06
| | | | | | | | | | | | | | Fixes build of Skia lib when GR_TEST_UTILS=0 Makes GR_TEST_UTILS=0 for official builds Makes "Mini" builder bot exercise building GPU with is_official_build=true Bug: skia:6786 Change-Id: I6186683a3a216d2e779645bd9e8276a66bcff4d5 Reviewed-on: https://skia-review.googlesource.com/21524 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Clean up GrResourceProvider usageGravatar Robert Phillips2017-06-15
| | | | | | | | | | | | | The only substantive changes are the removal of GrProxy instantiation in: SkGpuBlurUtils::GaussianBlur GrSimpleTextureEffect::Make* Change-Id: I10970609693bd6ff5b3a3c21b41d82642bb277bc Reviewed-on: https://skia-review.googlesource.com/19965 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Mark overridden destructors with 'override' and remove 'virtual'Gravatar Brian Salomon2017-03-22
| | | | | | | | | This silences a new warning in clang 5.0 Change-Id: Ieb5b75a6ffed60107c3fd16075d2ecfd515b55e8 Reviewed-on: https://skia-review.googlesource.com/10006 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Retract GrContext from src/gpu/effectsGravatar Robert Phillips2017-03-15
| | | | | | | Change-Id: Iceb7263098286bafb2605ef17d1fe6bb25d71e97 Reviewed-on: https://skia-review.googlesource.com/9693 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Clean up/remove unused GrFragmentProcessor-derived ctorsGravatar Robert Phillips2017-02-28
| | | | | | | | | This is the simple (i.e., non-TextureAdjuster) portion of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors) Change-Id: I8f673ebe922e03c69473c18c166bcf818507c662 Reviewed-on: https://skia-review.googlesource.com/8997 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove GrProcessorTestData's GrTexturesGravatar Robert Phillips2017-02-21
| | | | | | | | | | | (No longer) Blocked on: https://skia-review.googlesource.com/c/8450/ (Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2)) This also (unfortunately) picks up a few straggling effects that didn't have a sk_sp<GrTextureProxy> factory. Change-Id: I5ce583a084aa8fe00e866eec1db90e2ec9dd2ab0 Reviewed-on: https://skia-review.googlesource.com/8500 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Removes tracking of whether color is ignored by XP.Gravatar Brian Salomon2017-01-04
| | | | | | | | | Removes the feedback to GrDrawOp via GrPipelineOptimizations. Change-Id: I3cb17cad41779af292a92385fcd5ac23ae5a1ffd Reviewed-on: https://skia-review.googlesource.com/6561 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Merge GrGLSLCaps into GrShaderCapsGravatar Brian Salomon2016-11-29
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5121 Change-Id: If8d13638f80f42161cbc766a2666c5789e5772c8 Reviewed-on: https://skia-review.googlesource.com/5121 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rename GrTextureParams to GrSamplerParamsGravatar Brian Salomon2016-11-17
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4965 Change-Id: I7d52e81c670e92ca96117284f44b274ce3cc3671 Reviewed-on: https://skia-review.googlesource.com/4965 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rename GrTextureAccess to GrProcessor::TextureSampler.Gravatar Brian Salomon2016-11-17
| | | | | | | | | | | Renames vars and methods that used the work "access" to refer to this type. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4931 Change-Id: Ibcf488fbd445c5119fc13d190544cd98981bdbee Reviewed-on: https://skia-review.googlesource.com/4931 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* sk_sp for Ganesh.Gravatar bungeman2016-06-09
| | | | | | | | | | Convert use of GrFragmentProcessor, GrGeometryProcessor, and GrXPFactory to sk_sp. This clarifies ownership and should reduce reference count churn by moving ownership. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2041113004 Review-Url: https://codereview.chromium.org/2041113004
* Rename some processor functions from GL to GLSLGravatar egdaniel2015-11-13
| | | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1443743002
* Move GrGLPrimitive/GeometryProc to GLSLGravatar egdaniel2015-11-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1441683008
* Remove batchtrackerGravatar joshualitt2015-09-11
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1332923003
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Preliminary attempt to remove batch trackerGravatar joshualitt2015-05-19
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/cbfe91d82500f4ae8c3ff7bd74b3021a4b89fd84 Review URL: https://codereview.chromium.org/1139723004
* Revert of Preliminary attempt to remove batch tracker (patchset #3 id:40001 ↵Gravatar joshualitt2015-05-19
| | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1139723004/) Reason for revert: breaking bots Original issue's description: > Preliminary attempt to remove batch tracker > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/cbfe91d82500f4ae8c3ff7bd74b3021a4b89fd84 TBR=robertphillips@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1132323003
* Preliminary attempt to remove batch trackerGravatar joshualitt2015-05-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1139723004
* remove localmatrix from GrGeometryProcessor base classGravatar joshualitt2015-05-15
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1131513005
* remove color from GrGeometryProcessorGravatar joshualitt2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1140983002
* removing equality / compute invariant loops from GrGeometryProcessorsGravatar joshualitt2015-05-13
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/ef292a0901205b9785a30daae2c036aa34a970ca Review URL: https://codereview.chromium.org/1111603004
* Revert of removing equality / compute invariant loops from ↵Gravatar joshualitt2015-04-28
| | | | | | | | | | | | | | | | | | | | | | GrGeometryProcessors (patchset #2 id:20001 of https://codereview.chromium.org/1111603004/) Reason for revert: breaks gl programs Original issue's description: > removing equality / compute invariant loops from GrGeometryProcessors > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/ef292a0901205b9785a30daae2c036aa34a970ca TBR=bsalomon@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1110993002
* removing equality / compute invariant loops from GrGeometryProcessorsGravatar joshualitt2015-04-28
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1111603004
* Use GLSLCaps for creating processor keys and GLSL-specific programsGravatar jvanverth2015-04-28
| | | | | | | | | Effectively all this does is future-proof any GLSL-specific code, as GLSLCaps is just a typedef of GLCaps. BUG=skia: Review URL: https://codereview.chromium.org/1109863004
* C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla}Gravatar mtklein2015-03-25
| | | | | | | | | NOPRESUBMIT=true BUG=skia: DOCS_PREVIEW= https://skia.org/?cl=1037793002 Review URL: https://codereview.chromium.org/1037793002
* Small change to use a GrGeometryProcessor for all BitmapText draw callsGravatar joshualitt2015-02-11
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/914723002
* GrBatchPrototypeGravatar joshualitt2015-01-28
| | | | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/d15e4e45374275c045572b304c229237c4a82be4 Committed: https://skia.googlesource.com/skia/+/d5a7db4a867c7e6ccf8451a053d987b470099198 Review URL: https://codereview.chromium.org/845103005
* Revert of GrBatchPrototype (patchset #32 id:630001 of ↵Gravatar joshualitt2015-01-28
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/845103005/) Reason for revert: One last try to fix mac perf regression Original issue's description: > GrBatchPrototype > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d15e4e45374275c045572b304c229237c4a82be4 > > Committed: https://skia.googlesource.com/skia/+/d5a7db4a867c7e6ccf8451a053d987b470099198 TBR=bsalomon@google.com,kkinnunen@nvidia.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/877393002
* GrBatchPrototypeGravatar joshualitt2015-01-27
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/d15e4e45374275c045572b304c229237c4a82be4 Review URL: https://codereview.chromium.org/845103005
* Revert of GrBatchPrototype (patchset #30 id:570001 of ↵Gravatar joshualitt2015-01-27
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/845103005/) Reason for revert: creates large performance regression Original issue's description: > GrBatchPrototype > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d15e4e45374275c045572b304c229237c4a82be4 TBR=bsalomon@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/862823004
* GrBatchPrototypeGravatar joshualitt2015-01-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/845103005
* More changes to bring together path / geo procsGravatar joshualitt2015-01-14
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/820783005
* Move most of the transform logic into the primitive processorsGravatar joshualitt2015-01-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/822423004
* Fix up all the easy virtual ... SK_OVERRIDE cases.Gravatar mtklein2015-01-09
| | | | | | | | | | | | This fixes every case where virtual and SK_OVERRIDE were on the same line, which should be the bulk of cases. We'll have to manually clean up the rest over time unless I level up in regexes. for f in (find . -type f); perl -p -i -e 's/virtual (.*)SK_OVERRIDE/\1SK_OVERRIDE/g' $f; end BUG=skia: Review URL: https://codereview.chromium.org/806653007
* This CL cleans up the last remaining users of localCoordChange on paintGravatar joshualitt2014-12-22
| | | | | | | NOTREECHECKS=True BUG=skia: Review URL: https://codereview.chromium.org/817853002
* initial changes to add local matrix to primitive processorGravatar joshualitt2014-12-19
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/820523002
* This change will ultimately pull uniform color, and to a much lesser degree ↵Gravatar joshualitt2014-12-15
| | | | | | | | uniform coverage, into GPs. There are still some loose ends because drawstate has the ability to override the GP, but fixing these cleanly will have to wait until we have deferred geometry in place and can make attribute / uniform decisions on the fly. BUG=skia: Review URL: https://codereview.chromium.org/746423007
* Remove GP from drawstate, revision of invariant output for GPGravatar joshualitt2014-12-11
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/c6bc58eded89b0c0a36b8e20e193c200f297a0da Review URL: https://codereview.chromium.org/791743003
* Revert of Remove GP from drawstate, revision of invariant output for GP ↵Gravatar joshualitt2014-12-10
| | | | | | | | | | | | | | | | | | | | | (patchset #9 id:160001 of https://codereview.chromium.org/791743003/) Reason for revert: breaks mac Original issue's description: > Remove GP from drawstate, revision of invariant output for GP > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c6bc58eded89b0c0a36b8e20e193c200f297a0da TBR=bsalomon@google.com,egdaniel@google.com,joshualitt@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/794843002
* Remove GP from drawstate, revision of invariant output for GPGravatar joshualitt2014-12-10
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/791743003