aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects/GrXfermodeFragmentProcessor.cpp
Commit message (Collapse)AuthorAge
* Stop tracking whether GrFragmentProcessors read their inputGravatar Brian Salomon2017-01-23
| | | | | | | Change-Id: Id5338901978b97289798eaef873527597bd8dfd6 Reviewed-on: https://skia-review.googlesource.com/7414 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Simplify GrProcOptInfo initialization.Gravatar Brian Salomon2017-01-17
| | | | | | | | | | | | | Removes unused single channel tracking. Makes it so that only the op/gp can initiate lcd coverage. Makes GrProcOptInfo fragment processor analysis continuable. Change-Id: I003a8aa3836bb64d04b230ddee581dc500e613a9 Reviewed-on: https://skia-review.googlesource.com/7039 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>
* remove xfermode from public apiGravatar Mike Reed2016-10-28
| | | | | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4020 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: I19cd056f2af778f10e8c6c2b7b2735593b43dbac Reviewed-on: https://skia-review.googlesource.com/4020 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* GrConstColorProcessor uses 4f colors in the destination spaceGravatar Brian Osman2016-10-26
| | | | | | | | | | | | | | | | | | | | Many places that construct one are explicitly specifying opaque white or transparent black, which we can assume (based on the semantics of the operation) should remain (0,0,0,0) or (1,1,1,1), so that's simple. In other cases, we convert our source color to destination space. One wrinkle is tht SkColorFilter now needs to know the destination color space, due to SkModeColorFilter. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3903 Change-Id: I4969c0260588f4021300733f601b47dc606adf79 Reviewed-on: https://skia-review.googlesource.com/3903 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* added basic dataflow analysis to skslcGravatar ethannicholas2016-10-13
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2405383003 Review-Url: https://codereview.chromium.org/2405383003
* 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
* Add more specialized fragment buildersGravatar cdalton2016-02-18
| | | | | | | | | | | Adds specialized fragment builders for primitive and fragment processors. Removes fragment-specific functionality from the Xfer fragment builder. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1709153002 Review URL: https://codereview.chromium.org/1709153002
* Clean up GrGLSLFragmentProcessor-derived classesGravatar robertphillips2016-02-03
| | | | | | | | In some other patches it was observed that many of the GrGLSLFragmentProcessor-derived classes needlessly pass a parameter to their constructors. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666773002 Review URL: https://codereview.chromium.org/1666773002
* Create GLSLUniformHandler class for gpu backendGravatar egdaniel2015-12-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1490283004
* Add more batch information printoutsGravatar robertphillips2015-11-19
| | | | Review URL: https://codereview.chromium.org/1457373003
* Add ShaderBuilders to EmitArgs and remove gettings from ProgBuilder.Gravatar egdaniel2015-11-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1457543003
* Rename some processor functions from GL to GLSLGravatar egdaniel2015-11-13
| | | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1443743002
* Make all GrFragmentProcessors GL independent.Gravatar egdaniel2015-11-13
| | | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1434313002
* Move all ShaderBuilder files to GLSLGravatar egdaniel2015-11-11
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1438003003
* Move shader compiling to ProgramBuilder and various ShaderBuilder cleanups.Gravatar egdaniel2015-11-02
| | | | | | | | An additional positive of this CL is that GrGLShaderBuilder is now GL independent besides GrGLProgramBuilder BUG=skia: Review URL: https://codereview.chromium.org/1431433003
* Move functions from SkGr to SkGrPriv.hGravatar bsalomon2015-10-09
| | | | Review URL: https://codereview.chromium.org/1397123002
* Make skpaint->grpaint flow work for composing draws (verts and atlas)Gravatar bsalomon2015-09-28
| | | | | | 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
* Mangle output var in GrGLFragmentProcessor::emitChildGravatar bsalomon2015-09-24
| | | | | | R=joshualitt@google.com Review URL: https://codereview.chromium.org/1362873002
* Create fragment processor for performing input color blend with child processorGravatar bsalomon2015-09-15
| | | | | | 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
* Add helper for creating leaf FPs inside GrFP::TestCreate functionsGravatar bsalomon2015-09-14
| | | | Review URL: https://codereview.chromium.org/1334273003
* Test that GrFragmentProcessors work without input colors.Gravatar bsalomon2015-09-14
| | | | | | Committed: https://skia.googlesource.com/skia/+/72c58e7052af2a0855412ce4b249f977069db751 Review URL: https://codereview.chromium.org/1341853002
* Revert of Test that GrFragmentProcessors work without input colors. ↵Gravatar bsalomon2015-09-14
| | | | | | | | | | | | | | | | | | | (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
* Test that GrFragmentProcessors work without input colors.Gravatar bsalomon2015-09-14
| | | | Review URL: https://codereview.chromium.org/1341853002
* There's a set probability that a linear pipeline of random procs will be ↵Gravatar wangyix2015-09-10
| | | | | | | | | | created (old behavior), or a pipeline with a single proc tree (added behavior). Had to move GrComposeEffect class definition from SkComposeShader.cpp to SkComposeShader.h so that GLProgramsTest can call GrComposeEffect::Create() BUG=skia:4182 Review URL: https://codereview.chromium.org/1314923002
* Brian requested a new namespace for factories that create fragment ↵Gravatar wangyix2015-09-09
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