aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrGpu.h
Commit message (Collapse)AuthorAge
* Remove forceRenderTargetFlush (unused)Gravatar commit-bot@chromium.org2014-03-25
| | | | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/210253004 git-svn-id: http://skia.googlecode.com/svn/trunk@13948 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make it possible to draw multiple paths at once to a draw targetGravatar commit-bot@chromium.org2014-03-25
| | | | | | | | | | | | | | | | | | | | | | | Add interface to draw multiple paths in a single "command" to a draw target. Implement this interface in GrGpuGL with NVPR "instanced" calls. The instanced calls accept list of paths and list of transformations as their parameters. The transformations are at this moment expected to be 2d affine transformations, as the functions are called only for text rendering. This will be used when drawing fonts. Later it can be maybe be used in GrInOrderDrawBuffer to aggregate many draw calls into one instanced draw call, similar to drawing rects. R=jvanverth@google.com, bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/209413006 git-svn-id: http://skia.googlecode.com/svn/trunk@13930 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add dev bounds to bmp txt context, use bounds to ignore clipsGravatar commit-bot@chromium.org2014-02-11
| | | | | | | | | | R=robertphillips@google.com, jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/144283004 git-svn-id: http://skia.googlecode.com/svn/trunk@13413 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add can-ignore-rect hint to clear callGravatar robertphillips@google.com2013-10-31
| | | | | | | | https://codereview.chromium.org/53823003/ git-svn-id: http://skia.googlecode.com/svn/trunk@12064 2bbb7eff-a529-9590-31e7-b0007b416f81
* Start cleaning up 64bit Win warningsGravatar robertphillips@google.com2013-10-14
| | | | | | | | https://codereview.chromium.org/27192003/ git-svn-id: http://skia.googlecode.com/svn/trunk@11764 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move renderable config list to GrDrawTargetCapsGravatar commit-bot@chromium.org2013-10-14
| | | | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/26342006 git-svn-id: http://skia.googlecode.com/svn/trunk@11756 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement stroking a path with nv_path_renderingGravatar commit-bot@chromium.org2013-10-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize the path stroke properties in the GrGLPath constructor. Use StencilStrokePath and CoverStrokePath to stroke the path. The order of the GL calls is: 1. StencilFill, if needed 2. StencilStroke, if needed 2a. CoverStroke, if stroke was applied 2b. CoverFill, if stroke was not applied The reason for not pairing StencilFill + CoverFill, StencilStroke + CoverStroke is that Skia API does not allow separate fill and stroke color within one call. Covering the stroke bounding box should also cover the fill bounding box. Causes different rendering in gm/dashcubics due to different rendering algorithm. (?) (TODO: this should be resolved somehow.) R=bsalomon@google.com, markkilgard@gmail.com, cdalton@nvidia.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/23440049 git-svn-id: http://skia.googlecode.com/svn/trunk@11672 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement filling a path with nv_path_rendering coverGravatar commit-bot@chromium.org2013-10-09
| | | | | | | | | | | | | | | | | | Implement filling a path with nv_path_rendering cover functionality. The nv_path_rendering cover can be used if the fill is non-inverted and the draw operation does not require use of vertex shaders. Moves code for the inverted fill from GrStencilAndCoverPathRenderer down to GrGpuGL. R=bsalomon@google.com, markkilgard@gmail.com, cdalton@nvidia.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/22686002 git-svn-id: http://skia.googlecode.com/svn/trunk@11667 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GrRefCnt.h in favor of SkRefCnt.hGravatar commit-bot@chromium.org2013-09-09
| | | | | | | | | | | | | | | | | This removes GrRefCnt.h with all its tyepdefs and #defines and just switch them to the Sk* equivalents. GrSafeSetNull was promoted to SkSafeSetNull in SkRefCnt.h. BUG=None TEST=none, no functional changes. R=bsalomon@google.com, robertphillips@google.com Author: tfarina@chromium.org Review URL: https://chromiumcodereview.appspot.com/23904003 git-svn-id: http://skia.googlecode.com/svn/trunk@11151 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace uses of GrAssert by SkASSERT.Gravatar tfarina@chromium.org2013-08-17
| | | | | | | | R=bsalomon@google.com Review URL: https://codereview.chromium.org/22850006 git-svn-id: http://skia.googlecode.com/svn/trunk@10789 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
* Add flag bits for partial GrContext resetGravatar bsalomon@google.com2013-06-28
| | | | | | | | | | | BUG=248728 R=bsalomon@google.com Committed: https://code.google.com/p/skia/source/detail?r=9802 Review URL: https://codereview.chromium.org/17027003 git-svn-id: http://skia.googlecode.com/svn/trunk@9814 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 9802 breacking tests on some configsGravatar edisonn@google.com2013-06-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9805 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add flag bits for partial GrContext resetGravatar bsalomon@google.com2013-06-28
| | | | | | | | | BUG=248728 R=bsalomon@google.com Review URL: https://codereview.chromium.org/17027003 git-svn-id: http://skia.googlecode.com/svn/trunk@9802 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace fixed-size array of effect stages in GrDrawState with two appendable ↵Gravatar bsalomon@google.com2013-06-13
| | | | | | | | | | arrays, one for color, one for coverage. R=robertphillips@google.com Review URL: https://codereview.chromium.org/16952006 git-svn-id: http://skia.googlecode.com/svn/trunk@9592 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix slowness of getImageData() for CanvasRenderingContext2D in linux due to ↵Gravatar commit-bot@chromium.org2013-05-24
| | | | | | | | | | | | | | | un-optimized format for glReadPixels This is a continuation of https://codereview.chromium.org/15331003/ BUG=242093 R=robertphillips@google.com, jun.a.jiang@intel.com, bsalomon@google.com Author: bsalomon@google.com Review URL: https://chromiumcodereview.appspot.com/15746007 git-svn-id: http://skia.googlecode.com/svn/trunk@9280 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-05-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9103 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't call purgeCache() from within GrResource memebers.Gravatar bsalomon@google.com2013-05-10
| | | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/14864020 git-svn-id: http://skia.googlecode.com/svn/trunk@9102 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GR_STATIC_RECT_VBGravatar robertphillips@google.com2013-04-20
| | | | | | | | https://codereview.chromium.org/14367030/ git-svn-id: http://skia.googlecode.com/svn/trunk@8786 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reland of 8525 with fix for case when GrRT outlives GrTexture.Gravatar bsalomon@google.com2013-04-09
| | | | | | Review URL: https://codereview.chromium.org/13814015 git-svn-id: http://skia.googlecode.com/svn/trunk@8573 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert 8525,8526 pending investigation of bench_pictures crashes.Gravatar bsalomon@google.com2013-04-03
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8527 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().Gravatar bsalomon@google.com2013-04-03
| | | | | | Review URL: https://codereview.chromium.org/13414006 git-svn-id: http://skia.googlecode.com/svn/trunk@8525 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add support for reading the dst pixel value in an effect. Use in a new ↵Gravatar bsalomon@google.com2013-03-29
| | | | | | | | | | | effect for the kDarken xfer mode. The current implementation is to always make a copy of the entire dst before the draw. It will only succeed if the RT is also a texture. Obviously, there is lots of room for improvement. Review URL: https://codereview.chromium.org/13314002 git-svn-id: http://skia.googlecode.com/svn/trunk@8449 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make GrGLShaderBuilder::TextureSampler extract only required info from ↵Gravatar bsalomon@google.com2013-03-28
| | | | | | | | | | | GrTextureAccess. This will make it possible to init a TextureSampler without a texture or a specific config. Also unify two separate bitfields of color components in GPU code. Review URL: https://codereview.chromium.org/13121002 git-svn-id: http://skia.googlecode.com/svn/trunk@8428 2bbb7eff-a529-9590-31e7-b0007b416f81
* Give GrDrawTarget a back ptr to its owning GrContext.Gravatar bsalomon@google.com2013-02-25
| | | | | | Review URL: https://codereview.appspot.com/7395055 git-svn-id: http://skia.googlecode.com/svn/trunk@7850 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert 7625 until after M26 due to a mix of perf changes.Gravatar bsalomon@google.com2013-02-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7683 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove GR_STATIC_RECT_VBGravatar bsalomon@google.com2013-02-06
| | | | | | Review URL: https://codereview.appspot.com/7304055 git-svn-id: http://skia.googlecode.com/svn/trunk@7625 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix WritePixels test on ANGLE.Gravatar bsalomon@google.com2013-02-06
| | | | | | | | | Don't upload BGRA to RGBA if not supported (ES2 w/ EXT BGRA extension). R=senorblanco@chromium.org Review URL: https://codereview.appspot.com/7305046 git-svn-id: http://skia.googlecode.com/svn/trunk@7622 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move vertex layout from GeometrySrcState to GrDrawState.Gravatar jvanverth@google.com2013-02-05
| | | | | | | | | | | Also adds AutoStateRestore member to AutoGeometryPush to push DrawState as well as GeometrySrcState. And removed vertex layout as an argument to a number of functions -- they will get vertex layout info from the current DrawState. Review URL: https://codereview.appspot.com/7286047 git-svn-id: http://skia.googlecode.com/svn/trunk@7600 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for origin-TopLeft render targets. Note that the default ↵Gravatar senorblanco@chromium.org2013-02-05
| | | | | | | | behaviour remains the same: textures default to origin-TopLeft, render targets default to origin-BottomLeft, and backend textures default to origin-BottomLeft. However, the caller can override the default by setting fOrigin in GrTextureDesc, GrBackendTextureDesc or GrBackendRenderTargetDesc. Review URL: https://codereview.appspot.com/7230049 git-svn-id: http://skia.googlecode.com/svn/trunk@7594 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r7545 (render target origin change) due to layout test issues (see ↵Gravatar robertphillips@google.com2013-02-05
| | | | | | https://codereview.chromium.org/12210002/) git-svn-id: http://skia.googlecode.com/svn/trunk@7571 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for origin-TopLeft render targets in GL backend.Gravatar senorblanco@chromium.org2013-02-04
| | | | | | Review URL: https://codereview.appspot.com/7230049 git-svn-id: http://skia.googlecode.com/svn/trunk@7545 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change vertex buffer allocator functions to take size rather than layout, ↵Gravatar jvanverth@google.com2013-01-31
| | | | | | | | | | | take two. Resubmission of r7498. https://codereview.appspot.com/7228078 git-svn-id: http://skia.googlecode.com/svn/trunk@7501 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7499 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change vertex buffer allocator functions to take size rather than layout.Gravatar jvanverth@google.com2013-01-31
| | | | | | | https://codereview.appspot.com/7228078 git-svn-id: http://skia.googlecode.com/svn/trunk@7498 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add GrDrawTarget::DrawInfo, combine API for performing indexed/non-indexed ↵Gravatar bsalomon@google.com2013-01-30
| | | | | | | | draws in subclasses. Review URL: https://codereview.appspot.com/7237045 git-svn-id: http://skia.googlecode.com/svn/trunk@7466 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7439 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make a bunch of virtuals in GrDrawTarget and GrGpu private. Subclasses ↵Gravatar bsalomon@google.com2013-01-28
| | | | | | | | | shouldn't call them directly. R=robertphillips@google.com Review URL: https://codereview.appspot.com/7228048 git-svn-id: http://skia.googlecode.com/svn/trunk@7413 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
* 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
* Rename SkTDLinkedList to SkTInternalLinked list, add some methods useful for ↵Gravatar bsalomon@google.com2012-12-03
| | | | | | | | forthcoming SkTLList. Review URL: https://codereview.appspot.com/6858101 git-svn-id: http://skia.googlecode.com/svn/trunk@6643 2bbb7eff-a529-9590-31e7-b0007b416f81
* Platform/Engine -> BackendGravatar bsalomon@google.com2012-10-25
| | | | | | | | | createPlatform -> wrapBackend R=robertphillips@google.com Review URL: https://codereview.appspot.com/6785044 git-svn-id: http://skia.googlecode.com/svn/trunk@6123 2bbb7eff-a529-9590-31e7-b0007b416f81
* Switch GrGpu's GrResource list over to using SkTDLinkedListGravatar robertphillips@google.com2012-09-04
| | | | | | | | https://codereview.appspot.com/6500062/ git-svn-id: http://skia.googlecode.com/svn/trunk@5379 2bbb7eff-a529-9590-31e7-b0007b416f81
* Do premul and r/b swap conversions in a custom effectGravatar bsalomon@google.com2012-08-27
| | | | | | | | Review URL: https://codereview.appspot.com/6473060/ git-svn-id: http://skia.googlecode.com/svn/trunk@5284 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
* Rolling back r4034 (Proposed plumbing to propagate save & restore)Gravatar robertphillips@google.com2012-07-03
| | | | | | | | http://codereview.appspot.com/6346066/ git-svn-id: http://skia.googlecode.com/svn/trunk@4456 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initial support for GL_NV_path_renering. Experimental, there are still some ↵Gravatar bsalomon@google.com2012-06-28
| | | | | | | | | | issues to resolve, set gyp variable skia_nv_path_rendering=1 or build flag GR_GL_USE_NV_PATH_RENDERING to enable. http://codereview.appspot.com/6349049/ git-svn-id: http://skia.googlecode.com/svn/trunk@4390 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
* Make GrClipMaskManager configure the stencil and scissor on GrGpuGravatar bsalomon@google.com2012-06-21
| | | | | | | | Review URL: http://codereview.appspot.com/6308096/ git-svn-id: http://skia.googlecode.com/svn/trunk@4288 2bbb7eff-a529-9590-31e7-b0007b416f81
* Store clip mask location in GrClipMaskManager as a enum rather than two boolsGravatar bsalomon@google.com2012-06-18
| | | | | | | | Review URL: http://codereview.appspot.com/6306092/ git-svn-id: http://skia.googlecode.com/svn/trunk@4274 2bbb7eff-a529-9590-31e7-b0007b416f81