diff options
author | Logan Dethrow <log@lindenlab.com> | 2012-12-07 17:50:37 -0500 |
---|---|---|
committer | Logan Dethrow <log@lindenlab.com> | 2012-12-07 17:50:37 -0500 |
commit | b6a7c8fcfdaf9220accf832a4dc07efcd08c6eeb (patch) | |
tree | 621f992abc5e2d0ccc596a824ba70828c463ae87 /indra/llrender/llvertexbuffer.cpp | |
parent | 954200e97f0283a2f16d19601129d64fb16449c2 (diff) | |
parent | a15ec8d014307da35b792659964cd5478d1aafe7 (diff) |
Merge in backed out changes.
Diffstat (limited to 'indra/llrender/llvertexbuffer.cpp')
-rw-r--r-- | indra/llrender/llvertexbuffer.cpp | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index 80752231d7..2fe0aa0b72 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -38,10 +38,6 @@ #include "llglslshader.h" #include "llmemory.h" -#if LL_DARWIN -#define LL_VBO_POOLING 1 -#else -#endif //Next Highest Power Of Two //helper function, returns first number > v that is a power of 2, or v if v is already a power of 2 U32 nhpo2(U32 v) @@ -294,6 +290,7 @@ void LLVBOPool::seedPool() } + void LLVBOPool::cleanup() { U32 size = LL_VBO_BLOCK_SIZE; @@ -558,8 +555,21 @@ void LLVertexBuffer::drawArrays(U32 mode, const std::vector<LLVector3>& pos, con gGL.syncMatrices(); U32 count = pos.size(); - llassert_always(norm.size() >= pos.size()); - llassert_always(count > 0); + + llassert(norm.size() >= pos.size()); + llassert(count > 0); + + if( count == 0 ) + { + llwarns << "Called drawArrays with 0 vertices" << llendl; + return; + } + + if( norm.size() < pos.size() ) + { + llwarns << "Called drawArrays with #" << norm.size() << " normals and #" << pos.size() << " vertices" << llendl; + return; + } unbind(); |