aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Revert of Create swizzle table inside of glsl caps (patchset #12 id:210001 ↵Gravatar egdaniel2015-11-03
| | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1420033005/ ) Reason for revert: Breaking gm's on nexus7 and s3 Original issue's description: > Create swizzle table inside of glsl caps > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4036674952f341dab0695c3b054fefa5bb8cdec1 TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1426653008
* Fix setColocatedSampleLocations on ES and GL < 4.5Gravatar cdalton2015-11-03
| | | | | | | | | Updates setColocatedSampleLocations to use glFramebufferParameteri when the DSA version glNamedFramebufferParameteri is not present. BUG=skia: Review URL: https://codereview.chromium.org/1415503008
* Create swizzle table inside of glsl capsGravatar egdaniel2015-11-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1420033005
* Reland "By default purge resources that haven't been used for 64 flushes ↵Gravatar bsalomon2015-11-03
| | | | | | | | (patchset #5 id:80001 of https://codereview.chromium.org/1316233003/ )" TBR=robertphillips@google.com Review URL: https://codereview.chromium.org/1428053003
* Revert[2] of "stop using drawSprite (at least w/ no filters) as it is going ↵Gravatar reed2015-11-03
| | | | | | | | | | | | | | away" Fixed assert in test that was calling GrRecordReplaceDraw(). That function now uses drawBitmap, so updated the test to check for that (instead of drawSprite). This reverts commit 21b766347064837e6b78d600755901aad88cd6e0. BUG=skia: TBR= Review URL: https://codereview.chromium.org/1410343011
* Clean up GrAtlas and rename it GrLayerAtlasGravatar robertphillips2015-11-03
| | | | Review URL: https://codereview.chromium.org/1412243013
* Revert of stop using drawSprite (at least w/ no filters) as it is going away ↵Gravatar robertphillips2015-11-03
| | | | | | | | | | | | | | | | | | | | | | (patchset #2 id:20001 of https://codereview.chromium.org/1411173010/ ) Reason for revert: Breaking the bots Original issue's description: > stop using drawSprite (at least w/ no filters) as it is going away > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4a21602982d411bb764e46dc47e009b12bd5cb39 TBR=senorblanco@google.com,senorblanco@chromium.org,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1413363011
* Add bleed GM variants for bmp backed by an oversized textureGravatar bsalomon2015-11-02
| | | | Review URL: https://codereview.chromium.org/1426253002
* stop using drawSprite (at least w/ no filters) as it is going awayGravatar reed2015-11-02
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1411173010
* Allow max tile size to be overridden separately from max texture size.Gravatar bsalomon2015-11-02
| | | | | | This allows internal Gr texture creation code to succeed for extraneous textures while running the bleed GM. This means we can turn on the shader variants. Review URL: https://codereview.chromium.org/1418473004
* Start making all .cpp files compile-able on all platforms.Gravatar mtklein2015-11-02
| | | | | | | | | | | | | | | | | | | | | | | I sometimes dream to hone our build process down to something as simple as $ find src -name '*.cpp' | xargs c++ <some cflags> -c -o skia.o To start, it helps if we can compile all files on all platforms. Each non-portable file guards itself with defines provided by SkTypes.h. This does not convert all non-portable code, but it's a good representative chunk. E.g. instead of having to remember which SkDebug_*.cpp to compile on which platform we can just compile all three and let the code itself sort it out. This has the nice side effect of making non-portable code declare the conditions under which it can compile explicitly. I've been testing mostly with the CMake build as it's easiest, but this should apply equally to BUILD, Gyp, and GN files... to any build system really. BUG=skia:4269 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1411283005
* Fix assert in GrGLShaderBuilder regarding shader outputsGravatar egdaniel2015-11-02
| | | | | | | | Fixes crashing bot. BUG=skia: Review URL: https://codereview.chromium.org/1408063009
* 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
* Dependencies are now added between the drawTargets in GrPipelineGravatar robertphillips2015-10-30
| | | | | | | | | | | | This CL relies on https://codereview.chromium.org/1414773002/ (Add the machinery to GrDrawTarget to enable topological sorting) BUG=skia:4094 Committed: https://skia.googlesource.com/skia/+/45a1c34f607a970933e5cd05e1df6cd8090db1be Committed: https://skia.googlesource.com/skia/+/869c5e82a725a6928a45cd1fa6945ac783b8b3d8 Review URL: https://codereview.chromium.org/1414903002
* Minor cleanup of clip mask managerGravatar robertphillips2015-10-30
| | | | | | | | | | Follow up to https://codereview.chromium.org/1418073005/ (Remove gpu-side clip mask merging from clip mask manager). The path renderer chain is only ever allocated when it is about to be used (so the delayed initialization doesn't buy us anything). We can now reduce the lifetime of the pipelineBuilder in createAlphaClipMask Review URL: https://codereview.chromium.org/1416113006
* Clarify subrect semantics for GrTextureAdjuster and handle mip maps correctly.Gravatar bsalomon2015-10-29
| | | | Review URL: https://codereview.chromium.org/1410383008
* Remove GrPipelineBuilder from getPathRenderer callGravatar robertphillips2015-10-29
| | | | | | | | | | | | | Logically this CL: Moves the PathRendererChain from GrContext to GrDrawManager - this was needed to untangled the Path-Chain/Renderer header mess - this entailed adding getDrawingMgr so the CMM could access the PathRenderingChain - this also entailed re-adding freeGpuResources to the GrDrawingMgr Moves the CanDrawArgs struct up stack Removes the GrPipelineBuilder from the CanDrawArgs struct Review URL: https://codereview.chromium.org/1407883004
* Pull texture-backed bitmap resampler out of GrTextureParamsAdjuster code ↵Gravatar bsalomon2015-10-29
| | | | | | into its own class. Review URL: https://codereview.chromium.org/1420963008
* Remove GrGLProcessor and create GrGLSLTextureSampler class.Gravatar egdaniel2015-10-29
| | | | | | | | Part ??? of separating glsl and gl BUG=skia: Review URL: https://codereview.chromium.org/1425013003
* Remove gpu-side clip mask merging from clip mask managerGravatar robertphillips2015-10-28
| | | | | | | | | | | | | In the clip mask merging path, the CMM creates new renderTargets and draws to them. In the non-MDB world this is okay b.c. all the draws land in the same drawTarget anyway. In the MDB world the draws for the new renderTargets have to land in different drawTargets. This can be resolved by a lot of plumbing and refactoring to create drawContexts for the created renderTargets or by removing the mask-merging drawing path. Since, https://codereview.chromium.org/1424853002/ (Disable gpu-side clip mask merging in the clip mask manager), appears to have stuck, this CL removes the clip mask merging code. BUG=skia:4094 BUG=skia:4519 Review URL: https://codereview.chromium.org/1418073005
* skia: Add ANGLE support on MacGravatar hendrikw2015-10-28
| | | | | | | I want to be able to compare ANGLE vs CommandBuffer for dm and nanobench on Mac, so enabling ANGLE on mac. Review URL: https://codereview.chromium.org/1395783003
* Remove min texture size supportGravatar bsalomon2015-10-28
| | | | | | BUG=skia:4524 Review URL: https://codereview.chromium.org/1430643002
* Create GLSL base class for ProgramDataManagerGravatar egdaniel2015-10-28
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1428543003
* Disable CHROMIUM_bind_uniform_location due to a spec bugGravatar kkinnunen2015-10-28
| | | | | | | | | | | | | | | | | | | | Bound uniforms that are optimized away causes GL errors when they are used. The bound location becomes unused if its bound uniform is optimized away. Updating the inactive uniform using the bound location causes a GL error from the command buffer. Alternatively, command buffer may bind another free, unbound uniform to the bound location. This causes the uniform update to update the wrong uniform. Disable the extension until the spec can be clarified and the implementation fixed, if possible and needed. BUG=skia:4454 Review URL: https://codereview.chromium.org/1417633008
* Make SkTextBlob::RunIterator public.Gravatar halcanary2015-10-27
| | | | | | | | | Motivation: This will be easier than adding a friend every time I want to create a one-off SkCanvas subclass or SkRemote::Encoder subclass. See also: SkPath::Iter. Review URL: https://codereview.chromium.org/1411723005
* skia: Fix command buffer support on the macGravatar hendrikw2015-10-27
| | | | | | | | | | | | | | | | | | The extension on the mac is .dylib, updated the name. EGL.h isn't available on mac (unless we include skia_angle.h). I've got a somewhat bad hack of defining the types that I need to get this running. GetProcedureAddress was somehow successfully grabbing gl functions from another lib. Removed this call, I copied it from ANGLE impl, but it isn't required. lib load path works differently, fixed in GYP BUG=skia:2992 Review URL: https://codereview.chromium.org/1403153002
* Disable gpu-side clip mask merging in the clip mask managerGravatar robertphillips2015-10-27
| | | | | | | | | | In the MDB world the clip mask manager would need to create a separate drawContext for each temporary mask (and we would need to support stencil draws in the drawContext). For now, disable the feature. Please see skbug.com/4519 (Re-enable gpu-side mask merging in Ganesh) BUG=skia:4094 Review URL: https://codereview.chromium.org/1424853002
* Cosmetic portion of reverted "Fix ClipMaskManager's SW-fallback logic" CLGravatar robertphillips2015-10-27
| | | | | | This CL isolates the cosmetic portion so the functional portion is clearer. It relies on https://codereview.chromium.org/1412883005/ (Fix ClipMaskManager's SW-fallback logic (take 2)) Review URL: https://codereview.chromium.org/1422023003
* Fix ClipMaskManager's SW-fallback logic (take 2)Gravatar robertphillips2015-10-27
| | | | | | | | https://codereview.chromium.org/1421533007/ (Fix ClipMaskManager's SW-fallback logic) had a logic error in it. It did not take into account createAlphaClipMask's fallback to non-Stenciled drawing (in drawElement). This CL adds that logic and strips out the unnecessary changes (for clarity). Review URL: https://codereview.chromium.org/1412883005
* Move scissor state to GrAppliedClipGravatar bsalomon2015-10-27
| | | | Review URL: https://codereview.chromium.org/1385233002
* Fix up the clip mask manager's creation of paths (w.r.t. volatility)Gravatar robertphillips2015-10-26
| | | | | | | | | | I don't expect this to make any difference (perf-wise) but it seems more correct. This CL relies on https://codereview.chromium.org/1421533007/ (Fix ClipMaskManager's SW-fallback logic) Committed: https://skia.googlesource.com/skia/+/953fe3139fa60ce56abcfa45a3647d924e637083 Review URL: https://codereview.chromium.org/1419403002
* Revert of Fix ClipMaskManager's SW-fallback logic (patchset #4 id:60001 of ↵Gravatar robertphillips2015-10-26
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1421533007/ ) Reason for revert: Logic may be incorrect Original issue's description: > Fix ClipMaskManager's SW-fallback logic > > > 'useSWOnlyPath' was not correctly toggling between stencil and color draws so there was a mismatch with the behavior in createAlphaClipMask (i.e., we were inadvertently rendering some of the elements in a clip using SW but using stenciling for others - precisely what 'useSWOnlyPath' was intended to prevent). > > Committed: https://skia.googlesource.com/skia/+/5c3ea4cd3921e8904d4f201bcdedfd5b8a726542 TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1426443008
* Revert of Fix up the clip mask manager's creation of paths (w.r.t. ↵Gravatar robertphillips2015-10-26
| | | | | | | | | | | | | | | | | | | | | | | volatility) (patchset #1 id:1 of https://codereview.chromium.org/1419403002/ ) Reason for revert: Logic may be incorrect Original issue's description: > Fix up the clip mask manager's creation of paths (w.r.t. volatility) > > I don't expect this to make any difference (perf-wise) but it seems more correct. > > This CL relies on https://codereview.chromium.org/1421533007/ (Fix ClipMaskManager's SW-fallback logic) > > Committed: https://skia.googlesource.com/skia/+/953fe3139fa60ce56abcfa45a3647d924e637083 TBR=jvanverth@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1415413007
* Fix up the clip mask manager's creation of paths (w.r.t. volatility)Gravatar robertphillips2015-10-26
| | | | | | | | I don't expect this to make any difference (perf-wise) but it seems more correct. This CL relies on https://codereview.chromium.org/1421533007/ (Fix ClipMaskManager's SW-fallback logic) Review URL: https://codereview.chromium.org/1419403002
* Fix GLCaps order for CoreProfileGravatar egdaniel2015-10-26
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1417503005
* Make appending default precision be controled by GLSLGravatar egdaniel2015-10-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1403373012
* Fix ClipMaskManager's SW-fallback logicGravatar robertphillips2015-10-26
| | | | | | 'useSWOnlyPath' was not correctly toggling between stencil and color draws so there was a mismatch with the behavior in createAlphaClipMask (i.e., we were inadvertently rendering some of the elements in a clip using SW but using stenciling for others - precisely what 'useSWOnlyPath' was intended to prevent). Review URL: https://codereview.chromium.org/1421533007
* Fix gl caps for mixed sample supportGravatar egdaniel2015-10-26
| | | | | | | | | | The dependencies between glsl caps and some gl ones were more complex than I had thought with original change especially in regards to mix samples, advanced blends, and similar features. This changes simply reverts back to the original order of setting the caps so it should fix all perf issues that were seen in the X1 BUG=skia:4505 Review URL: https://codereview.chromium.org/1420423002
* Disable MIP mapping on PowerVR 54x. This GPU spews a lot of errors when ↵Gravatar bsalomon2015-10-26
| | | | | | | | using GenerateMipMaps. BUG=skia:4514 Review URL: https://codereview.chromium.org/1414743008
* Revert of Experimental CL to stop using subdata (patchset #1 id:1 of ↵Gravatar joshualitt2015-10-23
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1413263006/ ) Reason for revert: might be breaking tsan Original issue's description: > Experimental CL to stop using subdata > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/383ce32e3e5ca0c8997ece827205f61d348ee56f TBR=bsalomon@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1409123004
* Narrow the distribution of GrDrawTarget a bitGravatar robertphillips2015-10-23
| | | | | | | BUG=skia:4094 TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1420043002
* Experimental CL to stop using subdataGravatar joshualitt2015-10-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1413263006
* Move GrGLBufferImpl's GL calls to behind GrGLGpuGravatar joshualitt2015-10-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1417313003
* Add immediate mode option for gpu configs in dmGravatar bsalomon2015-10-23
| | | | Review URL: https://codereview.chromium.org/1421853002
* Remove mac buffer impl warGravatar joshualitt2015-10-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1419203002
* tunnel down texture-size-constraint to imagefiltersGravatar reed2015-10-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1421493003
* Force the s4 to use highp for transforming to NDSGravatar egdaniel2015-10-22
| | | | | | | | | | This seems to fix some rendering issues. Currently this will use highp for all draws on the s4, but if we see perf issues we can refine this later to specific types of draws. BUG=skia: Review URL: https://codereview.chromium.org/1419593003
* Remove unused functions from GrGLVertexBuffer / IndexBufferGravatar joshualitt2015-10-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1416303002
* Fix force high precision for arm gpusGravatar egdaniel2015-10-22
| | | | | | | | | This fixes a bug introduced by recent changes to GLSL caps. TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1422553004
* Add version string and force highp NDS transfrom to GLSLCapsGravatar egdaniel2015-10-22
| | | | | | | | | | This also include the use of any() in the shaders. BUG=skia: Committed: https://skia.googlesource.com/skia/+/cef4bce8e260b49bf3417eadbac806cf7d39cdc8 Review URL: https://codereview.chromium.org/1417993004