diff options
author | 2015-05-04 10:09:23 -0700 | |
---|---|---|
committer | 2015-05-04 10:09:24 -0700 | |
commit | d8ed1b64a6c85a8364c23e825164b7bebb43a3a0 (patch) | |
tree | 6b3c337b619318bee15747c3a6e38bf75fa9d8dc /gm | |
parent | 973d1f1f60f2710a268a3165aa4f3460502d4be5 (diff) |
Revert of Move instanced index buffer creation to flush time (patchset #6 id:100001 of https://codereview.chromium.org/1116943004/)
Reason for revert:
messed up caching, recreating index buffers all the time.
Original issue's description:
> Move instanced index buffer creation to flush time
>
> Committed: https://skia.googlesource.com/skia/+/ab622c7b8cc8c39f0a594e4392b9e31b7e1ddb26
TBR=joshualitt@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1126613003
Diffstat (limited to 'gm')
-rw-r--r-- | gm/beziereffects.cpp | 18 | ||||
-rw-r--r-- | gm/convexpolyeffect.cpp | 9 |
2 files changed, 10 insertions, 17 deletions
diff --git a/gm/beziereffects.cpp b/gm/beziereffects.cpp index 6568422898..182d71aaf6 100644 --- a/gm/beziereffects.cpp +++ b/gm/beziereffects.cpp @@ -16,7 +16,6 @@ #include "GrBufferAllocPool.h" #include "GrContext.h" #include "GrPathUtils.h" -#include "GrResourceProvider.h" #include "GrTest.h" #include "GrTestBatch.h" #include "SkColorPriv.h" @@ -67,18 +66,17 @@ private: } void onGenerateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { - SkAutoTUnref<const GrIndexBuffer> indexBuffer( - batchTarget->resourceProvider()->refQuadIndexBuffer()); - size_t vertexStride = this->geometryProcessor()->getVertexStride(); + const GrVertexBuffer* vertexBuffer; int firstVertex; + void* vertices = batchTarget->vertexPool()->makeSpace(vertexStride, kVertsPerCubic, &vertexBuffer, &firstVertex); - if (!vertices || !indexBuffer) { + if (!vertices || !batchTarget->quadIndexBuffer()) { SkDebugf("Could not allocate buffers\n"); return; } @@ -102,7 +100,7 @@ private: drawInfo.setVertexCount(kVertsPerCubic); drawInfo.setStartIndex(0); drawInfo.setIndexCount(kIndicesPerCubic); - drawInfo.setIndexBuffer(indexBuffer); + drawInfo.setIndexBuffer(batchTarget->quadIndexBuffer()); batchTarget->draw(drawInfo); } @@ -475,10 +473,8 @@ private: } void onGenerateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { - SkAutoTUnref<const GrIndexBuffer> indexBuffer( - batchTarget->resourceProvider()->refQuadIndexBuffer()); - size_t vertexStride = this->geometryProcessor()->getVertexStride(); + const GrVertexBuffer* vertexBuffer; int firstVertex; @@ -487,7 +483,7 @@ private: &vertexBuffer, &firstVertex); - if (!vertices || !indexBuffer) { + if (!vertices || !batchTarget->quadIndexBuffer()) { SkDebugf("Could not allocate buffers\n"); return; } @@ -509,7 +505,7 @@ private: drawInfo.setVertexCount(kVertsPerCubic); drawInfo.setStartIndex(0); drawInfo.setIndexCount(kIndicesPerCubic); - drawInfo.setIndexBuffer(indexBuffer); + drawInfo.setIndexBuffer(batchTarget->quadIndexBuffer()); batchTarget->draw(drawInfo); } diff --git a/gm/convexpolyeffect.cpp b/gm/convexpolyeffect.cpp index 60b73c571d..07d5fc2112 100644 --- a/gm/convexpolyeffect.cpp +++ b/gm/convexpolyeffect.cpp @@ -17,7 +17,6 @@ #include "GrContext.h" #include "GrDefaultGeoProcFactory.h" #include "GrPathUtils.h" -#include "GrResourceProvider.h" #include "GrTest.h" #include "GrTestBatch.h" #include "SkColorPriv.h" @@ -53,10 +52,8 @@ private: } void onGenerateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { - SkAutoTUnref<const GrIndexBuffer> indexBuffer( - batchTarget->resourceProvider()->refQuadIndexBuffer()); - size_t vertexStride = this->geometryProcessor()->getVertexStride(); + const GrVertexBuffer* vertexBuffer; int firstVertex; @@ -65,7 +62,7 @@ private: &vertexBuffer, &firstVertex); - if (!vertices || !indexBuffer) { + if (!vertices || !batchTarget->quadIndexBuffer()) { SkDebugf("Could not allocate buffers\n"); return; } @@ -85,7 +82,7 @@ private: drawInfo.setVertexCount(kVertsPerCubic); drawInfo.setStartIndex(0); drawInfo.setIndexCount(kIndicesPerCubic); - drawInfo.setIndexBuffer(indexBuffer); + drawInfo.setIndexBuffer(batchTarget->quadIndexBuffer()); batchTarget->draw(drawInfo); } |