diff options
author | 2014-08-28 05:41:14 -0700 | |
---|---|---|
committer | 2014-08-28 05:41:14 -0700 | |
commit | 7b3d5ee72c2238aa239bce4d5b3aea98a437ca7a (patch) | |
tree | b1d226cbbf2572337c494e3cc72ca83d628e4787 /src/gpu/GrDistanceFieldTextContext.cpp | |
parent | 90e8457ab32bcc14b15876144ca47489d7b836ce (diff) |
Make setVertexAttribs in GrDrawState take a stride parameter.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/af013bf8afc4c77ab8ff230f536e2ade973427fa
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/511593004
Diffstat (limited to 'src/gpu/GrDistanceFieldTextContext.cpp')
-rwxr-xr-x | src/gpu/GrDistanceFieldTextContext.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/gpu/GrDistanceFieldTextContext.cpp b/src/gpu/GrDistanceFieldTextContext.cpp index b7b4f9903f..dc0ea954ec 100755 --- a/src/gpu/GrDistanceFieldTextContext.cpp +++ b/src/gpu/GrDistanceFieldTextContext.cpp @@ -44,6 +44,8 @@ extern const GrVertexAttrib gTextVertexAttribs[] = { {kVec2f_GrVertexAttribType, sizeof(SkPoint) , kEffect_GrVertexAttribBinding} }; +static const size_t kTextVASize = 2 * sizeof(SkPoint); + // position + color + texture coord extern const GrVertexAttrib gTextVertexWithColorAttribs[] = { {kVec2f_GrVertexAttribType, 0, kPosition_GrVertexAttribBinding}, @@ -51,6 +53,8 @@ extern const GrVertexAttrib gTextVertexWithColorAttribs[] = { {kVec2f_GrVertexAttribType, sizeof(SkPoint) + sizeof(GrColor), kEffect_GrVertexAttribBinding} }; +static const size_t kTextVAColorSize = 2 * sizeof(SkPoint) + sizeof(GrColor); + }; GrDistanceFieldTextContext::GrDistanceFieldTextContext(GrContext* context, @@ -342,10 +346,12 @@ HAS_ATLAS: fMaxVertices = kMinRequestedVerts; if (useColorVerts) { fDrawTarget->drawState()->setVertexAttribs<gTextVertexWithColorAttribs>( - SK_ARRAY_COUNT(gTextVertexWithColorAttribs)); + SK_ARRAY_COUNT(gTextVertexWithColorAttribs), + kTextVAColorSize); } else { fDrawTarget->drawState()->setVertexAttribs<gTextVertexAttribs>( - SK_ARRAY_COUNT(gTextVertexAttribs)); + SK_ARRAY_COUNT(gTextVertexAttribs), + kTextVASize); } bool flush = fDrawTarget->geometryHints(&fMaxVertices, NULL); if (flush) { @@ -353,10 +359,12 @@ HAS_ATLAS: fContext->flush(); if (useColorVerts) { fDrawTarget->drawState()->setVertexAttribs<gTextVertexWithColorAttribs>( - SK_ARRAY_COUNT(gTextVertexWithColorAttribs)); + SK_ARRAY_COUNT(gTextVertexWithColorAttribs), + kTextVAColorSize); } else { fDrawTarget->drawState()->setVertexAttribs<gTextVertexAttribs>( - SK_ARRAY_COUNT(gTextVertexAttribs)); + SK_ARRAY_COUNT(gTextVertexAttribs), + kTextVASize); } } fMaxVertices = kDefaultRequestedVerts; @@ -406,7 +414,7 @@ HAS_ATLAS: size_t vertSize = fUseLCDText ? (2 * sizeof(SkPoint)) : (2 * sizeof(SkPoint) + sizeof(GrColor)); - SkASSERT(vertSize == fDrawTarget->getDrawState().getVertexSize()); + SkASSERT(vertSize == fDrawTarget->getDrawState().getVertexStride()); SkPoint* positions = reinterpret_cast<SkPoint*>( reinterpret_cast<intptr_t>(fVertices) + vertSize * fCurrVertex); |