aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Revert of Added distance vector support for CircleGeometryProcessor ↵Gravatar mtklein2016-07-30
| | | | | | | | | | | | | | | | | | | | | | | (patchset #4 id:60001 of https://codereview.chromium.org/2190023002/ ) Reason for revert: Reverting so I can revert https://codereview.chromium.org/2114993002/ Original issue's description: > Added distance vector support for CircleGeometryProcessor > > This CL's base is the CL that sets up the distance vector field req. exposure: https://codereview.chromium.org/2114993002/ > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2190023002 > > Committed: https://skia.googlesource.com/skia/+/779e1924eaf7c5652dee93e0e8e975bbf5723b37 TBR=egdaniel@google.com,robertphillips@google.com,dvonbeck@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=skia: Review-Url: https://codereview.chromium.org/2196053002
* If scissor would be empty in GrClipMaskManager::SetupClipping indicate draw ↵Gravatar bsalomon2016-07-29
| | | | | | | | | can be skipped. BUG=chromium:632185 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196803002 Review-Url: https://codereview.chromium.org/2196803002
* Add ES 3.0 fallback for instanced renderingGravatar csmartdalton2016-07-29
| | | | | | | | | | | | | | | Adds the ability for GLInstancedRendering to use glDrawElementsInstanced when glDrawElementsIndirect is not supported. The only remaining 3.1 dependency now is EXT_texture_buffer. Also moves the cap for glDraw*Instanced out of GrCaps and into GrGLCaps. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2193303002 Review-Url: https://codereview.chromium.org/2193303002
* Fix vulkan buildGravatar egdaniel2016-07-29
| | | | | | | | TBR=bsalomon@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2193883002 Review-Url: https://codereview.chromium.org/2193883002
* Added distance vector support for CircleGeometryProcessorGravatar dvonbeck2016-07-29
| | | | | | | | | This CL's base is the CL that sets up the distance vector field req. exposure: https://codereview.chromium.org/2114993002/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2190023002 Review-Url: https://codereview.chromium.org/2190023002
* Properly recycle uniform buffers in vulkanGravatar egdaniel2016-07-29
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2195713002 Review-Url: https://codereview.chromium.org/2195713002
* GrFP can express distance vector field req., program builder declares ↵Gravatar dvonbeck2016-07-29
| | | | | | | | | | | | | | | | | | | | variable for it This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates: - from child FPs to their parent - from parent FPs to the GrPaint - from GrPaint through the PipelineBuilder into GrPipeline - acessed from GrPipeline by GrGLSLProgramBuilder GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method. This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002 Review-Url: https://codereview.chromium.org/2114993002
* Use HashSet instead of Dynamic hash for tracking vulkan resourcesGravatar egdaniel2016-07-29
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2194823003 Review-Url: https://codereview.chromium.org/2194823003
* Remove GrContext::applyGammaGravatar robertphillips2016-07-29
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2191323002 Review-Url: https://codereview.chromium.org/2191323002
* Add test configs for instanced renderingGravatar csmartdalton2016-07-29
| | | | | | | | | | | | | | | Adds the following configs and enables them on select bots: glinst, glinst4, glinstdit4, glinst16, glinstdit16, esinst, esinst4, esinstdit4 Makes general changes to GrContextOptions, GrCaps, etc. to facilitate this. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182783004 Review-Url: https://codereview.chromium.org/2182783004
* Merge ProgramDesc's for GL and VulkanGravatar egdaniel2016-07-29
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2184413002 Review-Url: https://codereview.chromium.org/2184413002
* Don't call finish on GrDrawTarget if we drew no batchesGravatar egdaniel2016-07-28
| | | | | | | | | | | This might give us some minor perf gains in vulkan since we won't be submitting command buffers that we've added to batch draws to. Running nanobench this does seem to happen pretty often. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2179903008 Review-Url: https://codereview.chromium.org/2179903008
* Fix GrDrawContextPriv::stencilRectGravatar csmartdalton2016-07-27
| | | | | | | | | | | | | Updates stencilRect to call drawNonAAFilledRect instead of drawFilledRect. drawFilledRect can use coverage AA, which isn't appropriate for stencil draws. Also modifies drawNonAAFilledRect to take a "useHWAA" argument instead of trying to deduce whether it should be used. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187583002 Review-Url: https://codereview.chromium.org/2187583002
* Rename GrContext's newDrawContext & drawContext to makeDrawContextGravatar robertphillips2016-07-27
| | | | | | | | These both return sk_sp. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186073002 Review-Url: https://codereview.chromium.org/2186073002
* require semi at the end of SkASSERT and friendsGravatar caryclark2016-07-27
| | | | | | | | R=bungeman@google.com TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185063002 Review-Url: https://codereview.chromium.org/2185063002
* Add gyp define to enable vulkan debug layersGravatar egdaniel2016-07-27
| | | | | | | | | | | | | | | | | | On Debug vulkan bots, running with the debug layers on seems to be adding more than an hour to the total running time. Since we suppress any output on the bots anyways the debug layers are serving no purpose. Thus I am adding a gyp define to disable the layers on the bot. With this change, by default when running vulkan in Debug, the debug_layers will be enabled. The bots should disable the layers. Android framework should also have them disabled by default. TBR=djsollen@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185953003 Review-Url: https://codereview.chromium.org/2185953003
* Simplify color space xform storage and usage (float[] vs. SkMatrix44)Gravatar brianosman2016-07-27
| | | | | | | | | | Public API is really just internal. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185533005 TBR=bsalomon@google.com Review-Url: https://codereview.chromium.org/2185533005
* Implement coverage AA for skewed rects with local coordsGravatar csmartdalton2016-07-26
| | | | | | | | | | | Adds a path fallback for rects with local coords that can't be drawn with an analytic shader. This is accomplished by modifying the view matrix and then drawing the local rect/quad. BUG=skia:5500, 7508 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183223002 Review-Url: https://codereview.chromium.org/2183223002
* Use Windowing system-specific WindowContext factories.Gravatar bsalomon2016-07-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2169543002 Review-Url: https://codereview.chromium.org/2169543002
* Reduce usage of MakeRenderTargetDirectGravatar robertphillips2016-07-26
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187573002 Review-Url: https://codereview.chromium.org/2187573002
* Remove SkSurfaceProps gamma-correctness flag entirely.Gravatar brianosman2016-07-26
| | | | | | | | | | | | | This is no longer required - gamma-correctness is now just based on the presence or absence of a color space. Public API change is just removal of (unused) flag. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188463002 TBR=bsalomon@google.com Review-Url: https://codereview.chromium.org/2188463002
* Always supply a color space (sRGB for now) with F16Gravatar brianosman2016-07-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2177193004 Review-Url: https://codereview.chromium.org/2177193004
* Move prepareForExternalIO from GrRenderTarget to GrDrawContextGravatar robertphillips2016-07-26
| | | | | | | | This is part of the push to remove GrRenderTarget from SkGpuDevice GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182543003 Review-Url: https://codereview.chromium.org/2182543003
* Reuse sampler descriptor set allocations in VulkanGravatar egdaniel2016-07-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2172873003 Review-Url: https://codereview.chromium.org/2172873003
* Just pass the draw context to paint conversionGravatar brianosman2016-07-25
| | | | | | | | | | Concentrate on using draw context functionality to answer gamma and color related queries in more places. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182603003 Review-Url: https://codereview.chromium.org/2182603003
* SkSL performance improvements (plus a couple of minor warning fixes)Gravatar ethannicholas2016-07-25
| | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2131223002 Committed: https://skia.googlesource.com/skia/+/9fd67a1f53809f5eff1210dd107241b450c48acc Review-Url: https://codereview.chromium.org/2131223002
* remove/deprecate SkBitmap::getTexture, as it now always returns falseGravatar reed2016-07-25
| | | | | | | | | oh happy day BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175873002 Review-Url: https://codereview.chromium.org/2175873002
* remove fClipStack and attach/deattach-from-canvasGravatar reed2016-07-25
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180793002 Review-Url: https://codereview.chromium.org/2180793002
* Add destination color space to AsFPArgs. Eliminates last XFORMTODO.Gravatar brianosman2016-07-25
| | | | | | | | | | | | This is going to be needed in many more places as I finish connecting the dots. Even better - I'd like to switch to a world where SkColorSpace != nullptr is the only signal we use for gamma-correct rendering, so I can eliminate SkSourceGammaTreatment and SkSurfaceProps::isGammaCorrect. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180503002 Review-Url: https://codereview.chromium.org/2180503002
* Remove asserts on scissor size in VulkanGravatar egdaniel2016-07-22
| | | | | | | | | | | | These are asserts are firing from a recent change to our scissor code. Since these asserts were added, the Vulkan spec has been updated to no longer require the scissor is insides the bounds of the image, just that x + width does not overflow. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2171283004 Review-Url: https://codereview.chromium.org/2171283004
* Bundle SkShader::asFragmentProcessor arguments in a structGravatar brianosman2016-07-22
| | | | | | | | | | The signature of this thing keeps changing (and is about to change again). This just makes maintenance much easier. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175563003 Review-Url: https://codereview.chromium.org/2175563003
* Recycle small uniform buffers.Gravatar jvanverth2016-07-22
| | | | | | | BUG=skia:5031 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2159333002 Review-Url: https://codereview.chromium.org/2159333002
* Connect dst color space in a few places (removing TODOs)Gravatar brianosman2016-07-22
| | | | | | | | | | | There is one more XFORMTODO left, but it requires more plumbing. With this change, certain drawing paths do gamut conversion with no special hacking required. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174843002 Review-Url: https://codereview.chromium.org/2174843002
* Allow GrReducedClip to take non-integer query boundsGravatar csmartdalton2016-07-22
| | | | | | | | | | | Fixes places where AA bloat was being conflated with geometric boundaries and updates GrReducedClip to work with non-integer query bounds. This allows for better clip reduction with AA shared edges. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2160093002 Review-Url: https://codereview.chromium.org/2160093002
* Don't ask GLX for EGL procs.Gravatar mtklein2016-07-22
| | | | | | | | | Seems to fix my woes. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2168293003 Review-Url: https://codereview.chromium.org/2168293003
* Revert of Retract PipelineBuilder some more (patchset #9 id:160001 of ↵Gravatar bsalomon2016-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2092893003/ ) Reason for revert: skbug.com/5559 Original issue's description: > Retract PipelineBuilder some more > > The main part of this CL is widening SkDrawContext::drawBatch's API to accept the userStencilSettings & drawFace > > There is some ancillary spookiness related to expanding the should_apply_coverage_aa & mustUseHWAA methods to encompass mixedSamples > > Calved off: > https://codereview.chromium.org/2165283002/ (Remove DrawFace enum from GrPipelineBuilder) > https://codereview.chromium.org/2167183002/ (Minor change to Ganesh path renderers) > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2092893003 > > Committed: https://skia.googlesource.com/skia/+/2895eeb11a9f0d9c0018d49dd4bc45f6c6fc062c TBR=robertphillips@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2175573004
* Cleanup of code that converts from GPU-backed resources to SkImageInfoGravatar brianosman2016-07-22
| | | | | | | | | | | | | | | | | Functions like GrMakeInfoFromTexture encouraged incorrect code to be written. Similarly, the ability to construct an info from any GrSurface was never going to be correct. Luckily, the only client of that had all of the correct parameters much higher on the stack (and dictated or replaced most of the properties of the returned info anyway). With this, I can finally remove the color space as an output of the pixel config -> color type conversion, which was never going to be correct. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2173513002 Review-Url: https://codereview.chromium.org/2173513002
* Add SkColorSpace to GrDrawContextGravatar brianosman2016-07-21
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164363002 Review-Url: https://codereview.chromium.org/2164363002
* Reenable support for CHROMIUM_set_uniform_locationGravatar bsalomon2016-07-21
| | | | | | | BUG=skia:5015 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167303002 Review-Url: https://codereview.chromium.org/2167303002
* Retract PipelineBuilder some moreGravatar robertphillips2016-07-21
| | | | | | | | | | | | | | The main part of this CL is widening SkDrawContext::drawBatch's API to accept the userStencilSettings & drawFace There is some ancillary spookiness related to expanding the should_apply_coverage_aa & mustUseHWAA methods to encompass mixedSamples Calved off: https://codereview.chromium.org/2165283002/ (Remove DrawFace enum from GrPipelineBuilder) https://codereview.chromium.org/2167183002/ (Minor change to Ganesh path renderers) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2092893003 Review-Url: https://codereview.chromium.org/2092893003
* Setup system in Vulkan to reuse VkDescriptorSet allocations.Gravatar egdaniel2016-07-21
| | | | | | | | | | This CL uses the new system for uniform buffers. In a follow up CL I will add support for samplers. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163673002 Review-Url: https://codereview.chromium.org/2163673002
* Remove SkGrPixelRefGravatar robertphillips2016-07-21
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167173002 Review-Url: https://codereview.chromium.org/2167173002
* Remove DrawFace enum from GrPipelineBuilderGravatar robertphillips2016-07-21
| | | | | | | | | This gets GrPipelineBuilder.h out of the headers GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002 Committed: https://skia.googlesource.com/skia/+/da152ebb032c61bb2561bbb3e9a78037ad174d34 Review-Url: https://codereview.chromium.org/2165283002
* Minor change to Ganesh path renderersGravatar robertphillips2016-07-21
| | | | | | | | | | In large part this is an attempt to get non-substantive changes out of https://codereview.chromium.org/2092893003/ (Retract PipelineBuilder some more) All the other parameters extracted from DrawPathArgs are passed around by reference except for the userStencilSettings GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2167183002 Review-Url: https://codereview.chromium.org/2167183002
* Revert of Remove DrawFace enum from GrPipelineBuilder (patchset #2 id:20001 ↵Gravatar robertphillips2016-07-21
| | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/2165283002/ ) Reason for revert: No Vulkan bot in CQ :( Original issue's description: > Remove DrawFace enum from GrPipelineBuilder > > This gets GrPipelineBuilder.h out of the headers > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002 > > Committed: https://skia.googlesource.com/skia/+/da152ebb032c61bb2561bbb3e9a78037ad174d34 TBR=bsalomon@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2167193002
* Remove DrawFace enum from GrPipelineBuilderGravatar robertphillips2016-07-21
| | | | | | | | This gets GrPipelineBuilder.h out of the headers GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165283002 Review-Url: https://codereview.chromium.org/2165283002
* Deprecate SkDevice::accessBitmap methodGravatar robertphillips2016-07-21
| | | | | | | | | | Relies on https://codereview.chromium.org/2162423003/ (Add SK_SUPPORT_LEGACY_ACCESSBITMAP Skia guard) landing in Chromium first. Calved off: https://codereview.chromium.org/2163323002/ (Add desired width & height to drawContext (as opposed to using the width & height of the RT)) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2168483003 Review-Url: https://codereview.chromium.org/2168483003
* Adding color space to SkSpecialImageGravatar brianosman2016-07-21
| | | | | | | | | | Mostly means that GPU backed special images need to be supplied (and store) a color space object. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163343002 Review-Url: https://codereview.chromium.org/2163343002
* Adding an SkColorSpace to SkImage_GpuGravatar brianosman2016-07-20
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165703003 Review-Url: https://codereview.chromium.org/2165703003
* remove dead methods now that we use specials exclusively for imagefiltersGravatar reed2016-07-20
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164763003 Review-Url: https://codereview.chromium.org/2164763003