summaryrefslogtreecommitdiff
path: root/indra/newview/llface.h
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2024-09-23 21:54:25 +0300
committerAndrey Lihatskiy <alihatskiy@productengine.com>2024-09-23 22:08:43 +0300
commit46448f9547102cce3e23c522467ef800c8c266fc (patch)
tree7e0d9f09e0a9049470523fa5b827804a140926f0 /indra/newview/llface.h
parent4274eb591a1b0806f8c73ca16df65ade60db2200 (diff)
parent3747dd9a085e4d75ec21c8048f1269bc3f29e582 (diff)
Merge branch 'develop' into marchcat/b-develop
# Conflicts: # indra/newview/llfeaturemanager.cpp # indra/newview/llviewertexturelist.cpp # indra/newview/llvoicewebrtc.cpp
Diffstat (limited to 'indra/newview/llface.h')
-rw-r--r--indra/newview/llface.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llface.h b/indra/newview/llface.h
index 99642016f7..65637fbf85 100644
--- a/indra/newview/llface.h
+++ b/indra/newview/llface.h
@@ -234,8 +234,14 @@ public:
// return true if this face is in an alpha draw pool
bool isInAlphaPool() const;
public: //aligned members
+
+ // bounding box of face in drawable space
LLVector4a mExtents[2];
+ // cached bounding box of rigged face in world space
+ // calculated on-demand by LLFace::calcPixelArea and may not be up-to-date
+ LLVector4a mRiggedExtents[2] = { LLVector4a(0,0,0), LLVector4a(0,0,0) };
+
private:
friend class LLViewerTextureList;
F32 adjustPartialOverlapPixelArea(F32 cos_angle_to_view_dir, F32 radius );
@@ -301,7 +307,14 @@ private:
S32 mReferenceIndex;
std::vector<S32> mRiggedIndex;
+ // gFrameTimeSeconds when mPixelArea was last updated
+ F32 mLastPixelAreaUpdate = 0.f;
+
+ // virtual size of face in texture area (mPixelArea adjusted by texture repeats)
+ // used to determine desired resolution of texture
F32 mVSize;
+
+ // pixel area face covers on screen
F32 mPixelArea;
//importance factor, in the range [0, 1.0].