aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/lldrawpoolavatar.h
diff options
context:
space:
mode:
authorJacek Antonelli2009-04-30 13:04:20 -0500
committerJacek Antonelli2009-04-30 13:07:16 -0500
commitca8149ca6d157eb4b5fc8ba0e5ba3a6e56f72e7e (patch)
tree8348301d0ac44a524f1819b777686bf086907d76 /linden/indra/newview/lldrawpoolavatar.h
parentSecond Life viewer sources 1.22.11 (diff)
downloadmeta-impy-ca8149ca6d157eb4b5fc8ba0e5ba3a6e56f72e7e.zip
meta-impy-ca8149ca6d157eb4b5fc8ba0e5ba3a6e56f72e7e.tar.gz
meta-impy-ca8149ca6d157eb4b5fc8ba0e5ba3a6e56f72e7e.tar.bz2
meta-impy-ca8149ca6d157eb4b5fc8ba0e5ba3a6e56f72e7e.tar.xz
Second Life viewer sources 1.23.0-RC
Diffstat (limited to 'linden/indra/newview/lldrawpoolavatar.h')
-rw-r--r--linden/indra/newview/lldrawpoolavatar.h38
1 files changed, 35 insertions, 3 deletions
diff --git a/linden/indra/newview/lldrawpoolavatar.h b/linden/indra/newview/lldrawpoolavatar.h
index e14ba86..1e2630e 100644
--- a/linden/indra/newview/lldrawpoolavatar.h
+++ b/linden/indra/newview/lldrawpoolavatar.h
@@ -17,7 +17,8 @@
17 * There are special exceptions to the terms and conditions of the GPL as 17 * There are special exceptions to the terms and conditions of the GPL as
18 * it is applied to this Source Code. View the full text of the exception 18 * it is applied to this Source Code. View the full text of the exception
19 * in the file doc/FLOSS-exception.txt in this software distribution, or 19 * in the file doc/FLOSS-exception.txt in this software distribution, or
20 * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception 20 * online at
21 * http://secondlifegrid.net/programs/open_source/licensing/flossexception
21 * 22 *
22 * By copying, modifying or distributing this software, you acknowledge 23 * By copying, modifying or distributing this software, you acknowledge
23 * that you have read and understood your obligations described above, 24 * that you have read and understood your obligations described above,
@@ -51,7 +52,7 @@ public:
51 { 52 {
52 VERTEX_DATA_MASK = LLVertexBuffer::MAP_VERTEX | 53 VERTEX_DATA_MASK = LLVertexBuffer::MAP_VERTEX |
53 LLVertexBuffer::MAP_NORMAL | 54 LLVertexBuffer::MAP_NORMAL |
54 LLVertexBuffer::MAP_TEXCOORD | 55 LLVertexBuffer::MAP_TEXCOORD0 |
55 LLVertexBuffer::MAP_WEIGHT | 56 LLVertexBuffer::MAP_WEIGHT |
56 LLVertexBuffer::MAP_CLOTHWEIGHT 57 LLVertexBuffer::MAP_CLOTHWEIGHT
57 }; 58 };
@@ -73,6 +74,21 @@ public:
73 /*virtual*/ void render(S32 pass = 0); 74 /*virtual*/ void render(S32 pass = 0);
74 /*virtual*/ void renderForSelect(); 75 /*virtual*/ void renderForSelect();
75 76
77 /*virtual*/ S32 getNumDeferredPasses();
78 /*virtual*/ void beginDeferredPass(S32 pass);
79 /*virtual*/ void endDeferredPass(S32 pass);
80 /*virtual*/ void renderDeferred(S32 pass);
81
82 /*virtual*/ S32 getNumPostDeferredPasses();
83 /*virtual*/ void beginPostDeferredPass(S32 pass);
84 /*virtual*/ void endPostDeferredPass(S32 pass);
85 /*virtual*/ void renderPostDeferred(S32 pass);
86
87 /*virtual*/ S32 getNumShadowPasses();
88 /*virtual*/ void beginShadowPass(S32 pass);
89 /*virtual*/ void endShadowPass(S32 pass);
90 /*virtual*/ void renderShadow(S32 pass);
91
76 void beginRigid(); 92 void beginRigid();
77 void beginFootShadow(); 93 void beginFootShadow();
78 void beginSkinned(); 94 void beginSkinned();
@@ -80,14 +96,30 @@ public:
80 void endRigid(); 96 void endRigid();
81 void endFootShadow(); 97 void endFootShadow();
82 void endSkinned(); 98 void endSkinned();
99
100 void beginDeferredImpostor();
101 void beginDeferredRigid();
102 void beginDeferredSkinned();
103
104 void endDeferredImpostor();
105 void endDeferredRigid();
106 void endDeferredSkinned();
83 107
84 /*virtual*/ LLViewerImage *getDebugTexture(); 108 /*virtual*/ LLViewerImage *getDebugTexture();
85 /*virtual*/ LLColor3 getDebugColor() const; // For AGP debug display 109 /*virtual*/ LLColor3 getDebugColor() const; // For AGP debug display
86 110
87 void renderAvatars(LLVOAvatar *single_avatar, S32 pass = -1); // renders only one avatar if single_avatar is not null. 111 void renderAvatars(LLVOAvatar *single_avatar, S32 pass = -1); // renders only one avatar if single_avatar is not null.
88};
89 112
113 static BOOL sSkipOpaque;
114 static BOOL sSkipTransparent;
115};
90 116
117class LLVertexBufferAvatar : public LLVertexBuffer
118{
119public:
120 LLVertexBufferAvatar();
121 virtual void setupVertexBuffer(U32 data_mask) const;
122};
91 123
92extern S32 AVATAR_OFFSET_POS; 124extern S32 AVATAR_OFFSET_POS;
93extern S32 AVATAR_OFFSET_NORMAL; 125extern S32 AVATAR_OFFSET_NORMAL;