diff options
author | 2017-05-03 14:36:54 -0400 | |
---|---|---|
committer | 2017-05-03 19:08:40 +0000 | |
commit | ff926502069d0ddafaecc18dc08973762e4befd2 (patch) | |
tree | 5c8c4335c6a3b71006ce2e3646987930ecb2e28e /src/gpu/ops/GrMSAAPathRenderer.cpp | |
parent | 85591831b2fc0f67968116d73c79ee1232a59935 (diff) |
Convert GrMesh to a struct
Converts GrMesh to a struct and changes the names/semantics of its
fields to be more inline with their GL counterparts. Also renames the
"instancing" feature to "pattern", to avoid ambiguity with hardware
instancing.
Bug: skia:
Change-Id: Ia0999d4f9c83b5dd31f81b9bf4f36ed9abd26286
Reviewed-on: https://skia-review.googlesource.com/15157
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/ops/GrMSAAPathRenderer.cpp')
-rw-r--r-- | src/gpu/ops/GrMSAAPathRenderer.cpp | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/gpu/ops/GrMSAAPathRenderer.cpp b/src/gpu/ops/GrMSAAPathRenderer.cpp index 8e320063e3..f4d14cdf71 100644 --- a/src/gpu/ops/GrMSAAPathRenderer.cpp +++ b/src/gpu/ops/GrMSAAPathRenderer.cpp @@ -413,14 +413,16 @@ private: SkASSERT(lineVertexStride == lineGP->getVertexStride()); GrMesh lineMeshes; + lineMeshes.fPrimitiveType = primitiveType; if (fIsIndexed) { - lineMeshes.initIndexed(primitiveType, lineVertexBuffer, lineIndexBuffer, - firstLineVertex, firstLineIndex, lineVertexOffset, - lineIndexOffset); - } else { - lineMeshes.init(primitiveType, lineVertexBuffer, firstLineVertex, - lineVertexOffset); + lineMeshes.fIndexBuffer.reset(lineIndexBuffer); + lineMeshes.fIndexCount = lineIndexOffset; + lineMeshes.fBaseIndex = firstLineIndex; } + lineMeshes.fVertexBuffer.reset(lineVertexBuffer); + lineMeshes.fVertexCount = lineVertexOffset; + lineMeshes.fBaseVertex = firstLineVertex; + target->draw(lineGP.get(), this->pipeline(), lineMeshes); } @@ -435,20 +437,20 @@ private: &firstQuadVertex); memcpy(quadVertices, quads.vertices, quadVertexStride * quadVertexOffset); GrMesh quadMeshes; + quadMeshes.fPrimitiveType = kTriangles_GrPrimitiveType; if (fIsIndexed) { const GrBuffer* quadIndexBuffer; - int firstQuadIndex; uint16_t* quadIndices = (uint16_t*) target->makeIndexSpace(quadIndexOffset, &quadIndexBuffer, - &firstQuadIndex); + &quadMeshes.fBaseIndex); + quadMeshes.fIndexBuffer.reset(quadIndexBuffer); + quadMeshes.fIndexCount = quadIndexOffset; memcpy(quadIndices, quads.indices, sizeof(uint16_t) * quadIndexOffset); - quadMeshes.initIndexed(kTriangles_GrPrimitiveType, quadVertexBuffer, - quadIndexBuffer, firstQuadVertex, firstQuadIndex, - quadVertexOffset, quadIndexOffset); - } else { - quadMeshes.init(kTriangles_GrPrimitiveType, quadVertexBuffer, firstQuadVertex, - quadVertexOffset); } + quadMeshes.fVertexBuffer.reset(quadVertexBuffer); + quadMeshes.fVertexCount = quadVertexOffset; + quadMeshes.fBaseVertex = firstQuadVertex; + target->draw(quadGP.get(), this->pipeline(), quadMeshes); } } |