#include <llvograss.h>
Definition at line 43 of file llvograss.h.
typedef std::map<U32, GrassSpeciesData*> LLVOGrass::SpeciesMap |
Definition at line 93 of file llvograss.h.
LLVOGrass::LLVOGrass | ( | const LLUUID & | id, | |
const LLPCode | pcode, | |||
LLViewerRegion * | regionp | |||
) |
Definition at line 75 of file llvograss.cpp.
References LLVector3::clearVec(), GRASS_MAX_BLADES, LLViewerObject::mbCanSelect, mBladeWindAngle, mBWAOverlap, mGrassBend, mGrassVel, mLastPatchUpdateTime, mNumBlades, mPatch, NULL, LLViewerObject::setNumTEs(), LLViewerObject::setTEColor(), and TRUE.
LLVOGrass::~LLVOGrass | ( | ) | [protected] |
Definition at line 93 of file llvograss.cpp.
void LLVOGrass::initClass | ( | void | ) | [static] |
Definition at line 118 of file llvograss.cpp.
References LLXmlTree::addAttributeString(), alert_done(), LLViewerWindow::alertXml(), dz_x, dz_y, exp_x, exp_y, F_PI, FALSE, gDirUtilp, LLDir::getExpandedFilename(), LLXmlTreeNode::getFirstChild(), LLViewerImage::getID(), LLViewerImageList::getImageFromFile(), LLXmlTreeNode::getNextChild(), LLXmlTree::getRoot(), gImageList, GRASS_BLADE_BASE, GRASS_DISTRIBUTION_SD, GRASS_MAX_BLADES, gViewerWindow, i, LLUUID::isNull(), ll_frand(), LL_PATH_APP_SETTINGS, llendl, llerrs, llinfos, llwarns, indra::base::lllog::log(), LLVOGrass::GrassSpeciesData::mBladeSizeX, LLVOGrass::GrassSpeciesData::mBladeSizeY, LLVOGrass::GrassSpeciesData::mTextureID, LLXmlTree::parseFile(), rot_x, rot_y, S32, sMaxGrassSpecies, sSpeciesTable, TRUE, and w_mod.
Referenced by LLViewerObject::initVOClasses().
void LLVOGrass::cleanupClass | ( | ) | [static] |
Definition at line 262 of file llvograss.cpp.
References sSpeciesTable.
Referenced by LLViewerObject::cleanupVOClasses().
U32 LLVOGrass::getPartitionType | ( | ) | const [virtual] |
Reimplemented from LLViewerObject.
Definition at line 556 of file llvograss.cpp.
References LLViewerRegion::PARTITION_GRASS.
U32 LLVOGrass::processUpdateMessage | ( | LLMessageSystem * | mesgsys, | |
void ** | user_data, | |||
U32 | block_num, | |||
const EObjectUpdateType | update_type, | |||
LLDataPacker * | dp | |||
) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 267 of file llvograss.cpp.
References LLPrimitive::getAcceleration(), LLPrimitive::getAngularVelocity(), LLPrimitive::getVelocity(), gPipeline, llendl, llinfos, LLPipeline::markRebuild(), LLViewerObject::mDrawable, LLViewerObject::processUpdateMessage(), LLDrawable::REBUILD_VOLUME, LLPrimitive::setAcceleration(), LLPrimitive::setAngularVelocity(), LLPrimitive::setVelocity(), TRUE, updateSpecies(), and LLVector3::zero.
static void LLVOGrass::import | ( | LLFILE * | file, | |
LLMessageSystem * | mesgsys, | |||
const LLVector3 & | pos | |||
) | [static] |
void LLVOGrass::updateDrawable | ( | BOOL | force_damped | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 573 of file llvograss.cpp.
References LLXform::clearChanged(), gPipeline, LLPipeline::markRebuild(), LLViewerObject::mDrawable, LLPointer< Type >::notNull(), LLDrawable::REBUILD_ALL, LLXform::SHIFTED, and TRUE.
LLDrawable * LLVOGrass::createDrawable | ( | LLPipeline * | pipeline | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 394 of file llvograss.cpp.
References LLPipeline::allocDrawable(), LLViewerObject::mDrawable, and LLPipeline::RENDER_TYPE_GRASS.
BOOL LLVOGrass::updateGeometry | ( | LLDrawable * | drawable | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 402 of file llvograss.cpp.
References LLViewerObject::dirtySpatialGroup(), LLFastTimer::FTM_UPDATE_GRASS, plantBlades(), and TRUE.
void LLVOGrass::getGeometry | ( | S32 | idx, | |
LLStrider< LLVector3 > & | verticesp, | |||
LLStrider< LLVector3 > & | normalsp, | |||
LLStrider< LLVector2 > & | texcoordsp, | |||
LLStrider< LLColor4U > & | colorsp, | |||
LLStrider< U16 > & | indicesp | |||
) | [virtual] |
Implements LLAlphaObject.
Definition at line 440 of file llvograss.cpp.
References dz_x, dz_y, exp_x, exp_y, LLFace::getGeomIndex(), LLViewerRegion::getLand(), LLSurfacePatch::getLastUpdateTime(), LLViewerRegion::getOriginAgent(), LLViewerObject::getPositionRegion(), GRASS_BLADE_BASE, GRASS_BLADE_HEIGHT, i, LLViewerObject::mDrawable, mLastPatchUpdateTime, mNumBlades, mPatch, LLXform::mPosition, LLViewerObject::mRegionp, LLXform::mScale, mSpecies, LLVector3::mV, LLVector3::normVec(), LLSurface::resolveHeightRegion(), LLSurface::resolvePatchRegion(), rot_x, rot_y, S32, LLPipeline::sCompiles, sSpeciesTable, VX, VY, VZ, and w_mod.
void LLVOGrass::updateFaceSize | ( | S32 | idx | ) | [inline, virtual] |
void LLVOGrass::updateTextures | ( | LLAgent & | agent | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 342 of file llvograss.cpp.
References LLViewerImage::addTextureStats(), fsqrtf, LLViewerObject::getTEImage(), gPipeline, LLPipeline::hasRenderDebugMask(), llformat(), LLViewerObject::mPixelArea, LLPipeline::RENDER_DEBUG_TEXTURE_AREA, and LLViewerObject::setDebugText().
BOOL LLVOGrass::updateLOD | ( | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 354 of file llvograss.cpp.
References FALSE, gPipeline, GRASS_MAX_BLADES, llmax(), llmin(), lltrunc(), LLPipeline::markRebuild(), LLViewerObject::mDrawable, mNumBlades, LLXform::mScale, LLVector3::mV, LLDrawable::REBUILD_ALL, S32, LLFace::setSize(), and TRUE.
void LLVOGrass::setPixelAreaAndAngle | ( | LLAgent & | agent | ) | [virtual] |
Reimplemented from LLViewerObject.
Definition at line 323 of file llvograss.cpp.
References LLAgent::getCameraPositionAgent(), LLSingleton< LLViewerCamera >::getInstance(), LLViewerObject::getMaxScale(), LLViewerObject::getPositionAgent(), LLCamera::getViewHeightInPixels(), LLVector3::magVec(), LLViewerObject::mAppAngle, LLViewerObject::mPixelArea, and RAD_TO_DEG.
void LLVOGrass::plantBlades | ( | ) |
Definition at line 410 of file llvograss.cpp.
References LLCoordFrame::getAtAxis(), LLSingleton< LLViewerCamera >::getInstance(), LLCoordFrame::getOrigin(), LLViewerRegion::getOriginAgent(), LLViewerObject::getTEImage(), LLFace::GLOBAL, llendl, llinfos, LLFace::mCenterLocal, LLAlphaObject::mDepth, LLViewerObject::mDrawable, mNumBlades, LLXform::mPosition, LLViewerObject::mRegionp, mSpecies, LLFace::mVertexBuffer, NULL, LLPipeline::sCompiles, LLFace::setSize(), LLFace::setState(), LLFace::setTEOffset(), LLFace::setTexture(), and sSpeciesTable.
Referenced by updateGeometry().
BOOL LLVOGrass::isActive | ( | void | ) | const [virtual] |
Reimplemented from LLViewerObject.
Definition at line 301 of file llvograss.cpp.
References LLSurfacePatch::getLastUpdateTime(), gPipeline, LLPipeline::hasRenderType(), LLPipeline::markRebuild(), LLViewerObject::mDead, LLViewerObject::mDrawable, mLastPatchUpdateTime, mPatch, LLDrawable::REBUILD_VOLUME, LLPipeline::RENDER_TYPE_GRASS, and TRUE.
void LLVOGrass::updateSpecies | ( | ) | [private] |
Definition at line 98 of file llvograss.cpp.
References LLViewerImageList::getImage(), gImageList, llendl, llinfos, mSpecies, LLViewerObject::mState, LLViewerObject::setTEImage(), and sSpeciesTable.
Referenced by processUpdateMessage().
S32 LLVOGrass::sMaxGrassSpecies = 0 [static] |
Definition at line 83 of file llvograss.h.
Referenced by LLToolPlacer::addObject(), and initClass().
Definition at line 95 of file llvograss.h.
Referenced by getGeometry(), plantBlades(), and updateSpecies().
Definition at line 96 of file llvograss.h.
Definition at line 97 of file llvograss.h.
Definition at line 99 of file llvograss.h.
Referenced by getGeometry(), idleUpdate(), and LLVOGrass().
Definition at line 101 of file llvograss.h.
Referenced by getGeometry(), idleUpdate(), and LLVOGrass().
Definition at line 105 of file llvograss.h.
F32 LLVOGrass::mLastHeight [private] |
Definition at line 114 of file llvograss.h.
S32 LLVOGrass::mNumBlades [private] |
Definition at line 115 of file llvograss.h.
Referenced by getGeometry(), LLVOGrass(), plantBlades(), and updateLOD().
LLVOGrass::SpeciesMap LLVOGrass::sSpeciesTable [static, private] |
Definition at line 117 of file llvograss.h.
Referenced by cleanupClass(), getGeometry(), initClass(), plantBlades(), and updateSpecies().