summaryrefslogtreecommitdiff
path: root/indra/newview/llvovolume.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2009-11-24 07:38:04 -0600
committerDave Parks <davep@lindenlab.com>2009-11-24 07:38:04 -0600
commit62233f22469cdc66042fc7bbbbd367dbb7212fde (patch)
treeb89982d6b2076694953492646310f5f210e6698e /indra/newview/llvovolume.cpp
parent5f44d4398a6d8abd05bba1d6c76831d674095ac1 (diff)
Fix for copying of tetrahedrons in place of mesh LODs.
Fix for bad tetrahedron bounding box. Bad fix for simultaneous loading of multiple LODs.
Diffstat (limited to 'indra/newview/llvovolume.cpp')
-rw-r--r--indra/newview/llvovolume.cpp31
1 files changed, 4 insertions, 27 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 4c126d8fd9..64c2e9e8ec 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -163,7 +163,6 @@ LLVOVolume::LLVOVolume(const LLUUID &id, const LLPCode pcode, LLViewerRegion *re
mRelativeXformInvTrans.setIdentity();
mLOD = MIN_LOD;
- mMeshSculptLevel = -2;
mTextureAnimp = NULL;
mVObjRadius = LLVector3(1,1,0.5f).length();
mNumFaces = 0;
@@ -682,25 +681,7 @@ void LLVOVolume::updateTextureVirtualSize()
LLUUID id = sculpt_params->getSculptTexture();
U8 sculpt_type = sculpt_params->getSculptType();
- if ((sculpt_type & LL_SCULPT_TYPE_MASK) == LL_SCULPT_TYPE_MESH)
- // mesh is a mesh
- {
- if (mMeshSculptLevel == -2)
- {
- // get the asset please
- gPipeline.loadMesh(this, id);
- /*gAssetStorage->getAssetData(id, LLAssetType::AT_MESH, (LLGetAssetCallback)NULL, NULL, TRUE);
-
- if (gAssetStorage->hasLocalAsset(id, LLAssetType::AT_MESH))
- {
- gPipeline.markRebuild(mDrawable, LLDrawable::REBUILD_VOLUME, FALSE);
- mSculptChanged = TRUE;
- }*/
- }
- }
-
- else
- // mesh is a sculptie
+ if ((sculpt_type & LL_SCULPT_TYPE_MASK) != LL_SCULPT_TYPE_MESH)
{
mSculptTexture = LLViewerTextureManager::getFetchedTexture(id, TRUE, LLViewerTexture::BOOST_NONE, LLViewerTexture::LOD_TEXTURE);
@@ -902,14 +883,10 @@ BOOL LLVOVolume::setVolume(const LLVolumeParams &params, const S32 detail, bool
if ((volume_params.getSculptType() & LL_SCULPT_TYPE_MASK) == LL_SCULPT_TYPE_MESH)
{
if (getVolume()->getNumVolumeFaces() == 0)
- {
- //mesh is not loaded, request pipeline load this mesh
+ {
+ //load request not yet issued, request pipeline load this mesh
LLUUID asset_id = volume_params.getSculptID();
- gPipeline.loadMesh(this, asset_id, detail);
- }
- else
- {
- mMeshSculptLevel = 1;
+ gPipeline.loadMesh(this, asset_id, LLVolumeLODGroup::getVolumeDetailFromScale(getVolume()->getDetail()));
}
}
else // otherwise is sculptie