Clear out VAOs properly.

This commit is contained in:
Shyotl
2019-09-29 19:29:03 -05:00
parent 5c156a9d86
commit 4b6d1934c3
2 changed files with 6 additions and 6 deletions

View File

@@ -92,7 +92,7 @@ U64 LLVBOPool::sBytesPooled = 0;
U64 LLVBOPool::sIndexBytesPooled = 0;
std::vector<U32> LLVBOPool::sPendingDeletions;
std::list<U32> LLVertexBuffer::sAvailableVAOName;
std::vector<U32> LLVertexBuffer::sAvailableVAOName;
U32 LLVertexBuffer::sCurVAOName = 1;
U64 LLVertexBuffer::sAllocatedIndexBytes = 0;
@@ -480,8 +480,8 @@ U32 LLVertexBuffer::getVAOName()
if (!sAvailableVAOName.empty())
{
ret = sAvailableVAOName.front();
sAvailableVAOName.pop_front();
ret = sAvailableVAOName.back();
sAvailableVAOName.pop_back();
}
else
{
@@ -998,8 +998,8 @@ void LLVertexBuffer::cleanupClass()
if (!sAvailableVAOName.empty())
{
glDeleteVertexArrays(1, &sAvailableVAOName.front());
sAvailableVAOName.pop_front();
glDeleteVertexArrays(sAvailableVAOName.size(), sAvailableVAOName.data());
sAvailableVAOName.clear();
}
sLastMask = 0;

View File

@@ -129,7 +129,7 @@ public:
static LLVBOPool sStreamIBOPool;
static LLVBOPool sDynamicIBOPool;
static std::list<U32> sAvailableVAOName;
static std::vector<U32> sAvailableVAOName;
static U32 sCurVAOName;
static bool sUseStreamDraw;