summaryrefslogtreecommitdiff
path: root/indra/newview/llface.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llface.h')
-rw-r--r--indra/newview/llface.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/indra/newview/llface.h b/indra/newview/llface.h
index 8c2e229a81..de4d03351c 100644
--- a/indra/newview/llface.h
+++ b/indra/newview/llface.h
@@ -59,6 +59,17 @@ class LLFace
{
public:
+ void* operator new(size_t size)
+ {
+ return ll_aligned_malloc_16(size);
+ }
+
+ void operator delete(void* ptr)
+ {
+ ll_aligned_free_16(ptr);
+ }
+
+
LLFace(const LLFace& rhs)
{
*this = rhs;
@@ -79,10 +90,13 @@ public:
USE_FACE_COLOR = 0x0010,
TEXTURE_ANIM = 0x0020,
RIGGED = 0x0040,
+ PARTICLE = 0x0080,
};
static void initClass();
+ static void cacheFaceInVRAM(const LLVolumeFace& vf);
+
public:
LLFace(LLDrawable* drawablep, LLViewerObject* objp) { init(drawablep, objp); }
~LLFace() { destroy(); }
@@ -223,7 +237,7 @@ public:
//vertex buffer tracking
void setVertexBuffer(LLVertexBuffer* buffer);
- void clearVertexBuffer(); //sets mVertexBuffer and mLastVertexBuffer to NULL
+ void clearVertexBuffer(); //sets mVertexBuffer to NULL
LLVertexBuffer* getVertexBuffer() const { return mVertexBuffer; }
U32 getRiggedVertexBufferDataMask() const;
S32 getRiggedIndex(U32 type) const;
@@ -256,8 +270,7 @@ public:
private:
LLPointer<LLVertexBuffer> mVertexBuffer;
- LLPointer<LLVertexBuffer> mLastVertexBuffer;
-
+
U32 mState;
LLFacePool* mDrawPoolp;
U32 mPoolType;
@@ -270,12 +283,6 @@ private:
U32 mIndicesIndex; // index into draw pool for indices (yeah, I know!)
S32 mIndexInTex ;
- //previous rebuild's geometry info
- U16 mLastGeomCount;
- U16 mLastGeomIndex;
- U32 mLastIndicesCount;
- U32 mLastIndicesIndex;
-
LLXformMatrix* mXform;
LLPointer<LLViewerTexture> mTexture;
LLPointer<LLDrawable> mDrawablep;