summaryrefslogtreecommitdiff
path: root/indra/llmath
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llmath')
-rw-r--r--indra/llmath/llrigginginfo.cpp5
-rw-r--r--indra/llmath/llvolume.cpp5
-rw-r--r--indra/llmath/llvolume.h5
3 files changed, 15 insertions, 0 deletions
diff --git a/indra/llmath/llrigginginfo.cpp b/indra/llmath/llrigginginfo.cpp
index 925179c2ba..18fea2088c 100644
--- a/indra/llmath/llrigginginfo.cpp
+++ b/indra/llmath/llrigginginfo.cpp
@@ -27,6 +27,11 @@
#include "llmath.h"
#include "llrigginginfo.h"
+#ifndef LL_RELEASE_FOR_DOWNLOAD
+// AXON to remove
+#pragma optimize("", off)
+#endif
+
//-----------------------------------------------------------------------------
// LLJointRiggingInfo
//-----------------------------------------------------------------------------
diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp
index 4613e17605..5aa1f6b44b 100644
--- a/indra/llmath/llvolume.cpp
+++ b/indra/llmath/llvolume.cpp
@@ -4643,6 +4643,7 @@ LLVolumeFace::LLVolumeFace() :
mNumVertices(0),
mNumAllocatedVertices(0),
mNumIndices(0),
+ mJointRiggingInfoTabPtr(NULL),
mPositions(NULL),
mNormals(NULL),
mTangents(NULL),
@@ -4674,6 +4675,7 @@ LLVolumeFace::LLVolumeFace(const LLVolumeFace& src)
mTangents(NULL),
mTexCoords(NULL),
mIndices(NULL),
+ mJointRiggingInfoTabPtr(NULL),
mWeights(NULL),
mWeightsScrubbed(FALSE),
mOctree(NULL)
@@ -4788,6 +4790,9 @@ void LLVolumeFace::freeData()
ll_aligned_free_16(mWeights);
mWeights = NULL;
+ free(mJointRiggingInfoTabPtr);
+ mJointRiggingInfoTabPtr = NULL;
+
delete mOctree;
mOctree = NULL;
}
diff --git a/indra/llmath/llvolume.h b/indra/llmath/llvolume.h
index 4357b69b90..e92cf0b21f 100644
--- a/indra/llmath/llvolume.h
+++ b/indra/llmath/llvolume.h
@@ -57,6 +57,7 @@ class LLVolumeTriangle;
#include "llpointer.h"
#include "llfile.h"
#include "llalignedarray.h"
+#include "llrigginginfo.h"
//============================================================================
@@ -958,6 +959,10 @@ public:
LLVector4a* mWeights;
mutable BOOL mWeightsScrubbed;
+
+ // Which joints are rigged to, and the bounding box of any rigged
+ // vertices per joint.
+ joint_rig_info_tab *mJointRiggingInfoTabPtr;
LLOctreeNode<LLVolumeTriangle>* mOctree;