lldrawpoolwater.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_LLDRAWPOOLWATER_H
00033 #define LL_LLDRAWPOOLWATER_H
00034 
00035 #include "lldrawpool.h"
00036 
00037 
00038 class LLFace;
00039 class LLHeavenBody;
00040 class LLWaterSurface;
00041 
00042 class LLDrawPoolWater: public LLFacePool
00043 {
00044 protected:
00045         LLPointer<LLViewerImage> mHBTex[2];
00046         LLPointer<LLViewerImage> mWaterImagep;
00047         LLPointer<LLViewerImage> mWaterNormp;
00048 
00049         const LLWaterSurface *mWaterSurface;
00050 public:
00051         static BOOL sSkipScreenCopy;
00052         static BOOL sNeedsReflectionUpdate;
00053         static BOOL sNeedsDistortionUpdate;
00054         static LLVector3 sLightDir;
00055 
00056         static LLColor4 sWaterFogColor;
00057 
00058         enum
00059         {
00060                 VERTEX_DATA_MASK =      LLVertexBuffer::MAP_VERTEX |
00061                                                         LLVertexBuffer::MAP_NORMAL |
00062                                                         LLVertexBuffer::MAP_TEXCOORD    
00063         };
00064 
00065         virtual U32 getVertexDataMask() { return VERTEX_DATA_MASK; }
00066 
00067         LLDrawPoolWater();
00068         /*virtual*/ ~LLDrawPoolWater();
00069 
00070         /*virtual*/ LLDrawPool *instancePool();
00071         static void restoreGL();
00072 
00073         /*virtual*/ S32 getNumPasses();
00074         /*virtual*/ void render(S32 pass = 0);
00075         /*virtual*/ void renderFaceSelected(LLFace *facep, LLImageGL *image, const LLColor4 &color,
00076                                                                                 const S32 index_offset = 0, const S32 index_count = 0);
00077         /*virtual*/ void prerender();
00078         /*virtual*/ void renderForSelect();
00079 
00080         /*virtual*/ LLViewerImage *getDebugTexture();
00081         /*virtual*/ LLColor3 getDebugColor() const; // For AGP debug display
00082 
00083         void renderReflection(LLFace* face);
00084         void shade();
00085 };
00086 
00087 void cgErrorCallback();
00088 
00089 #endif // LL_LLDRAWPOOLWATER_H

Generated on Fri May 16 08:33:20 2008 for SecondLife by  doxygen 1.5.5