aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrSoftwarePathRenderer.cpp
Commit message (Collapse)AuthorAge
* Make GrStrokeInfo inherit from SkStrokeRecGravatar kkinnunen2015-05-18
| | | | | | | | | | | | | | | | | | | Make the code more readable by inheriting GrStrokeInfo from SkStrokeRec. This should avoid the long .getStrokeRec() and .getStrokeRecPtr(). These were a bit cumbersome especially in cases where an alias variable was created for these, and then the reader had to keep track to which StrokeInfo member the StrokeRec alias was pointing. Removes SkStrokeRec::SkStrokeRec(const SkStrokeRec&). It was memcpying. Try to play it safe wrt compiler using the possible padding of superclass for subclass members. Instead, let the compiler generate the copy constructor. Assignment operator was already compiler-generated, so at least in that way this is consistent. Renames GrStrokeInfo::applyDash to applyDashToPath for consistency with superclass applyToPath. Review URL: https://codereview.chromium.org/1128113008
* Remove vertex/index buffer factilities from GrDrawTarget.Gravatar bsalomon2015-04-28
| | | | Review URL: https://codereview.chromium.org/1105263002
* Extract gpu line dashing to GrDashLinePathRendererGravatar kkinnunen2015-04-26
| | | | | | | | | Move line dashing logic from GrContext::drawPath to GrDashLinePathRenderer. This makes it possible to let path renderers render arbitrary dashed paths. End goal is to implement dashing in GrStencilAndCoverPathRenderer. Review URL: https://codereview.chromium.org/1100073003
* Move clip off of draw targetGravatar joshualitt2015-02-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/947443003
* Clean up clipping code a bitGravatar robertphillips2015-02-10
| | | | Review URL: https://codereview.chromium.org/913693002
* Rename GrOptDrawState to GrPipeline and GrDrawState to GrPipelineBuilderGravatar egdaniel2015-01-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/858343002
* Move ViewMatrix off of drawstateGravatar joshualitt2014-12-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/815553003
* Remove coordchanges from drawstateGravatar joshualitt2014-12-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/818233002
* This cl moves color and coverage off of drawstate. In an effort to keep ↵Gravatar joshualitt2014-12-09
| | | | | | | | | | this CL manageable, I have left the compute invariant input / output in a bit of a strange state(fixing this will be complicated). In addition, NVPR makes this very complicated, and I haven't quite figured out a good way to handle it, so for now color and coverage DO live on optstate, but I will figure out some way to refactor that in future CLs. BUG=skia: Review URL: https://codereview.chromium.org/783763002
* Drawstate on stackGravatar joshualitt2014-11-17
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/732693002
* Remove unused matrix param from GrContext/GrDrawTarget rect drawing functions.Gravatar bsalomon2014-08-04
| | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/441623005
* Alter Default & Software path renderers to better handle AA hairline pathsGravatar robertphillips2014-07-25
| | | | | | | | | | | | | | | | | | | | | | For some (as yet unknown reason) the guard in ConicPathBench that disables the path_hairline_big_AA_conic case isn't working. As an alternate fix, this CL makes the Default path renderer confess its lack of support for conics and allows the Software path renderer to handle non-AA cases. This will work but the real fix is to enable conics in the Default path renderer. Here is the situation we're seeing in the path_hairline_big_AA_conic case: the path is a hairline drawn with AA the render target is multisampled (so AA on the draw gets disabled) StencilAndCover path renderer doesn't handle hairlines AAHairLine path renderer only handles AA paths (but can handle conics) AAConvexPath renderer also only handles AA paths Default path renderer only handles non-AA paths (but doesn't handle conics) Software path renderer - was disallowed from handling non-AA paths BUG=skia:2078 R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/418073002
* Revert of r13384 (Stateful PathRenderer implementation)Gravatar robertphillips@google.com2014-02-11
| | | | | | | | https://codereview.chromium.org/142543007/ git-svn-id: http://skia.googlecode.com/svn/trunk@13409 2bbb7eff-a529-9590-31e7-b0007b416f81
* Stateful PathRenderer implementationGravatar robertphillips@google.com2014-02-10
| | | | | | | | https://codereview.chromium.org/23926019/ git-svn-id: http://skia.googlecode.com/svn/trunk@13384 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace all instances of GrRect with SkRect.Gravatar commit-bot@chromium.org2013-07-17
| | | | | | | | | | | | And remove the typedef in GrRect.h. The same with GrIRect. R=robertphillips@google.com Author: tfarina@chromium.org Review URL: https://chromiumcodereview.appspot.com/19449002 git-svn-id: http://skia.googlecode.com/svn/trunk@10130 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace GrDrawState::AutoDeviceCoordDraw with ↵Gravatar bsalomon@google.com2013-05-29
| | | | | | | | | | GrDrawState::AutoViewMatrixRestore::setIdentity(). s R=robertphillips@google.com Review URL: https://codereview.chromium.org/15780002 git-svn-id: http://skia.googlecode.com/svn/trunk@9331 2bbb7eff-a529-9590-31e7-b0007b416f81
* Follow up on the previous patch :Gravatar sugoi@google.com2012-12-17
| | | | | | | | | | | | | | | - Moved the SkStrokeRec class in its own file - Replaced SkStroke by SkStrokeRec in Ganesh - Moved path stroking to the Ganesh level in some cases (everytime it isn't required to do it directly in SkGpuDevice). PathEffect and MaskFilter still require path stroking at the SkGpuDevice for now. - Renamed static functions in SkPath with proper names * No functionality shold have changed with this patch. This is a step towards enabling Ganesh Path Renderers to decide whether or not to stroke the path rather than always receiving the stroked path as an input argument. BUG=chromium:135111 TEST=Try path rendering tests from the gm Review URL: https://codereview.appspot.com/6946072 git-svn-id: http://skia.googlecode.com/svn/trunk@6861 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modifications to GrPatherRenderer(Chain) interfaces to support clip mask ↵Gravatar bsalomon@google.com2012-12-10
| | | | | | | | | manager. R=robertphillips@google.com Review URL: https://codereview.appspot.com/6904069 git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
* As part of preliminary groundwork for a chromium fix, this changelist is ↵Gravatar sugoi@google.com2012-12-06
| | | | | | | | | | deprecating GrPathFill so that SkPath::FillType is used everywhere in order to remove some code duplication between Skia and Ganesh. BUG=chromium:135111 TEST=Try path rendering tests from the gm Review URL: https://codereview.appspot.com/6875058 git-svn-id: http://skia.googlecode.com/svn/trunk@6693 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace GrMatrix with SkMatrix.Gravatar bsalomon@google.com2012-11-01
| | | | | | Review URL: https://codereview.appspot.com/6814067 git-svn-id: http://skia.googlecode.com/svn/trunk@6247 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove translate param from GrContext::drawPath (and subsequent calls).Gravatar bsalomon@google.com2012-10-08
| | | | | | Review URL: https://codereview.appspot.com/6615062 git-svn-id: http://skia.googlecode.com/svn/trunk@5852 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move some auto restore helpers from GrDrawTarget to GrDrawState.Gravatar bsalomon@google.com2012-10-05
| | | | | | R=robertphillips@google.com git-svn-id: http://skia.googlecode.com/svn/trunk@5846 2bbb7eff-a529-9590-31e7-b0007b416f81
* Result of running tools/sanitize_source_files.py (which was added in ↵Gravatar rmistry@google.com2012-08-23
| | | | | | | | | https://codereview.appspot.com/6465078/) This CL is part II of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6474054 git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added dev- & canv- prefixes to Ganesh bounding boxes to indicate coordinate ↵Gravatar robertphillips@google.com2012-07-31
| | | | | | | | | | space http://codereview.appspot.com/6457061/ git-svn-id: http://skia.googlecode.com/svn/trunk@4856 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added getConservativeBound helper function to GrClipDataGravatar robertphillips@google.com2012-07-26
| | | | | | | | http://codereview.appspot.com/6454054/ git-svn-id: http://skia.googlecode.com/svn/trunk@4798 2bbb7eff-a529-9590-31e7-b0007b416f81
* Altered Ganesh's clip stack plumbing to pass down new GrClipData classGravatar robertphillips@google.com2012-07-26
| | | | | | | | http://codereview.appspot.com/6454047/ git-svn-id: http://skia.googlecode.com/svn/trunk@4788 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove stage masksGravatar bsalomon@google.com2012-07-20
| | | | | | | | Review URL: http://codereview.appspot.com/6422047/ git-svn-id: http://skia.googlecode.com/svn/trunk@4688 2bbb7eff-a529-9590-31e7-b0007b416f81
* Forced GrClip to always have conservative boundsGravatar robertphillips@google.com2012-07-11
| | | | | | | | http://codereview.appspot.com/6353089/ git-svn-id: http://skia.googlecode.com/svn/trunk@4545 2bbb7eff-a529-9590-31e7-b0007b416f81
* Left over cleanup from r4416 (fix for lingering AA clip mask bug)Gravatar robertphillips@google.com2012-07-09
| | | | | | | | http://codereview.appspot.com/6356058/ git-svn-id: http://skia.googlecode.com/svn/trunk@4474 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed lingering gpu-path AA clip mask generation bugGravatar robertphillips@google.com2012-06-29
| | | | | | | | http://codereview.appspot.com/6351055/ git-svn-id: http://skia.googlecode.com/svn/trunk@4416 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split GrSWMaskHelper into its own filesGravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6350046/ git-svn-id: http://skia.googlecode.com/svn/trunk@4380 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable Scratch texture detach in SW path renderer's onDrawPath (again)Gravatar robertphillips@google.com2012-06-27
| | | | | | | | http://codereview.appspot.com/6331057/ git-svn-id: http://skia.googlecode.com/svn/trunk@4365 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r4324Gravatar robertphillips@google.com2012-06-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4338 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable Scratch texture detach in SW path renderer's onDrawPath (take 2)Gravatar robertphillips@google.com2012-06-25
| | | | | | | | http://codereview.appspot.com/6331057/ git-svn-id: http://skia.googlecode.com/svn/trunk@4324 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r4319Gravatar robertphillips@google.com2012-06-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4320 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable Scratch texture detach in SW path renderer's onDrawPathGravatar robertphillips@google.com2012-06-25
| | | | | | | | http://codereview.appspot.com/6331057/ git-svn-id: http://skia.googlecode.com/svn/trunk@4319 2bbb7eff-a529-9590-31e7-b0007b416f81
* AutoScratchTexture can now release its texture and it will return to the ↵Gravatar robertphillips@google.com2012-06-22
| | | | | | | | | | texture cache when freed http://codereview.appspot.com/6262043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4301 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed two bugs in SW-only clip mask generationGravatar robertphillips@google.com2012-06-21
| | | | | | | | http://codereview.appspot.com/6306086/ git-svn-id: http://skia.googlecode.com/svn/trunk@4290 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix incorrect GPU rendering for path inverse fill when path is outside the clipGravatar bsalomon@google.com2012-06-19
| | | | | | | | | | Committed on behalf of Guanqun.Lu@gmail.com Review URL: http://codereview.appspot.com/6296087/ git-svn-id: http://skia.googlecode.com/svn/trunk@4279 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move clientID into texture descGravatar robertphillips@google.com2012-06-07
| | | | | | | | http://codereview.appspot.com/6305044/ git-svn-id: http://skia.googlecode.com/svn/trunk@4201 2bbb7eff-a529-9590-31e7-b0007b416f81
* Search and replace change. Some Gr enum value names didn't have a "Gr" in ↵Gravatar bsalomon@google.com2012-06-06
| | | | | | | | | | | their suffix. Verbal LGTM from TomH git-svn-id: http://skia.googlecode.com/svn/trunk@4198 2bbb7eff-a529-9590-31e7-b0007b416f81
* First functioning version of SW-only clip mask creatorGravatar robertphillips@google.com2012-05-17
| | | | | | | | http://codereview.appspot.com/6208072/ git-svn-id: http://skia.googlecode.com/svn/trunk@3984 2bbb7eff-a529-9590-31e7-b0007b416f81
* Minor refactoring/enhancement of GrSWMaskHelper to prepare for wider useGravatar robertphillips@google.com2012-05-15
| | | | | | | | http://codereview.appspot.com/6188082/ git-svn-id: http://skia.googlecode.com/svn/trunk@3931 2bbb7eff-a529-9590-31e7-b0007b416f81
* Created SW clip mask creation helper class (in GrSoftwarePathRenderer)Gravatar robertphillips@google.com2012-05-14
| | | | | | | | http://codereview.appspot.com/6198070/ git-svn-id: http://skia.googlecode.com/svn/trunk@3925 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added stack to AA clip mask cacheGravatar robertphillips@google.com2012-05-09
| | | | | | | | http://codereview.appspot.com/6201058/ git-svn-id: http://skia.googlecode.com/svn/trunk@3885 2bbb7eff-a529-9590-31e7-b0007b416f81
* Moved SW path rendering path back to using TU/sampler #2. This reverts r3813Gravatar robertphillips@google.com2012-05-02
| | | | | | | | http://codereview.appspot.com/6159046/ git-svn-id: http://skia.googlecode.com/svn/trunk@3827 2bbb7eff-a529-9590-31e7-b0007b416f81
* Moved SW path rendering to new texture unitGravatar robertphillips@google.com2012-05-01
| | | | | | | | http://codereview.appspot.com/6138057/ git-svn-id: http://skia.googlecode.com/svn/trunk@3813 2bbb7eff-a529-9590-31e7-b0007b416f81
* Moved SW path renderer from GrContext.cpp to GrSoftwarePathRenderer.cppGravatar robertphillips@google.com2012-05-01
| | | | | | | | http://codereview.appspot.com/6138056/ git-svn-id: http://skia.googlecode.com/svn/trunk@3807 2bbb7eff-a529-9590-31e7-b0007b416f81
* First portion of refactoring to bundle SW path rendering into GrPathRendererGravatar robertphillips@google.com2012-04-27
http://codereview.appspot.com/6125046/ git-svn-id: http://skia.googlecode.com/svn/trunk@3769 2bbb7eff-a529-9590-31e7-b0007b416f81