Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(10521)

Issue 4645082: GPU-based Gaussian blur (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
13 years, 4 months ago by Stephen White
Modified:
13 years, 4 months ago
Reviewers:
twiz, bsalomon, reed1
Base URL:
http://skia.googlecode.com/svn/trunk/
Visibility:
Public.

Description

This is a first stab at implementing a GPU-based Gaussian blur in Ganesh. The convolution shader is implemented as a new filtering mode. There are several known issues: - no support for blur types other than "normal" - FBO truncation problem at high zoom values - uses bilinear for upsampling instead of Mitchell Nevertheless, I'd like to get it in (default "off") so I can continue work without too much code churn.

Patch Set 1 #

Patch Set 2 : Revert some unnecessary changes #

Total comments: 9

Patch Set 3 : Respond to review comments #

Total comments: 7

Patch Set 4 : (Re-uploading) Use new SkMaskFilter accessors, review comments #

Patch Set 5 : Remove unnecessary changes to SampleBlur #

Total comments: 6

Patch Set 6 : Fixes for review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+381 lines, -9 lines) Patch
gpu/include/GrContext.h View 1 2 3 4 5 1 chunk +15 lines, -0 lines 0 comments Download
gpu/include/GrSamplerState.h View 1 2 3 4 5 5 chunks +27 lines, -0 lines 0 comments Download
gpu/src/GrContext.cpp View 1 2 3 4 5 1 chunk +19 lines, -0 lines 0 comments Download
gpu/src/GrGLProgram.h View 1 2 3 4 5 3 chunks +6 lines, -0 lines 0 comments Download
gpu/src/GrGLProgram.cpp View 1 2 3 4 5 4 chunks +52 lines, -0 lines 0 comments Download
gpu/src/GrGpuGL.cpp View 1 2 3 4 5 4 chunks +17 lines, -6 lines 0 comments Download
gpu/src/GrGpuGLShaders.h View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
gpu/src/GrGpuGLShaders.cpp View 1 2 3 4 5 4 chunks +23 lines, -0 lines 0 comments Download
src/gpu/SkGpuDevice.cpp View 1 2 3 4 5 3 chunks +219 lines, -3 lines 0 comments Download

Messages

Total messages: 23
Stephen White
13 years, 4 months ago (2011-07-06 20:40:19 UTC) #1
Stephen White
Revert some unnecessary changes
13 years, 4 months ago (2011-07-06 20:46:18 UTC) #2
Stephen White
Please take a look. Thanks!
13 years, 4 months ago (2011-07-06 20:51:28 UTC) #3
reed1
Lets chip away at this in pieces, so we don't feel rushed. I will submit ...
13 years, 4 months ago (2011-07-06 21:29:21 UTC) #4
bsalomon
Overall the Gr changes look good to me. I'll defer to Mike on the Sk ...
13 years, 4 months ago (2011-07-06 21:32:07 UTC) #5
twiz
Quick drive-by. http://codereview.appspot.com/4645082/diff/10001/gpu/include/GrSamplerState.h File gpu/include/GrSamplerState.h (right): http://codereview.appspot.com/4645082/diff/10001/gpu/include/GrSamplerState.h#newcode231 gpu/include/GrSamplerState.h:231: memcpy(fKernel, kernel, kernelWidth * sizeof(float)); Small nit: ...
13 years, 4 months ago (2011-07-06 21:40:04 UTC) #6
Stephen White
On 2011/07/06 21:29:21, reed1 wrote: > Lets chip away at this in pieces, so we ...
13 years, 4 months ago (2011-07-06 21:49:42 UTC) #7
Stephen White
http://codereview.appspot.com/4645082/diff/10001/gpu/include/GrSamplerState.h File gpu/include/GrSamplerState.h (right): http://codereview.appspot.com/4645082/diff/10001/gpu/include/GrSamplerState.h#newcode231 gpu/include/GrSamplerState.h:231: memcpy(fKernel, kernel, kernelWidth * sizeof(float)); On 2011/07/06 21:40:04, twiz ...
13 years, 4 months ago (2011-07-06 22:07:55 UTC) #8
Stephen White
Respond to review comments
13 years, 4 months ago (2011-07-06 22:21:02 UTC) #9
bsalomon
>http://codereview.appspot.com/4645082/diff/10001/gpu/src/GrGpuGLShaders.cpp#n... >gpu/src/GrGpuGLShaders.cpp:824: stage.fKernelWidth = >fCurrDrawState.fSamplerStates[s].getKernelWidth(); >On 2011/07/06 21:32:07, bsalomon wrote: >> The program desc also ...
13 years, 4 months ago (2011-07-07 13:06:48 UTC) #10
Stephen White
Thanks for your review. http://codereview.appspot.com/4645082/diff/12003/gpu/src/GrGpuGL.cpp File gpu/src/GrGpuGL.cpp (right): http://codereview.appspot.com/4645082/diff/12003/gpu/src/GrGpuGL.cpp#newcode1831 gpu/src/GrGpuGL.cpp:1831: if (GrSamplerState::kNearest_Filter == sampler.getFilter()) { ...
13 years, 4 months ago (2011-07-07 15:56:52 UTC) #11
Stephen White
Updated for new SkMaskFilter accessors; review comments
13 years, 4 months ago (2011-07-07 15:58:35 UTC) #12
Stephen White
Fix indentation; add default case for grToGLFilter
13 years, 4 months ago (2011-07-07 16:04:12 UTC) #13
Stephen White
(Re-uploading) Use new SkMaskFilter accessors, review comments
13 years, 4 months ago (2011-07-07 16:06:17 UTC) #14
Stephen White
Remove unnecessary changes to SampleBlur
13 years, 4 months ago (2011-07-07 16:10:23 UTC) #15
Stephen White
Sorry for the flurry of patches -- Rietveld seems to be having a hissy fit, ...
13 years, 4 months ago (2011-07-07 16:20:49 UTC) #16
reed1
Hehehe, and they tell us the machine has no soul.... On Thu, Jul 7, 2011 ...
13 years, 4 months ago (2011-07-07 16:23:43 UTC) #17
bsalomon
LGTM
13 years, 4 months ago (2011-07-07 22:07:47 UTC) #18
reed1
Mostly just api comments. http://codereview.appspot.com/4645082/diff/11013/gpu/include/GrContext.h File gpu/include/GrContext.h (left): http://codereview.appspot.com/4645082/diff/11013/gpu/include/GrContext.h#oldcode527 gpu/include/GrContext.h:527: If this is in the ...
13 years, 4 months ago (2011-07-08 15:25:09 UTC) #19
Stephen White
http://codereview.appspot.com/4645082/diff/11013/gpu/include/GrContext.h File gpu/include/GrContext.h (left): http://codereview.appspot.com/4645082/diff/11013/gpu/include/GrContext.h#oldcode527 gpu/include/GrContext.h:527: On 2011/07/08 15:25:09, reed1 wrote: > If this is ...
13 years, 4 months ago (2011-07-08 16:40:44 UTC) #20
Stephen White
Fixes for review comments
13 years, 4 months ago (2011-07-08 16:41:24 UTC) #21
reed1
LGTM
13 years, 4 months ago (2011-07-08 16:44:51 UTC) #22
Stephen White
13 years, 4 months ago (2011-07-08 18:50:47 UTC) #23
Landed as r1830 -- closing.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b