aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llvovolume.h
diff options
context:
space:
mode:
authorJacek Antonelli2008-08-15 23:45:34 -0500
committerJacek Antonelli2008-08-15 23:45:34 -0500
commitcd17687f01420952712a500107e0f93e7ab8d5f8 (patch)
treece48c2b706f2c1176290e39fb555fbdf6648ce01 /linden/indra/newview/llvovolume.h
parentSecond Life viewer sources 1.19.0.5 (diff)
downloadmeta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.zip
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.gz
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.bz2
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.xz
Second Life viewer sources 1.19.1.0
Diffstat (limited to 'linden/indra/newview/llvovolume.h')
-rw-r--r--linden/indra/newview/llvovolume.h31
1 files changed, 7 insertions, 24 deletions
diff --git a/linden/indra/newview/llvovolume.h b/linden/indra/newview/llvovolume.h
index 1250d4b..c3b25bf 100644
--- a/linden/indra/newview/llvovolume.h
+++ b/linden/indra/newview/llvovolume.h
@@ -33,7 +33,6 @@
33#define LL_LLVOVOLUME_H 33#define LL_LLVOVOLUME_H
34 34
35#include "llviewerobject.h" 35#include "llviewerobject.h"
36#include "llspatialpartition.h"
37#include "llviewerimage.h" 36#include "llviewerimage.h"
38#include "llframetimer.h" 37#include "llframetimer.h"
39#include "llapr.h" 38#include "llapr.h"
@@ -67,6 +66,7 @@ public:
67 virtual const LLMatrix4& getWorldMatrix(LLXformMatrix* xform) const = 0; 66 virtual const LLMatrix4& getWorldMatrix(LLXformMatrix* xform) const = 0;
68 virtual void updateRelativeXform() = 0; 67 virtual void updateRelativeXform() = 0;
69 virtual U32 getID() const = 0; 68 virtual U32 getID() const = 0;
69 virtual void preRebuild() = 0;
70}; 70};
71 71
72// Class which embodies all Volume objects (with pcode LL_PCODE_VOLUME) 72// Class which embodies all Volume objects (with pcode LL_PCODE_VOLUME)
@@ -105,7 +105,6 @@ public:
105 105
106 void generateSilhouette(LLSelectNode* nodep, const LLVector3& view_point); 106 void generateSilhouette(LLSelectNode* nodep, const LLVector3& view_point);
107 /*virtual*/ void setParent(LLViewerObject* parent); 107 /*virtual*/ void setParent(LLViewerObject* parent);
108 F32 getIndividualRadius() { return mRadius; }
109 S32 getLOD() const { return mLOD; } 108 S32 getLOD() const { return mLOD; }
110 const LLVector3 getPivotPositionAgent() const; 109 const LLVector3 getPivotPositionAgent() const;
111 const LLMatrix4& getRelativeXform() const { return mRelativeXform; } 110 const LLMatrix4& getRelativeXform() const { return mRelativeXform; }
@@ -147,6 +146,7 @@ public:
147 /*virtual*/ S32 setTEShiny(const U8 te, const U8 shiny); 146 /*virtual*/ S32 setTEShiny(const U8 te, const U8 shiny);
148 /*virtual*/ S32 setTEFullbright(const U8 te, const U8 fullbright); 147 /*virtual*/ S32 setTEFullbright(const U8 te, const U8 fullbright);
149 /*virtual*/ S32 setTEMediaFlags(const U8 te, const U8 media_flags); 148 /*virtual*/ S32 setTEMediaFlags(const U8 te, const U8 media_flags);
149 /*virtual*/ S32 setTEGlow(const U8 te, const F32 glow);
150 /*virtual*/ S32 setTEScale(const U8 te, const F32 s, const F32 t); 150 /*virtual*/ S32 setTEScale(const U8 te, const F32 s, const F32 t);
151 /*virtual*/ S32 setTEScaleS(const U8 te, const F32 s); 151 /*virtual*/ S32 setTEScaleS(const U8 te, const F32 s);
152 /*virtual*/ S32 setTEScaleT(const U8 te, const F32 t); 152 /*virtual*/ S32 setTEScaleT(const U8 te, const F32 t);
@@ -168,19 +168,10 @@ public:
168 void updateFaceFlags(); 168 void updateFaceFlags();
169 void regenFaces(); 169 void regenFaces();
170 BOOL genBBoxes(BOOL force_global); 170 BOOL genBBoxes(BOOL force_global);
171 void preRebuild();
171 virtual void updateSpatialExtents(LLVector3& min, LLVector3& max); 172 virtual void updateSpatialExtents(LLVector3& min, LLVector3& max);
172 virtual F32 getBinRadius(); 173 virtual F32 getBinRadius();
173 virtual void writeCAL3D(apr_file_t* fp, 174
174 std::string& path,
175 std::string& file_base,
176 S32 joint_num,
177 LLVector3& pos,
178 LLQuaternion& rot,
179 S32& material_index,
180 S32& texture_index,
181 std::multimap<LLUUID, LLMaterialExportInfo*>& material_map);
182
183
184 virtual U32 getPartitionType() const; 175 virtual U32 getPartitionType() const;
185 176
186 // For Lights 177 // For Lights
@@ -197,8 +188,7 @@ public:
197 F32 getLightRadius() const; 188 F32 getLightRadius() const;
198 F32 getLightFalloff() const; 189 F32 getLightFalloff() const;
199 F32 getLightCutoff() const; 190 F32 getLightCutoff() const;
200 F32 getLightDistance(const LLVector3& pos) const; // returns < 0 if inside radius 191
201
202 // Flexible Objects 192 // Flexible Objects
203 U32 getVolumeInterfaceID() const; 193 U32 getVolumeInterfaceID() const;
204 virtual BOOL isFlexible() const; 194 virtual BOOL isFlexible() const;
@@ -206,11 +196,7 @@ public:
206 BOOL isVolumeGlobal() const; 196 BOOL isVolumeGlobal() const;
207 BOOL canBeFlexible() const; 197 BOOL canBeFlexible() const;
208 BOOL setIsFlexible(BOOL is_flexible); 198 BOOL setIsFlexible(BOOL is_flexible);
209 199
210 // Lighting
211 F32 calcLightAtPoint(const LLVector3& pos, const LLVector3& norm, LLColor4& result);
212 BOOL updateLighting(BOOL do_lighting);
213
214protected: 200protected:
215 S32 computeLODDetail(F32 distance, F32 radius); 201 S32 computeLODDetail(F32 distance, F32 radius);
216 BOOL calcLOD(); 202 BOOL calcLOD();
@@ -220,17 +206,14 @@ protected:
220public: 206public:
221 LLViewerTextureAnim *mTextureAnimp; 207 LLViewerTextureAnim *mTextureAnimp;
222 U8 mTexAnimMode; 208 U8 mTexAnimMode;
223protected: 209private:
224 friend class LLDrawable; 210 friend class LLDrawable;
225 211
226 BOOL mFaceMappingChanged; 212 BOOL mFaceMappingChanged;
227 BOOL mGlobalVolume;
228 BOOL mInited;
229 LLFrameTimer mTextureUpdateTimer; 213 LLFrameTimer mTextureUpdateTimer;
230 S32 mLOD; 214 S32 mLOD;
231 BOOL mLODChanged; 215 BOOL mLODChanged;
232 BOOL mSculptChanged; 216 BOOL mSculptChanged;
233 F32 mRadius;
234 LLMatrix4 mRelativeXform; 217 LLMatrix4 mRelativeXform;
235 LLMatrix3 mRelativeXformInvTrans; 218 LLMatrix3 mRelativeXformInvTrans;
236 BOOL mVolumeChanged; 219 BOOL mVolumeChanged;