aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/lldrawpool.h
diff options
context:
space:
mode:
authorJacek Antonelli2008-08-15 23:45:34 -0500
committerJacek Antonelli2008-08-15 23:45:34 -0500
commitcd17687f01420952712a500107e0f93e7ab8d5f8 (patch)
treece48c2b706f2c1176290e39fb555fbdf6648ce01 /linden/indra/newview/lldrawpool.h
parentSecond Life viewer sources 1.19.0.5 (diff)
downloadmeta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.zip
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.gz
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.bz2
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.xz
Second Life viewer sources 1.19.1.0
Diffstat (limited to 'linden/indra/newview/lldrawpool.h')
-rw-r--r--linden/indra/newview/lldrawpool.h33
1 files changed, 15 insertions, 18 deletions
diff --git a/linden/indra/newview/lldrawpool.h b/linden/indra/newview/lldrawpool.h
index f283abd..bb354e3 100644
--- a/linden/indra/newview/lldrawpool.h
+++ b/linden/indra/newview/lldrawpool.h
@@ -43,8 +43,6 @@ class LLViewerImage;
43class LLSpatialGroup; 43class LLSpatialGroup;
44class LLDrawInfo; 44class LLDrawInfo;
45 45
46#define DEFAULT_MAX_VERTICES 65535
47
48class LLDrawPool 46class LLDrawPool
49{ 47{
50public: 48public:
@@ -53,18 +51,18 @@ public:
53 enum 51 enum
54 { 52 {
55 // Correspond to LLPipeline render type 53 // Correspond to LLPipeline render type
56 POOL_SKY = 1, 54 POOL_SIMPLE = 1,
57 POOL_STARS,
58 POOL_GROUND,
59 POOL_TERRAIN, 55 POOL_TERRAIN,
60 POOL_SIMPLE, 56 POOL_TREE,
57 POOL_SKY,
58 POOL_WL_SKY,
59 POOL_GROUND,
61 POOL_BUMP, 60 POOL_BUMP,
61 POOL_INVISIBLE,
62 POOL_AVATAR, 62 POOL_AVATAR,
63 POOL_TREE, 63 POOL_WATER,
64 POOL_GLOW, 64 POOL_GLOW,
65 POOL_ALPHA, 65 POOL_ALPHA,
66 POOL_WATER,
67 POOL_ALPHA_POST_WATER,
68 NUM_POOL_TYPES, 66 NUM_POOL_TYPES,
69 }; 67 };
70 68
@@ -82,7 +80,6 @@ public:
82 virtual S32 getNumPasses() { return 1; } 80 virtual S32 getNumPasses() { return 1; }
83 virtual void render(S32 pass = 0) = 0; 81 virtual void render(S32 pass = 0) = 0;
84 virtual void prerender() = 0; 82 virtual void prerender() = 0;
85 virtual S32 getMaterialAttribIndex() = 0;
86 virtual U32 getVertexDataMask() = 0; 83 virtual U32 getVertexDataMask() = 0;
87 virtual BOOL verify() const { return TRUE; } // Verify that all data in the draw pool is correct! 84 virtual BOOL verify() const { return TRUE; } // Verify that all data in the draw pool is correct!
88 virtual S32 getVertexShaderLevel() const { return mVertexShaderLevel; } 85 virtual S32 getVertexShaderLevel() const { return mVertexShaderLevel; }
@@ -110,12 +107,14 @@ public:
110 enum 107 enum
111 { 108 {
112 PASS_SIMPLE = NUM_POOL_TYPES, 109 PASS_SIMPLE = NUM_POOL_TYPES,
113 PASS_GLOW, 110 PASS_GRASS,
114 PASS_FULLBRIGHT, 111 PASS_FULLBRIGHT,
115 PASS_INVISIBLE, 112 PASS_INVISIBLE,
113 PASS_INVISI_SHINY,
114 PASS_FULLBRIGHT_SHINY,
116 PASS_SHINY, 115 PASS_SHINY,
117 PASS_BUMP, 116 PASS_BUMP,
118 PASS_GRASS, 117 PASS_GLOW,
119 PASS_ALPHA, 118 PASS_ALPHA,
120 NUM_RENDER_TYPES, 119 NUM_RENDER_TYPES,
121 }; 120 };
@@ -123,17 +122,16 @@ public:
123 LLRenderPass(const U32 type); 122 LLRenderPass(const U32 type);
124 virtual ~LLRenderPass(); 123 virtual ~LLRenderPass();
125 /*virtual*/ LLDrawPool* instancePool(); 124 /*virtual*/ LLDrawPool* instancePool();
126 /*vritual*/ S32 getMaterialAttribIndex() { return -1; }
127 /*virtual*/ LLViewerImage* getDebugTexture() { return NULL; } 125 /*virtual*/ LLViewerImage* getDebugTexture() { return NULL; }
128 LLViewerImage* getTexture() { return NULL; } 126 LLViewerImage* getTexture() { return NULL; }
129 BOOL isDead() { return FALSE; } 127 BOOL isDead() { return FALSE; }
130 void resetDrawOrders() { } 128 void resetDrawOrders() { }
131 129
130 static void applyModelMatrix(LLDrawInfo& params);
131 virtual void pushBatches(U32 type, U32 mask, BOOL texture = TRUE);
132 virtual void pushBatch(LLDrawInfo& params, U32 mask, BOOL texture); 132 virtual void pushBatch(LLDrawInfo& params, U32 mask, BOOL texture);
133 virtual void renderGroup(LLSpatialGroup* group, U32 type, U32 mask, BOOL texture = TRUE); 133 virtual void renderGroup(LLSpatialGroup* group, U32 type, U32 mask, BOOL texture = TRUE);
134 virtual void renderStatic(U32 type, U32 mask, BOOL texture = TRUE); 134 virtual void renderGroups(U32 type, U32 mask, BOOL texture = TRUE);
135 virtual void renderActive(U32 type, U32 mask, BOOL texture = TRUE);
136 virtual void renderInvisible(U32 mask);
137 virtual void renderTexture(U32 type, U32 mask); 135 virtual void renderTexture(U32 type, U32 mask);
138 136
139}; 137};
@@ -179,8 +177,6 @@ public:
179 static S32 drawLoopSetTex(face_array_t& face_list, S32 stage); 177 static S32 drawLoopSetTex(face_array_t& face_list, S32 stage);
180 void drawLoop(); 178 void drawLoop();
181 179
182 void renderVisibility();
183
184 void addFaceReference(LLFace *facep); 180 void addFaceReference(LLFace *facep);
185 void removeFaceReference(LLFace *facep); 181 void removeFaceReference(LLFace *facep);
186 182
@@ -235,4 +231,5 @@ public:
235 }; 231 };
236}; 232};
237 233
234
238#endif //LL_LLDRAWPOOL_H 235#endif //LL_LLDRAWPOOL_H