summaryrefslogtreecommitdiff
path: root/indra/newview/llface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llface.cpp')
-rw-r--r--indra/newview/llface.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp
index cd33a19a2a..4108d69e82 100644
--- a/indra/newview/llface.cpp
+++ b/indra/newview/llface.cpp
@@ -1742,14 +1742,22 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,
LLVector4a texIdx;
- F32 index = (F32) (mTextureIndex < 255 ? mTextureIndex : 0);
+ U8 index = mTextureIndex < 255 ? mTextureIndex : 0;
+
+ F32 val = 0.f;
+ U8* vp = (U8*) &val;
+ vp[0] = index;
+ vp[1] = 0;
+ vp[2] = 0;
+ vp[3] = 0;
+
llassert(index <= LLGLSLShader::sIndexedTextureChannels-1);
LLVector4Logical mask;
mask.clear();
mask.setElement<3>();
- texIdx.set(0,0,0,index);
+ texIdx.set(0,0,0,val);
{
LLFastTimer t(FTM_FACE_POSITION_STORE);
@@ -1838,7 +1846,7 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,
}
}
- if (rebuild_color)
+ if (rebuild_color && mVertexBuffer->hasDataType(LLVertexBuffer::TYPE_COLOR) )
{
LLFastTimer t(FTM_FACE_GEOM_COLOR);
mVertexBuffer->getColorStrider(colors, mGeomIndex, mGeomCount, map_range);