aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llface.h
diff options
context:
space:
mode:
authorJacek Antonelli2010-02-09 21:11:42 -0600
committerJacek Antonelli2010-02-16 18:50:15 -0600
commite6247fbe78c4d3dacb74f3b2359aba2b6538133b (patch)
tree10c42d670a2c635b4339f7f68809c221756774f8 /linden/indra/newview/llface.h
parentPorted some cURL and HTTP-related changes from Snowglobe. (diff)
downloadmeta-impy-e6247fbe78c4d3dacb74f3b2359aba2b6538133b.zip
meta-impy-e6247fbe78c4d3dacb74f3b2359aba2b6538133b.tar.gz
meta-impy-e6247fbe78c4d3dacb74f3b2359aba2b6538133b.tar.bz2
meta-impy-e6247fbe78c4d3dacb74f3b2359aba2b6538133b.tar.xz
Ported many texture engine changes from Snowglobe.
Diffstat (limited to 'linden/indra/newview/llface.h')
-rw-r--r--linden/indra/newview/llface.h21
1 files changed, 17 insertions, 4 deletions
diff --git a/linden/indra/newview/llface.h b/linden/indra/newview/llface.h
index 4a551ff..5e422b4 100644
--- a/linden/indra/newview/llface.h
+++ b/linden/indra/newview/llface.h
@@ -88,7 +88,7 @@ public:
88 U16 getGeomIndex() const { return mGeomIndex; } // index into draw pool 88 U16 getGeomIndex() const { return mGeomIndex; } // index into draw pool
89 U16 getGeomStart() const { return mGeomIndex; } // index into draw pool 89 U16 getGeomStart() const { return mGeomIndex; } // index into draw pool
90 LLViewerImage* getTexture() const { return mTexture; } 90 LLViewerImage* getTexture() const { return mTexture; }
91 void setTexture(LLViewerImage* tex) { mTexture = tex; } 91 void setTexture(LLViewerImage* tex) ;
92 LLXformMatrix* getXform() const { return mXform; } 92 LLXformMatrix* getXform() const { return mXform; }
93 BOOL hasGeometry() const { return mGeomCount > 0; } 93 BOOL hasGeometry() const { return mGeomCount > 0; }
94 LLVector3 getPositionAgent() const; 94 LLVector3 getPositionAgent() const;
@@ -186,7 +186,14 @@ public:
186 void setIndicesIndex(S32 idx) { mIndicesIndex = idx; } 186 void setIndicesIndex(S32 idx) { mIndicesIndex = idx; }
187 void setDrawInfo(LLDrawInfo* draw_info); 187 void setDrawInfo(LLDrawInfo* draw_info);
188 188
189protected: 189 F32 getTextureVirtualSize() ;
190 F32 getImportanceToCamera()const {return mImportanceToCamera ;}
191
192private:
193 F32 adjustPartialOverlapPixelArea(F32 cos_angle_to_view_dir, F32 radius );
194 F32 calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) ;
195public:
196 static F32 calcImportanceToCamera(F32 to_view_dir, F32 dist);
190 197
191public: 198public:
192 199
@@ -202,7 +209,7 @@ public:
202 LLMatrix4* mTextureMatrix; 209 LLMatrix4* mTextureMatrix;
203 LLDrawInfo* mDrawInfo; 210 LLDrawInfo* mDrawInfo;
204 211
205protected: 212private:
206 friend class LLGeometryManager; 213 friend class LLGeometryManager;
207 friend class LLVolumeGeometryManager; 214 friend class LLVolumeGeometryManager;
208 215
@@ -231,7 +238,13 @@ protected:
231 S32 mReferenceIndex; 238 S32 mReferenceIndex;
232 F32 mVSize; 239 F32 mVSize;
233 F32 mPixelArea; 240 F32 mPixelArea;
234 241
242 //importance factor, in the range [0, 1.0].
243 //1.0: the most important.
244 //based on the distance from the face to the view point and the angle from the face center to the view direction.
245 F32 mImportanceToCamera ;
246 F32 mBoundingSphereRadius ;
247
235protected: 248protected:
236 static BOOL sSafeRenderSelect; 249 static BOOL sSafeRenderSelect;
237 250