Remove GR_STATIC_RECT_VB
Review URL: https://codereview.appspot.com/7304055
git-svn-id: http://skia.googlecode.com/svn/trunk@7625 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/GrContext.cpp b/src/gpu/GrContext.cpp
index 21bdbf7..c9d6f65 100644
--- a/src/gpu/GrContext.cpp
+++ b/src/gpu/GrContext.cpp
@@ -735,8 +735,6 @@
if (width >= 0) {
// TODO: consider making static vertex buffers for these cases.
- // Hairline could be done by just adding closing vertex to
- // unitSquareVertexBuffer()
static const int worstCaseVertCount = 10;
target->drawState()->setVertexLayout(GrDrawState::kDefault_VertexLayout);
@@ -774,30 +772,7 @@
target->drawNonIndexed(primType, 0, vertCount);
} else {
-#if GR_STATIC_RECT_VB
- const GrVertexBuffer* sqVB = fGpu->getUnitSquareVertexBuffer();
- if (NULL == sqVB) {
- GrPrintf("Failed to create static rect vb.\n");
- return;
- }
-
- GrDrawState* drawState = target->drawState();
- drawState->setVertexLayout(GrDrawState::kDefault_VertexLayout);
- target->setVertexSourceToBuffer(sqVB);
- SkMatrix m;
- m.setAll(rect.width(), 0, rect.fLeft,
- 0, rect.height(), rect.fTop,
- 0, 0, SkMatrix::I()[8]);
-
- if (NULL != matrix) {
- m.postConcat(*matrix);
- }
- GrDrawState::AutoViewMatrixRestore avmr(drawState, m);
-
- target->drawNonIndexed(kTriangleFan_GrPrimitiveType, 0, 4);
-#else
- target->drawSimpleRect(rect, matrix);
-#endif
+ target->drawSimpleRect(rect, matrix);
}
}
@@ -815,43 +790,6 @@
}
GrDrawTarget* target = this->prepareToDraw(&paint, DEFAULT_BUFFERING);
-
-#if GR_STATIC_RECT_VB
- GrDrawState::AutoStageDisable atr(fDrawState);
- GrDrawState* drawState = target->drawState();
-
- SkMatrix m;
-
- m.setAll(dstRect.width(), 0, dstRect.fLeft,
- 0, dstRect.height(), dstRect.fTop,
- 0, 0, SkMatrix::I()[8]);
- if (NULL != dstMatrix) {
- m.postConcat(*dstMatrix);
- }
-
- // The first color stage's coords come from srcRect rather than applying a matrix to dstRect.
- // We explicitly compute a matrix for that stage below, no need to adjust here.
- static const uint32_t kExplicitCoordMask = 1 << GrPaint::kFirstColorStage;
- GrDrawState::AutoViewMatrixRestore avmr(drawState, m, kExplicitCoordMask);
-
- m.setAll(srcRect.width(), 0, srcRect.fLeft,
- 0, srcRect.height(), srcRect.fTop,
- 0, 0, SkMatrix::I()[8]);
- if (NULL != srcMatrix) {
- m.postConcat(*srcMatrix);
- }
-
- drawState->preConcatStageMatrices(kExplicitCoordMask, m);
-
- const GrVertexBuffer* sqVB = fGpu->getUnitSquareVertexBuffer();
- if (NULL == sqVB) {
- GrPrintf("Failed to create static rect vb.\n");
- return;
- }
- drawState->setVertexLayout(GrDrawState::kDefault_VertexLayout);
- target->setVertexSourceToBuffer(sqVB);
- target->drawNonIndexed(kTriangleFan_GrPrimitiveType, 0, 4);
-#else
GrDrawState::AutoStageDisable atr(fDrawState);
const GrRect* srcRects[GrDrawState::kNumStages] = {NULL};
@@ -860,7 +798,6 @@
srcMatrices[0] = srcMatrix;
target->drawRect(dstRect, dstMatrix, srcRects, srcMatrices);
-#endif
}
void GrContext::drawVertices(const GrPaint& paint,
diff --git a/src/gpu/GrGpu.cpp b/src/gpu/GrGpu.cpp
index c9aa046..3f33a2a 100644
--- a/src/gpu/GrGpu.cpp
+++ b/src/gpu/GrGpu.cpp
@@ -33,7 +33,6 @@
, fIndexPool(NULL)
, fVertexPoolUseCnt(0)
, fIndexPoolUseCnt(0)
- , fUnitSquareVertexBuffer(NULL)
, fQuadIndexBuffer(NULL)
, fContextIsDirty(true) {
@@ -66,10 +65,7 @@
}
GrAssert(NULL == fQuadIndexBuffer || !fQuadIndexBuffer->isValid());
- GrAssert(NULL == fUnitSquareVertexBuffer ||
- !fUnitSquareVertexBuffer->isValid());
GrSafeSetNull(fQuadIndexBuffer);
- GrSafeSetNull(fUnitSquareVertexBuffer);
delete fVertexPool;
fVertexPool = NULL;
delete fIndexPool;
@@ -85,10 +81,7 @@
}
GrAssert(NULL == fQuadIndexBuffer || !fQuadIndexBuffer->isValid());
- GrAssert(NULL == fUnitSquareVertexBuffer ||
- !fUnitSquareVertexBuffer->isValid());
GrSafeSetNull(fQuadIndexBuffer);
- GrSafeSetNull(fUnitSquareVertexBuffer);
delete fVertexPool;
fVertexPool = NULL;
delete fIndexPool;
@@ -296,37 +289,6 @@
return fQuadIndexBuffer;
}
-const GrVertexBuffer* GrGpu::getUnitSquareVertexBuffer() const {
- if (NULL == fUnitSquareVertexBuffer) {
-
- static const GrPoint DATA[] = {
- { 0, 0 },
- { SK_Scalar1, 0 },
- { SK_Scalar1, SK_Scalar1 },
- { 0, SK_Scalar1 }
-#if 0
- GrPoint(0, 0),
- GrPoint(SK_Scalar1,0),
- GrPoint(SK_Scalar1,SK_Scalar1),
- GrPoint(0, SK_Scalar1)
-#endif
- };
- static const size_t SIZE = sizeof(DATA);
-
- GrGpu* me = const_cast<GrGpu*>(this);
- fUnitSquareVertexBuffer = me->createVertexBuffer(SIZE, false);
- if (NULL != fUnitSquareVertexBuffer) {
- if (!fUnitSquareVertexBuffer->updateData(DATA, SIZE)) {
- fUnitSquareVertexBuffer->unref();
- fUnitSquareVertexBuffer = NULL;
- GrCrash("Can't get vertices into buffer!");
- }
- }
- }
-
- return fUnitSquareVertexBuffer;
-}
-
////////////////////////////////////////////////////////////////////////////////
bool GrGpu::setupClipAndFlushState(DrawType type) {
diff --git a/src/gpu/GrGpu.h b/src/gpu/GrGpu.h
index d0ca377..93427e0 100644
--- a/src/gpu/GrGpu.h
+++ b/src/gpu/GrGpu.h
@@ -146,13 +146,6 @@
const GrIndexBuffer* getQuadIndexBuffer() const;
/**
- * Returns a vertex buffer with four position-only vertices [(0,0), (1,0),
- * (1,1), (0,1)].
- * @ return unit square vertex buffer
- */
- const GrVertexBuffer* getUnitSquareVertexBuffer() const;
-
- /**
* Resolves MSAA.
*/
void resolveRenderTarget(GrRenderTarget* target);
@@ -534,8 +527,7 @@
// counts number of uses of vertex/index pool in the geometry stack
int fVertexPoolUseCnt;
int fIndexPoolUseCnt;
- // these are mutable so they can be created on-demand
- mutable GrVertexBuffer* fUnitSquareVertexBuffer;
+ // this is mutable so it can be created on-demand
mutable GrIndexBuffer* fQuadIndexBuffer;
bool fContextIsDirty;
ResourceList fResourceList;