LLVOTreeNew Class Reference

#include <llvotreenew.h>

Inheritance diagram for LLVOTreeNew:

Inheritance graph
[legend]
Collaboration diagram for LLVOTreeNew:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LLVOTreeNew (const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp)
virtual ~LLVOTreeNew ()
U32 processUpdateMessage (LLMessageSystem *mesgsys, void **user_data, U32 block_num, const EObjectUpdateType update_type, LLDataPacker *dp)
BOOL idleUpdate (LLAgent &agent, LLWorld &world, const F64 &time)
void render (LLAgent &agent)
void updateTextures (LLAgent &agent)
LLDrawablecreateDrawable (LLPipeline *pipeline)
BOOL updateGeometry (LLDrawable *drawable)
F32 CalcZStep (TreePart *part, U8 section)
void createPart (U8 level, F32 length, F32 radius, LLStrider< LLVector3 > &vertices, LLStrider< LLVector3 > &normals, LLStrider< LLVector2 > &tex_coords, U32 *indices, U32 &curVertexIndex, U32 &curTexCoordIndex, U32 &curNormalIndex, U32 &curIndiceIndex)
S32 findSimilarPart (U8 level)
F32 CalculateSectionRadius (U8 level, F32 y, F32 stemLength, F32 stemRadius)
void createSection (LLMatrix4 &frame, TreePart *part, F32 sectionRadius, F32 stemZ, LLStrider< LLVector3 > &vertices, LLStrider< LLVector2 > &tex_coords, U32 *indices, U32 &curVertexIndex, U32 &curTexCoordIndex, U32 &curIndiceIndex, U8 curSection, BOOL firstBranch)
void genIndicesAndFaceNormalsForLastSection (TreePart *part, U8 numVerts, LLStrider< LLVector3 > &vertices, U32 curVertexIndex, U32 *indices, U32 &curIndiceIndex, BOOL firstBranch)
void genVertexNormals (TreePart *part, LLStrider< LLVector3 > &normals, U8 numSections, U32 curNormalOffset)
void drawTree (LLDrawPool &draw_pool, const LLMatrix4 &frame, U8 level, F32 offsetChild, F32 curLength, F32 parentLength, F32 curRadius, F32 parentRadius, U8 part, U8 variant, U8 startSection)
void drawTree (LLDrawPool &draw_pool)

Static Public Member Functions

static S32 llrand_signed (S32 negPos)
static S32 llrand_signed (S32 negPos, U32 index)
static S32 llrand_unsigned (S32 pos, U32 index)
static F32 llfrand_signed (F32 negPos)
static F32 llfrand_signed (F32 negPos, U32 index)
static F32 llfrand_unsigned (F32 pos, U32 index)
static F32 llfrand_unsigned (F32 pos)
static void cleanupTextures ()
static void initClass ()

Public Attributes

U8 mSpecies
LLPointer< LLViewerImagemTreeImagep
LLMatrix4 mTrunkFlareFrames [MAX_FLARE]
F32 mSegSplitsError [3]
U32 mRandOffset [MAX_LEVELS]
U32 mNumTrisDrawn
U32 mTotalIndices
U32 mTotalVerts

Static Public Attributes

static LLTreeParams sParameters
static U32 sNextVertexIndex [MAX_SPECIES]
static U32 sNextIndiceIndex [MAX_SPECIES]
static U32 sNextPartIndex [MAX_PARTS]
static TreePart sTreeParts [MAX_SPECIES][MAX_PARTS]
static LLUUID sTreeImageIDs [MAX_SPECIES]
static F32 sRandNums [MAX_RAND_NUMS]
static U32 sTreePartsUsed [MAX_SPECIES][MAX_PARTS][MAX_VARS]

Classes

struct  TreePart

Detailed Description

Definition at line 77 of file llvotreenew.h.


Constructor & Destructor Documentation

LLVOTreeNew::LLVOTreeNew ( const LLUUID id,
const LLPCode  pcode,
LLViewerRegion regionp 
)

virtual LLVOTreeNew::~LLVOTreeNew (  )  [virtual]


Member Function Documentation

F32 LLVOTreeNew::CalculateSectionRadius ( U8  level,
F32  y,
F32  stemLength,
F32  stemRadius 
)

F32 LLVOTreeNew::CalcZStep ( TreePart part,
U8  section 
)

static void LLVOTreeNew::cleanupTextures (  )  [inline, static]

Definition at line 120 of file llvotreenew.h.

LLDrawable* LLVOTreeNew::createDrawable ( LLPipeline pipeline  )  [virtual]

Reimplemented from LLViewerObject.

void LLVOTreeNew::createPart ( U8  level,
F32  length,
F32  radius,
LLStrider< LLVector3 > &  vertices,
LLStrider< LLVector3 > &  normals,
LLStrider< LLVector2 > &  tex_coords,
U32 indices,
U32 curVertexIndex,
U32 curTexCoordIndex,
U32 curNormalIndex,
U32 curIndiceIndex 
)

void LLVOTreeNew::createSection ( LLMatrix4 frame,
TreePart part,
F32  sectionRadius,
F32  stemZ,
LLStrider< LLVector3 > &  vertices,
LLStrider< LLVector2 > &  tex_coords,
U32 indices,
U32 curVertexIndex,
U32 curTexCoordIndex,
U32 curIndiceIndex,
U8  curSection,
BOOL  firstBranch 
)

void LLVOTreeNew::drawTree ( LLDrawPool draw_pool  ) 

void LLVOTreeNew::drawTree ( LLDrawPool draw_pool,
const LLMatrix4 frame,
U8  level,
F32  offsetChild,
F32  curLength,
F32  parentLength,
F32  curRadius,
F32  parentRadius,
U8  part,
U8  variant,
U8  startSection 
)

S32 LLVOTreeNew::findSimilarPart ( U8  level  ) 

void LLVOTreeNew::genIndicesAndFaceNormalsForLastSection ( TreePart part,
U8  numVerts,
LLStrider< LLVector3 > &  vertices,
U32  curVertexIndex,
U32 indices,
U32 curIndiceIndex,
BOOL  firstBranch 
)

void LLVOTreeNew::genVertexNormals ( TreePart part,
LLStrider< LLVector3 > &  normals,
U8  numSections,
U32  curNormalOffset 
)

BOOL LLVOTreeNew::idleUpdate ( LLAgent agent,
LLWorld world,
const F64 time 
) [virtual]

Reimplemented from LLViewerObject.

static void LLVOTreeNew::initClass (  )  [static]

static F32 LLVOTreeNew::llfrand_signed ( F32  negPos,
U32  index 
) [inline, static]

Definition at line 104 of file llvotreenew.h.

References f, MAX_RAND_NUMS, and sRandNums.

static F32 LLVOTreeNew::llfrand_signed ( F32  negPos  )  [inline, static]

Definition at line 99 of file llvotreenew.h.

References f, and ll_frand().

static F32 LLVOTreeNew::llfrand_unsigned ( F32  pos  )  [inline, static]

Definition at line 115 of file llvotreenew.h.

References ll_frand().

static F32 LLVOTreeNew::llfrand_unsigned ( F32  pos,
U32  index 
) [inline, static]

Definition at line 109 of file llvotreenew.h.

References MAX_RAND_NUMS, and sRandNums.

static S32 LLVOTreeNew::llrand_signed ( S32  negPos,
U32  index 
) [inline, static]

Definition at line 88 of file llvotreenew.h.

References f, lltrunc(), MAX_RAND_NUMS, and sRandNums.

static S32 LLVOTreeNew::llrand_signed ( S32  negPos  )  [inline, static]

Definition at line 83 of file llvotreenew.h.

References ll_rand().

static S32 LLVOTreeNew::llrand_unsigned ( S32  pos,
U32  index 
) [inline, static]

Definition at line 93 of file llvotreenew.h.

References lltrunc(), MAX_RAND_NUMS, and sRandNums.

U32 LLVOTreeNew::processUpdateMessage ( LLMessageSystem mesgsys,
void **  user_data,
U32  block_num,
const EObjectUpdateType  update_type,
LLDataPacker dp 
) [virtual]

Reimplemented from LLViewerObject.

void LLVOTreeNew::render ( LLAgent agent  ) 

BOOL LLVOTreeNew::updateGeometry ( LLDrawable drawable  )  [virtual]

Reimplemented from LLViewerObject.

void LLVOTreeNew::updateTextures ( LLAgent agent  )  [virtual]

Reimplemented from LLViewerObject.


Member Data Documentation

U32 LLVOTreeNew::mNumTrisDrawn

Definition at line 194 of file llvotreenew.h.

U32 LLVOTreeNew::mRandOffset[MAX_LEVELS]

Definition at line 192 of file llvotreenew.h.

F32 LLVOTreeNew::mSegSplitsError[3]

Definition at line 191 of file llvotreenew.h.

U8 LLVOTreeNew::mSpecies

Definition at line 188 of file llvotreenew.h.

U32 LLVOTreeNew::mTotalIndices

Definition at line 195 of file llvotreenew.h.

U32 LLVOTreeNew::mTotalVerts

Definition at line 196 of file llvotreenew.h.

LLPointer<LLViewerImage> LLVOTreeNew::mTreeImagep

Definition at line 189 of file llvotreenew.h.

LLMatrix4 LLVOTreeNew::mTrunkFlareFrames[MAX_FLARE]

Definition at line 190 of file llvotreenew.h.

U32 LLVOTreeNew::sNextIndiceIndex[MAX_SPECIES] [static]

Definition at line 205 of file llvotreenew.h.

U32 LLVOTreeNew::sNextPartIndex[MAX_PARTS] [static]

Definition at line 208 of file llvotreenew.h.

U32 LLVOTreeNew::sNextVertexIndex[MAX_SPECIES] [static]

Definition at line 204 of file llvotreenew.h.

LLTreeParams LLVOTreeNew::sParameters [static]

Definition at line 201 of file llvotreenew.h.

F32 LLVOTreeNew::sRandNums[MAX_RAND_NUMS] [static]

Definition at line 215 of file llvotreenew.h.

Referenced by llfrand_signed(), llfrand_unsigned(), llrand_signed(), and llrand_unsigned().

LLUUID LLVOTreeNew::sTreeImageIDs[MAX_SPECIES] [static]

Definition at line 212 of file llvotreenew.h.

TreePart LLVOTreeNew::sTreeParts[MAX_SPECIES][MAX_PARTS] [static]

Definition at line 209 of file llvotreenew.h.

U32 LLVOTreeNew::sTreePartsUsed[MAX_SPECIES][MAX_PARTS][MAX_VARS] [static]

Definition at line 218 of file llvotreenew.h.


The documentation for this class was generated from the following file:
Generated on Thu Jul 1 06:12:03 2010 for Second Life Viewer by  doxygen 1.4.7