llvowater.h

Go to the documentation of this file.
00001 
00032 #ifndef LL_VOWATER_H
00033 #define LL_VOWATER_H
00034 
00035 #include "llviewerobject.h"
00036 #include "llviewerimage.h"
00037 #include "v2math.h"
00038 
00039 const U32 N_RES = 16; //32                      // number of subdivisions of wave tile
00040 const U8  WAVE_STEP             = 8;
00041 
00042 class LLSurface;
00043 class LLHeavenBody;
00044 class LLVOSky;
00045 class LLFace;
00046 
00047 class LLVOWater : public LLStaticViewerObject
00048 {
00049 public:
00050         enum 
00051         {
00052                 VERTEX_DATA_MASK =      (1 << LLVertexBuffer::TYPE_VERTEX) |
00053                                                         (1 << LLVertexBuffer::TYPE_NORMAL) |
00054                                                         (1 << LLVertexBuffer::TYPE_TEXCOORD) 
00055         };
00056 
00057         LLVOWater(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp);
00058 
00059         /*virtual*/ void markDead();
00060 
00061         // Initialize data that's only inited once per class.
00062         static void initClass();
00063         static void cleanupClass();
00064 
00065         /*virtual*/ BOOL idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time);
00066         /*virtual*/ LLDrawable* createDrawable(LLPipeline *pipeline);
00067         /*virtual*/ BOOL        updateGeometry(LLDrawable *drawable);
00068         /*virtual*/ void                updateSpatialExtents(LLVector3& newMin, LLVector3& newMax);
00069 
00070         /*virtual*/ void updateTextures(LLAgent &agent);
00071         /*virtual*/ void setPixelAreaAndAngle(LLAgent &agent); // generate accurate apparent angle and area
00072 
00073         virtual U32 getPartitionType() const;
00074 
00075         /*virtual*/ BOOL isActive() const; // Whether this object needs to do an idleUpdate.
00076 
00077         void setUseTexture(const BOOL use_texture);
00078 
00079 protected:
00080         BOOL mUseTexture;
00081 };
00082 
00083 #endif // LL_VOSURFACEPATCH_H

Generated on Thu Jul 1 06:09:45 2010 for Second Life Viewer by  doxygen 1.4.7