summaryrefslogtreecommitdiff
path: root/indra/newview/llvovolume.h
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2010-09-20 18:45:56 -0500
committerDave Parks <davep@lindenlab.com>2010-09-20 18:45:56 -0500
commitc42ed54b0a532cb4e0ad30a1b0b5038cef9938f2 (patch)
tree39eb08c897f9e59fe448a1f63b354f83b7309f0b /indra/newview/llvovolume.h
parent2c4c1c47bce3db7420f0eb27bdaa7598fbbbb65a (diff)
Stop using ll_aligned_malloc/free in llvolume.
Fix for garbage data in vertex weight array crashing software skinning. Proper integration of picking for rigged attachhments. Optimization in LLDrawable::updateDistance (don't call updateRelativeXform, just use spatial group position).
Diffstat (limited to 'indra/newview/llvovolume.h')
-rw-r--r--indra/newview/llvovolume.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/indra/newview/llvovolume.h b/indra/newview/llvovolume.h
index d868099eeb..f058710a27 100644
--- a/indra/newview/llvovolume.h
+++ b/indra/newview/llvovolume.h
@@ -306,7 +306,17 @@ public:
//rigged volume update (for raycasting)
void updateRiggedVolume();
- LLRiggedVolume* getRiggedVolume() { return mRiggedVolume; }
+ LLRiggedVolume* getRiggedVolume();
+
+ //returns true if volume should be treated as a rigged volume
+ // - Build tools are open
+ // - object is an attachment
+ // - object is attached to self
+ // - object is rendered as rigged
+ bool treatAsRigged();
+
+ //clear out rigged volume and revert back to non-rigged state for picking/LOD/distance updates
+ void clearRiggedVolume();
protected:
S32 computeLODDetail(F32 distance, F32 radius);