diff options
author | Dave Parks <davep@lindenlab.com> | 2010-04-15 00:05:08 -0500 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2010-04-15 00:05:08 -0500 |
commit | 492499e7156194f74022d24106145762865fd41f (patch) | |
tree | feb27b17d0d823bf6325c341d1cee840b7ae7d56 /indra/llrender/llvertexbuffer.cpp | |
parent | d3d180f5db0350d6a8b930227b17d5001e673295 (diff) | |
parent | 54dd30cc426e16aa99b4f7eea080bbeae0656843 (diff) |
merge
Diffstat (limited to 'indra/llrender/llvertexbuffer.cpp')
-rw-r--r-- | indra/llrender/llvertexbuffer.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index d5b00f27a7..668e9e55f9 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -212,6 +212,27 @@ void LLVertexBuffer::setupClientArrays(U32 data_mask) glClientActiveTextureARB(GL_TEXTURE0_ARB); } + if (sLastMask & MAP_WEIGHT4) + { + if (sWeight4Loc < 0) + { + llerrs << "Weighting disabled but vertex buffer still bound!" << llendl; + } + + if (!(data_mask & MAP_WEIGHT4)) + { //disable 4-component skin weight + glDisableVertexAttribArrayARB(sWeight4Loc); + } + } + else if (data_mask & MAP_WEIGHT4) + { + if (sWeight4Loc >= 0) + { //enable 4-component skin weight + glEnableVertexAttribArrayARB(sWeight4Loc); + } + } + + sLastMask = data_mask; } } |