DRTVWR-440, make enabling GLdebug flag slightly less infinite-loopy

master
Dave Houlton 2020-03-24 17:22:47 -06:00
parent c7a2c9564e
commit 126b91f8ee
2 changed files with 28 additions and 27 deletions

View File

@ -2326,34 +2326,35 @@ void LLVertexBuffer::setBuffer(U32 data_mask)
{
U32 unsatisfied_mask = (required_mask & ~data_mask);
U32 i = 0;
while (i < TYPE_MAX)
{
for (U32 i = 0; i < TYPE_MAX; i++)
{
U32 unsatisfied_flag = unsatisfied_mask & (1 << i);
switch (unsatisfied_flag)
{
case MAP_VERTEX: LL_INFOS() << "Missing vert pos" << LL_ENDL; break;
case MAP_NORMAL: LL_INFOS() << "Missing normals" << LL_ENDL; break;
case MAP_TEXCOORD0: LL_INFOS() << "Missing TC 0" << LL_ENDL; break;
case MAP_TEXCOORD1: LL_INFOS() << "Missing TC 1" << LL_ENDL; break;
case MAP_TEXCOORD2: LL_INFOS() << "Missing TC 2" << LL_ENDL; break;
case MAP_TEXCOORD3: LL_INFOS() << "Missing TC 3" << LL_ENDL; break;
case MAP_COLOR: LL_INFOS() << "Missing vert color" << LL_ENDL; break;
case MAP_EMISSIVE: LL_INFOS() << "Missing emissive" << LL_ENDL; break;
case MAP_TANGENT: LL_INFOS() << "Missing tangent" << LL_ENDL; break;
case MAP_WEIGHT: LL_INFOS() << "Missing weight" << LL_ENDL; break;
case MAP_WEIGHT4: LL_INFOS() << "Missing weightx4" << LL_ENDL; break;
case MAP_CLOTHWEIGHT: LL_INFOS() << "Missing clothweight" << LL_ENDL; break;
case MAP_TEXTURE_INDEX: LL_INFOS() << "Missing tex index" << LL_ENDL; break;
default: LL_INFOS() << "Missing who effin knows: " << unsatisfied_flag << LL_ENDL;
}
}
switch (unsatisfied_flag)
{
case 0: break;
case MAP_VERTEX: LL_INFOS() << "Missing vert pos" << LL_ENDL; break;
case MAP_NORMAL: LL_INFOS() << "Missing normals" << LL_ENDL; break;
case MAP_TEXCOORD0: LL_INFOS() << "Missing TC 0" << LL_ENDL; break;
case MAP_TEXCOORD1: LL_INFOS() << "Missing TC 1" << LL_ENDL; break;
case MAP_TEXCOORD2: LL_INFOS() << "Missing TC 2" << LL_ENDL; break;
case MAP_TEXCOORD3: LL_INFOS() << "Missing TC 3" << LL_ENDL; break;
case MAP_COLOR: LL_INFOS() << "Missing vert color" << LL_ENDL; break;
case MAP_EMISSIVE: LL_INFOS() << "Missing emissive" << LL_ENDL; break;
case MAP_TANGENT: LL_INFOS() << "Missing tangent" << LL_ENDL; break;
case MAP_WEIGHT: LL_INFOS() << "Missing weight" << LL_ENDL; break;
case MAP_WEIGHT4: LL_INFOS() << "Missing weightx4" << LL_ENDL; break;
case MAP_CLOTHWEIGHT: LL_INFOS() << "Missing clothweight" << LL_ENDL; break;
case MAP_TEXTURE_INDEX: LL_INFOS() << "Missing tex index" << LL_ENDL; break;
default: LL_INFOS() << "Missing who effin knows: " << unsatisfied_flag << LL_ENDL;
}
}
if (unsatisfied_mask & (1 << TYPE_INDEX))
{
LL_INFOS() << "Missing indices" << LL_ENDL;
}
// TYPE_INDEX is beyond TYPE_MAX, so check for it individually
if (unsatisfied_mask & (1 << TYPE_INDEX))
{
LL_INFOS() << "Missing indices" << LL_ENDL;
}
LL_ERRS() << "Shader consumption mismatches data provision." << LL_ENDL;
}

View File

@ -179,8 +179,8 @@ public:
TYPE_WEIGHT4,
TYPE_CLOTHWEIGHT,
TYPE_TEXTURE_INDEX,
TYPE_MAX,
TYPE_INDEX,
TYPE_MAX, // TYPE_MAX is the size/boundary marker for attributes that go in the vertex buffer
TYPE_INDEX, // TYPE_INDEX is beyond _MAX because it lives in a separate (index) buffer
};
enum {
MAP_VERTEX = (1<<TYPE_VERTEX),