diff options
Diffstat (limited to '')
-rw-r--r-- | linden/indra/newview/llvopartgroup.h | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/linden/indra/newview/llvopartgroup.h b/linden/indra/newview/llvopartgroup.h index fc6c1f3..3dc07c0 100644 --- a/linden/indra/newview/llvopartgroup.h +++ b/linden/indra/newview/llvopartgroup.h | |||
@@ -35,26 +35,50 @@ | |||
35 | 35 | ||
36 | class LLViewerPartGroup; | 36 | class LLViewerPartGroup; |
37 | 37 | ||
38 | class LLVOPartGroup : public LLViewerObject | 38 | class LLVOPartGroup : public LLAlphaObject |
39 | { | 39 | { |
40 | public: | 40 | public: |
41 | enum | ||
42 | { | ||
43 | VERTEX_DATA_MASK = (1 << LLVertexBuffer::TYPE_VERTEX) | | ||
44 | (1 << LLVertexBuffer::TYPE_NORMAL) | | ||
45 | (1 << LLVertexBuffer::TYPE_TEXCOORD) | | ||
46 | (1 << LLVertexBuffer::TYPE_COLOR) | ||
47 | } | ||
48 | eVertexDataMask; | ||
49 | |||
41 | LLVOPartGroup(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp); | 50 | LLVOPartGroup(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp); |
42 | 51 | ||
43 | ~LLVOPartGroup(); | 52 | ~LLVOPartGroup(); |
44 | 53 | ||
45 | /*virtual*/ BOOL isActive() const; // Whether this object needs to do an idleUpdate. | 54 | /*virtual*/ BOOL isActive() const; // Whether this object needs to do an idleUpdate. |
46 | BOOL idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time); | 55 | BOOL idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time); |
56 | BOOL isParticle(); | ||
47 | 57 | ||
58 | virtual F32 getBinRadius(); | ||
59 | virtual void updateSpatialExtents(LLVector3& newMin, LLVector3& newMax); | ||
60 | virtual U32 getPartitionType() const; | ||
61 | |||
48 | /*virtual*/ void setPixelAreaAndAngle(LLAgent &agent); | 62 | /*virtual*/ void setPixelAreaAndAngle(LLAgent &agent); |
49 | /*virtual*/ void updateTextures(LLAgent &agent); | 63 | /*virtual*/ void updateTextures(LLAgent &agent); |
50 | 64 | ||
51 | /*virtual*/ LLDrawable* createDrawable(LLPipeline *pipeline); | 65 | /*virtual*/ LLDrawable* createDrawable(LLPipeline *pipeline); |
52 | /*virtual*/ BOOL updateGeometry(LLDrawable *drawable); | 66 | /*virtual*/ BOOL updateGeometry(LLDrawable *drawable); |
67 | void getGeometry(S32 idx, | ||
68 | LLStrider<LLVector3>& verticesp, | ||
69 | LLStrider<LLVector3>& normalsp, | ||
70 | LLStrider<LLVector2>& texcoordsp, | ||
71 | LLStrider<LLColor4U>& colorsp, | ||
72 | LLStrider<U32>& indicesp); | ||
53 | 73 | ||
74 | void updateFaceSize(S32 idx) { } | ||
75 | F32 getPartSize(S32 idx); | ||
54 | void setViewerPartGroup(LLViewerPartGroup *part_groupp) { mViewerPartGroupp = part_groupp; } | 76 | void setViewerPartGroup(LLViewerPartGroup *part_groupp) { mViewerPartGroupp = part_groupp; } |
77 | LLViewerPartGroup* getViewerPartGroup() { return mViewerPartGroupp; } | ||
78 | |||
55 | protected: | 79 | protected: |
56 | LLViewerPartGroup *mViewerPartGroupp; | 80 | LLViewerPartGroup *mViewerPartGroupp; |
57 | 81 | LLVector3 mExtents[2]; | |
58 | LLColor4 mDebugColor; | 82 | LLColor4 mDebugColor; |
59 | }; | 83 | }; |
60 | 84 | ||