summaryrefslogtreecommitdiff
path: root/indra/llmath/llvolume.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llmath/llvolume.cpp')
-rw-r--r--indra/llmath/llvolume.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp
index 6b6cd65ce2..8f08394ce9 100644
--- a/indra/llmath/llvolume.cpp
+++ b/indra/llmath/llvolume.cpp
@@ -1,5 +1,4 @@
/**
-
* @file llvolume.cpp
*
* $LicenseInfo:firstyear=2002&license=viewerlgpl$
@@ -2639,6 +2638,7 @@ bool LLVolume::unpackVolumeFaces(std::istream& is, S32 size)
}
//calculate bounding box
+ // VFExtents change
LLVector4a& min = face.mExtents[0];
LLVector4a& max = face.mExtents[1];
@@ -4644,6 +4644,7 @@ LLVolumeFace::LLVolumeFace() :
mNumVertices(0),
mNumAllocatedVertices(0),
mNumIndices(0),
+ mJointRiggingInfoTabPtr(NULL),
mPositions(NULL),
mNormals(NULL),
mTangents(NULL),
@@ -4675,6 +4676,7 @@ LLVolumeFace::LLVolumeFace(const LLVolumeFace& src)
mTangents(NULL),
mTexCoords(NULL),
mIndices(NULL),
+ mJointRiggingInfoTabPtr(NULL),
mWeights(NULL),
mWeightsScrubbed(FALSE),
mOctree(NULL)
@@ -4768,6 +4770,7 @@ LLVolumeFace::~LLVolumeFace()
{
ll_aligned_free_16(mExtents);
mExtents = NULL;
+ mCenter = NULL;
freeData();
}
@@ -4788,6 +4791,9 @@ void LLVolumeFace::freeData()
ll_aligned_free_16(mWeights);
mWeights = NULL;
+ free(mJointRiggingInfoTabPtr);
+ mJointRiggingInfoTabPtr = NULL;
+
delete mOctree;
mOctree = NULL;
}
@@ -5570,7 +5576,7 @@ BOOL LLVolumeFace::createUnCutCubeCap(LLVolume* volume, BOOL partial_build)
// S32 i;
S32 grid_size = (profile.size()-1)/4;
-
+ // VFExtents change
LLVector4a& min = mExtents[0];
LLVector4a& max = mExtents[1];
@@ -5847,7 +5853,7 @@ BOOL LLVolumeFace::createCap(LLVolume* volume, BOOL partial_build)
LLVector2 cuv;
LLVector2 min_uv, max_uv;
-
+ // VFExtents change
LLVector4a& min = mExtents[0];
LLVector4a& max = mExtents[1];
@@ -6472,14 +6478,17 @@ void LLVolumeFace::appendFace(const LLVolumeFace& face, LLMatrix4& mat_in, LLMat
if (offset == 0 && i == 0)
{ //initialize bounding box
+ // VFExtents change
mExtents[0] = mExtents[1] = dst_pos[i];
}
else
{
//stretch bounding box
+ // VFExtents change
update_min_max(mExtents[0], mExtents[1], dst_pos[i]);
}
}
+ LL_DEBUGS("RiggedBox") << "appendFace got extents " << mExtents[0] << ", " << mExtents[1] << " from dst_pos " << LL_ENDL;
new_count = mNumIndices + face.mNumIndices;
@@ -6642,7 +6651,7 @@ BOOL LLVolumeFace::createSide(LLVolume* volume, BOOL partial_build)
{
update_min_max(face_min, face_max, *cur_pos++);
}
-
+ // VFExtents change
mExtents[0] = face_min;
mExtents[1] = face_max;