#include <llvotree.h>
Definition at line 43 of file llvotree.h.
typedef std::map<U32, TreeSpeciesData*> LLVOTree::SpeciesMap [protected] |
Definition at line 140 of file llvotree.h.
anonymous enum |
LLVOTree::~LLVOTree | ( | ) | [protected] |
LLVOTree::LLVOTree | ( | const LLUUID & | id, | |
const LLPCode | pcode, | |||
LLViewerRegion * | regionp | |||
) |
Definition at line 82 of file llvotree.cpp.
References LLViewerObject::getPositionRegion(), LLWind::getVelocity(), mFrameCount, LLViewerObject::mRegionp, mSpecies, LLViewerRegion::mWind, and mWind.
void LLVOTree::initClass | ( | void | ) | [static] |
Definition at line 101 of file llvotree.cpp.
References LLXmlTree::addAttributeString(), LLViewerWindow::alertXml(), FALSE, gDirUtilp, LLDir::getExpandedFilename(), LLXmlTreeNode::getFirstChild(), LLXmlTreeNode::getNextChild(), LLXmlTree::getRoot(), gViewerWindow, i, LL_PATH_APP_SETTINGS, llendl, llerrs, llwarns, LLVOTree::TreeSpeciesData::mBillboardRatio, LLVOTree::TreeSpeciesData::mBillboardScale, LLVOTree::TreeSpeciesData::mBranchAspect, LLVOTree::TreeSpeciesData::mBranches, LLVOTree::TreeSpeciesData::mBranchLength, LLVOTree::TreeSpeciesData::mDepth, LLVOTree::TreeSpeciesData::mDroop, LLVOTree::TreeSpeciesData::mLeafScale, LLVOTree::TreeSpeciesData::mNoiseMag, LLVOTree::TreeSpeciesData::mNoiseScale, LLVOTree::TreeSpeciesData::mRandomLeafRotate, LLVOTree::TreeSpeciesData::mRepeatTrunkZ, LLVOTree::TreeSpeciesData::mScaleStep, LLVOTree::TreeSpeciesData::mTaper, LLVOTree::TreeSpeciesData::mTextureID, LLVOTree::TreeSpeciesData::mTrunkAspect, LLVOTree::TreeSpeciesData::mTrunkDepth, LLVOTree::TreeSpeciesData::mTrunkLength, LLVOTree::TreeSpeciesData::mTwist, LLXmlTree::parseFile(), S32, sMaxTreeSpecies, sSpeciesTable, and TRUE.
Referenced by LLViewerObject::initVOClasses().
void LLVOTree::cleanupClass | ( | ) | [static] |
Definition at line 265 of file llvotree.cpp.
References sSpeciesTable.
Referenced by LLViewerObject::cleanupVOClasses().
U32 LLVOTree::processUpdateMessage | ( | LLMessageSystem * | mesgsys, | |
void ** | user_data, | |||
U32 | block_num, | |||
const EObjectUpdateType | update_type, | |||
LLDataPacker * | dp | |||
) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 270 of file llvotree.cpp.
References LLPrimitive::getAcceleration(), LLPrimitive::getAngularVelocity(), LLViewerImageList::getImage(), LLPrimitive::getVelocity(), gImageList, llendl, llinfos, mBillboardRatio, mBillboardScale, mBranchAspect, mBranches, mBranchLength, LLViewerObject::mData, mDepth, mDroop, mLeafScale, mScaleStep, mSpecies, mTreeImagep, mTrunkAspect, mTrunkDepth, mTrunkLength, mTwist, OUT_TERSE_IMPROVED, LLViewerObject::processUpdateMessage(), LLPrimitive::setAcceleration(), LLPrimitive::setAngularVelocity(), LLPrimitive::setVelocity(), sSpeciesTable, and LLVector3::zero.
Reimplemented from LLViewerObject.
Definition at line 336 of file llvotree.cpp.
References LLViewerObject::getPositionRegion(), LLWind::getVelocity(), LLPipeline::hasRenderType(), LLVector3::magVec(), mBranches, LLViewerObject::mDead, mDepth, mFrameCount, LLViewerObject::mRegionp, mTrunkBend, mTrunkVel, LLViewerRegion::mWind, mWind, LLVector3::normVec(), LLPipeline::RENDER_TYPE_TREE, and TRUE.
void LLVOTree::render | ( | LLAgent & | agent | ) |
Definition at line 382 of file llvotree.cpp.
void LLVOTree::setPixelAreaAndAngle | ( | LLAgent & | agent | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 387 of file llvotree.cpp.
References LLAgent::getCameraPositionAgent(), LLSingleton< LLViewerCamera >::getInstance(), LLViewerObject::getMaxScale(), LLViewerObject::getPositionAgent(), LLCamera::getViewHeightInPixels(), LLVector3::magVec(), LLViewerObject::mAppAngle, mBillboardRatio, mBillboardScale, LLViewerObject::mPixelArea, RAD_TO_DEG, and LLViewerObject::setPixelAreaAndAngle().
void LLVOTree::updateTextures | ( | LLAgent & | agent | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 414 of file llvotree.cpp.
References fsqrtf, LLPipeline::hasRenderDebugMask(), llformat(), LLViewerObject::mPixelArea, mTreeImagep, LLPipeline::RENDER_DEBUG_TEXTURE_AREA, and LLViewerObject::setDebugText().
LLDrawable * LLVOTree::createDrawable | ( | LLPipeline * | pipeline | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 428 of file llvotree.cpp.
References LLPipeline::allocDrawable(), FALSE, LLPipeline::getPool(), LLViewerObject::mDrawable, mTreeImagep, LLDrawPool::POOL_TREE, LLPipeline::RENDER_TYPE_TREE, LLFace::setSize(), and updateRadius().
BOOL LLVOTree::updateGeometry | ( | LLDrawable * | drawable | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 451 of file llvotree.cpp.
References DEG_TO_RAD, LLFastTimer::FTM_UPDATE_TREE, LLDrawable::getFace(), LLFace::getGeometry(), LLViewerObject::getPositionAgent(), i, j, LEAF_BOTTOM, LEAF_INDICES, LEAF_LEFT, LEAF_RIGHT, LEAF_TOP, LEAF_VERTICES, LEAF_WIDTH, llassert, MAX_SLICES, LLFace::mCenterAgent, LLFace::mCenterLocal, mSpecies, LLVector3::mV, LLFace::mVertexBuffer, S32, LLFace::setGeomIndex(), LLFace::setIndicesIndex(), LLFace::setSize(), LLVector3::setVec(), sLODIndexCount, sLODIndexOffset, sLODSlices, sLODVertexCount, sLODVertexOffset, sSpeciesTable, tut::tc(), TRUE, turbulence3(), and LLDrawPoolTree::VERTEX_DATA_MASK.
Reimplemented from LLViewerObject.
Definition at line 921 of file llvotree.cpp.
References LLViewerObject::getRenderPosition(), LLXform::getRotation(), LLXform::getScale(), LLVector3::magVec(), mBillboardRatio, mBillboardScale, LLViewerObject::mDrawable, LLVector3::mV, and LLVector3::setVec().
U32 LLVOTree::getPartitionType | ( | ) | const [virtual] |
Reimplemented from LLViewerObject.
Definition at line 936 of file llvotree.cpp.
References LLViewerRegion::PARTITION_TREE.
void LLVOTree::updateRadius | ( | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 911 of file llvotree.cpp.
References LLPointer< Type >::isNull(), and LLViewerObject::mDrawable.
Referenced by createDrawable().
U32 LLVOTree::drawBranchPipeline | ( | LLMatrix4 & | matrix, | |
U16 * | indicesp, | |||
S32 | trunk_LOD, | |||
S32 | stop_level, | |||
U16 | depth, | |||
U16 | trunk_depth, | |||
F32 | scale, | |||
F32 | twist, | |||
F32 | droop, | |||
F32 | branches, | |||
F32 | alpha | |||
) |
Definition at line 788 of file llvotree.cpp.
References LLPipeline::addTrianglesDrawn(), DEG_TO_RAD, i, LEAF_INDICES, llassert, mBillboardRatio, mBillboardScale, mBranchAspect, mBranchLength, mLeafScale, LLMatrix4::mMatrix, mScaleStep, mTrunkAspect, mTrunkLength, S32, LLMatrix4::setTranslation(), sLODIndexCount, sLODIndexOffset, LLPipeline::sReflectionRender, and stop_glerror.
Referenced by LLDrawPoolTree::renderTree().
friend class LLDrawPoolTree [friend] |
Definition at line 112 of file llvotree.h.
S32 LLVOTree::sMaxTreeSpecies = 0 [static] |
F32 LLVOTree::sTreeFactor = 1.f [static] |
Definition at line 110 of file llvotree.h.
Referenced by handleTreeLODChanged(), LLDrawPoolTree::renderTree(), and settings_to_globals().
LLVector3 LLVOTree::mTrunkBend [protected] |
Definition at line 114 of file llvotree.h.
Referenced by idleUpdate(), and LLDrawPoolTree::renderTree().
LLVector3 LLVOTree::mTrunkVel [protected] |
LLVector3 LLVOTree::mWind [protected] |
LLPointer<LLViewerImage> LLVOTree::mTreeImagep [protected] |
Definition at line 118 of file llvotree.h.
Referenced by createDrawable(), processUpdateMessage(), and updateTextures().
U8 LLVOTree::mSpecies [protected] |
Definition at line 120 of file llvotree.h.
Referenced by LLVOTree(), processUpdateMessage(), and updateGeometry().
F32 LLVOTree::mBranchLength [protected] |
Definition at line 121 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
F32 LLVOTree::mTrunkLength [protected] |
Definition at line 122 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
F32 LLVOTree::mDroop [protected] |
Definition at line 123 of file llvotree.h.
Referenced by processUpdateMessage(), and LLDrawPoolTree::renderTree().
F32 LLVOTree::mTwist [protected] |
Definition at line 124 of file llvotree.h.
Referenced by processUpdateMessage(), and LLDrawPoolTree::renderTree().
F32 LLVOTree::mBranches [protected] |
Definition at line 125 of file llvotree.h.
Referenced by idleUpdate(), processUpdateMessage(), and LLDrawPoolTree::renderTree().
U8 LLVOTree::mDepth [protected] |
Definition at line 126 of file llvotree.h.
Referenced by idleUpdate(), processUpdateMessage(), and LLDrawPoolTree::renderTree().
F32 LLVOTree::mScaleStep [protected] |
Definition at line 127 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
U8 LLVOTree::mTrunkDepth [protected] |
Definition at line 128 of file llvotree.h.
Referenced by processUpdateMessage(), and LLDrawPoolTree::renderTree().
F32 LLVOTree::mLeafScale [protected] |
Definition at line 130 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
F32 LLVOTree::mBillboardScale [protected] |
Definition at line 132 of file llvotree.h.
Referenced by drawBranchPipeline(), processUpdateMessage(), setPixelAreaAndAngle(), and updateSpatialExtents().
F32 LLVOTree::mBillboardRatio [protected] |
Definition at line 133 of file llvotree.h.
Referenced by drawBranchPipeline(), processUpdateMessage(), setPixelAreaAndAngle(), and updateSpatialExtents().
F32 LLVOTree::mTrunkAspect [protected] |
Definition at line 134 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
F32 LLVOTree::mBranchAspect [protected] |
Definition at line 135 of file llvotree.h.
Referenced by drawBranchPipeline(), and processUpdateMessage().
F32 LLVOTree::mRandomLeafRotate [protected] |
Definition at line 136 of file llvotree.h.
U32 LLVOTree::mFrameCount [protected] |
LLVOTree::SpeciesMap LLVOTree::sSpeciesTable [static, protected] |
Definition at line 141 of file llvotree.h.
Referenced by cleanupClass(), initClass(), processUpdateMessage(), and updateGeometry().
S32 LLVOTree::sLODIndexOffset [static, protected] |
Definition at line 143 of file llvotree.h.
Referenced by drawBranchPipeline(), and updateGeometry().
S32 LLVOTree::sLODIndexCount [static, protected] |
Definition at line 144 of file llvotree.h.
Referenced by drawBranchPipeline(), and updateGeometry().
S32 LLVOTree::sLODVertexOffset [static, protected] |
S32 LLVOTree::sLODVertexCount [static, protected] |
S32 LLVOTree::sLODSlices = {10, 5, 4, 3} [static, protected] |
F32 LLVOTree::sLODAngles = {30.f, 20.f, 15.f, 0.f} [static, protected] |