diff options
author | 2015-07-22 15:08:53 -0700 | |
---|---|---|
committer | 2015-07-22 15:08:53 -0700 | |
commit | 7c157a988845fb00f9024d6db6dda142c3458033 (patch) | |
tree | 3a3523e91c6ec7501afd200d5402ba41347a73f8 /src/gpu/effects/GrDitherEffect.cpp | |
parent | 243406e5800ad4ff296da8d4cb30d0a33d6f7b2a (diff) |
Added GrGLFragmentProcessor::EmitArgs struct for use with emitCode()
BUG=skia:
Review URL: https://codereview.chromium.org/1251173002
Diffstat (limited to 'src/gpu/effects/GrDitherEffect.cpp')
-rw-r--r-- | src/gpu/effects/GrDitherEffect.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/gpu/effects/GrDitherEffect.cpp b/src/gpu/effects/GrDitherEffect.cpp index 1638b1fdec..e87014094a 100644 --- a/src/gpu/effects/GrDitherEffect.cpp +++ b/src/gpu/effects/GrDitherEffect.cpp @@ -63,12 +63,7 @@ class GLDitherEffect : public GrGLFragmentProcessor { public: GLDitherEffect(const GrProcessor&); - virtual void emitCode(GrGLFPBuilder* builder, - const GrFragmentProcessor& fp, - const char* outputColor, - const char* inputColor, - const TransformedCoordsArray&, - const TextureSamplerArray&) override; + virtual void emitCode(EmitArgs& args) override; private: typedef GrGLFragmentProcessor INHERITED; @@ -77,13 +72,8 @@ private: GLDitherEffect::GLDitherEffect(const GrProcessor&) { } -void GLDitherEffect::emitCode(GrGLFPBuilder* builder, - const GrFragmentProcessor& fp, - const char* outputColor, - const char* inputColor, - const TransformedCoordsArray&, - const TextureSamplerArray& samplers) { - GrGLFragmentBuilder* fsBuilder = builder->getFragmentShaderBuilder(); +void GLDitherEffect::emitCode(EmitArgs& args) { + GrGLFragmentBuilder* fsBuilder = args.fBuilder->getFragmentShaderBuilder(); // Generate a random number based on the fragment position. For this // random number generator, we use the "GLSL rand" function // that seems to be floating around on the internet. It works under @@ -97,7 +87,7 @@ void GLDitherEffect::emitCode(GrGLFPBuilder* builder, "fract(sin(dot(%s.xy ,vec2(12.9898,78.233))) * 43758.5453);\n", fsBuilder->fragmentPosition()); fsBuilder->codeAppendf("\t\t%s = (1.0/255.0) * vec4(r, r, r, r) + %s;\n", - outputColor, GrGLSLExpr4(inputColor).c_str()); + args.fOutputColor, GrGLSLExpr4(args.fInputColor).c_str()); } ////////////////////////////////////////////////////////////////////////////// |