aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2018-06-08 18:05:20 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-08 22:32:02 +0000
commit802cb318f695d5c3ade20b6424c97ea548a929b2 (patch)
tree964cb86d42d1d3e0e2ffb970364622b902733a44 /src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp
parent65b7bfcf61c5d925bf0066a2b40dd6ef7cf82595 (diff)
Stop passing GrPrimitiveProcessor to GrMesh::sendToGpu.
It is currently used in GrGLGpu::setupGeometry. Instead: 1) Make GrMesh track whether primitive restart should be enabled. 2) Make GrGLProgram track program attributes. Change-Id: Ice411a495961fcbc3cedc81e8ae0583537f42153 Reviewed-on: https://skia-review.googlesource.com/132267 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
Diffstat (limited to 'src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp')
-rw-r--r--src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp b/src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp
index ef2bcd36cb..3c9fe89fbc 100644
--- a/src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp
+++ b/src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp
@@ -522,7 +522,6 @@ void GrCCCoverageProcessor::initVS(GrResourceProvider* rp) {
SkASSERT(sizeof(int32_t) == this->getVertexStride());
if (caps.usePrimitiveRestart()) {
- this->setWillUsePrimitiveRestart();
fVSTriangleType = GrPrimitiveType::kTriangleStrip;
} else {
fVSTriangleType = GrPrimitiveType::kTriangles;
@@ -533,8 +532,9 @@ void GrCCCoverageProcessor::appendVSMesh(GrBuffer* instanceBuffer, int instanceC
int baseInstance, SkTArray<GrMesh>* out) const {
SkASSERT(Impl::kVertexShader == fImpl);
GrMesh& mesh = out->emplace_back(fVSTriangleType);
+ auto primitiveRestart = GrPrimitiveRestart(GrPrimitiveType::kTriangleStrip == fVSTriangleType);
mesh.setIndexedInstanced(fVSIndexBuffer.get(), fVSNumIndicesPerInstance, instanceBuffer,
- instanceCount, baseInstance);
+ instanceCount, baseInstance, primitiveRestart);
mesh.setVertexData(fVSVertexBuffer.get(), 0);
}