diff options
author | egdaniel <egdaniel@google.com> | 2014-09-02 10:01:30 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-09-02 10:01:30 -0700 |
commit | 842b086a3c876061e1279d47e6009629c9818b03 (patch) | |
tree | 53242d7978a69878f238c4c0037bc2b3818ce2f2 /src/gpu/gl/GrGLProgramDesc.cpp | |
parent | 871dca8ea99f49b8bbf118d0ccbd9da0c59467c3 (diff) |
When ignoring color input don't use vertex attribs on gpu
Also rename SolidWhite_ColorInput enum to be AllOnes_ColorInput to better reflect what it's use is
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/525433002
Diffstat (limited to 'src/gpu/gl/GrGLProgramDesc.cpp')
-rw-r--r-- | src/gpu/gl/GrGLProgramDesc.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gpu/gl/GrGLProgramDesc.cpp b/src/gpu/gl/GrGLProgramDesc.cpp index 286924e1ef..545ed2114c 100644 --- a/src/gpu/gl/GrGLProgramDesc.cpp +++ b/src/gpu/gl/GrGLProgramDesc.cpp @@ -188,7 +188,9 @@ bool GrGLProgramDesc::Build(const GrDrawState& drawState, #endif bool defaultToUniformInputs = GR_GL_NO_CONSTANT_ATTRIBUTES || gpu->caps()->pathRenderingSupport(); - if (defaultToUniformInputs && !requiresColorAttrib && inputColorIsUsed) { + if (!inputColorIsUsed && !skipColor) { + header->fColorInput = kAllOnes_ColorInput; + } else if (defaultToUniformInputs && !requiresColorAttrib && inputColorIsUsed) { header->fColorInput = kUniform_ColorInput; } else { header->fColorInput = kAttribute_ColorInput; @@ -198,7 +200,7 @@ bool GrGLProgramDesc::Build(const GrDrawState& drawState, bool covIsSolidWhite = !requiresCoverageAttrib && 0xffffffff == drawState.getCoverageColor(); if ((covIsSolidWhite || !inputCoverageIsUsed) && !skipCoverage) { - header->fCoverageInput = kSolidWhite_ColorInput; + header->fCoverageInput = kAllOnes_ColorInput; } else if (defaultToUniformInputs && !requiresCoverageAttrib && inputCoverageIsUsed) { header->fCoverageInput = kUniform_ColorInput; } else { |