#include <lldrawpoolterrain.h>
Inheritance diagram for LLDrawPoolTerrain:
Public Types | |
VERTEX_DATA_MASK | |
enum | { VERTEX_DATA_MASK } |
Public Member Functions | |
virtual U32 | getVertexDataMask () |
LLDrawPoolTerrain (LLViewerImage *texturep) | |
virtual | ~LLDrawPoolTerrain () |
LLDrawPool * | instancePool () |
void | render (S32 pass=0) |
void | prerender () |
void | renderForSelect () |
void | dirtyTextures (const std::set< LLViewerImage * > &textures) |
LLViewerImage * | getTexture () |
LLViewerImage * | getDebugTexture () |
LLColor3 | getDebugColor () const |
virtual S32 | getMaterialAttribIndex () |
Static Public Member Functions | |
static S32 | getDetailMode () |
Public Attributes | |
LLPointer< LLViewerImage > | mAlphaRampImagep |
LLPointer< LLViewerImage > | m2DAlphaRampImagep |
LLPointer< LLViewerImage > | mAlphaNoiseImagep |
Static Public Attributes | |
static S32 | sDetailMode = 1 |
static F32 | sDetailScale = DETAIL_SCALE |
Protected Member Functions | |
void | renderSimple () |
void | renderOwnership () |
void | renderFull2TU () |
void | renderFull4TU () |
void | renderFull4TUShader () |
Private Attributes | |
LLPointer< LLViewerImage > | mTexturep |
Definition at line 37 of file lldrawpoolterrain.h.
anonymous enum |
LLDrawPoolTerrain::LLDrawPoolTerrain | ( | LLViewerImage * | texturep | ) |
Definition at line 62 of file lldrawpoolterrain.cpp.
References LLViewerImage::BOOST_TERRAIN, LLControlGroup::getF32(), LLViewerImageList::getImageFromUUID(), LLControlGroup::getS32(), LLControlGroup::getString(), gImageList, gSavedSettings, gViewerArt, m2DAlphaRampImagep, mAlphaRampImagep, mTexturep, sDetailMode, sDetailScale, TRUE, and LLImageGL::unbindTexture().
Referenced by instancePool().
LLDrawPoolTerrain::~LLDrawPoolTerrain | ( | ) | [virtual] |
Definition at line 84 of file lldrawpoolterrain.cpp.
References LLPipeline::findPool(), getTexture(), LLDrawPool::getType(), gPipeline, llassert, and NULL.
void LLDrawPoolTerrain::dirtyTextures | ( | const std::set< LLViewerImage * > & | textures | ) | [virtual] |
Reimplemented from LLFacePool.
Definition at line 1057 of file lldrawpoolterrain.cpp.
References gPipeline, LLPipeline::markTextured(), LLFacePool::mReferences, and mTexturep.
LLColor3 LLDrawPoolTerrain::getDebugColor | ( | ) | const |
LLViewerImage * LLDrawPoolTerrain::getDebugTexture | ( | ) | [virtual] |
Reimplemented from LLDrawPool.
Definition at line 1075 of file lldrawpoolterrain.cpp.
References mTexturep.
S32 LLDrawPoolTerrain::getDetailMode | ( | ) | [static] |
Definition at line 105 of file lldrawpoolterrain.cpp.
References sDetailMode.
Referenced by LLVertexBufferTerrain::setupVertexBuffer().
S32 LLDrawPoolTerrain::getMaterialAttribIndex | ( | ) | [virtual] |
Implements LLDrawPool.
Definition at line 1086 of file lldrawpoolterrain.cpp.
References gTerrainProgram, LLShaderMgr::MATERIAL_COLOR, and LLGLSLShader::mAttribute.
LLViewerImage * LLDrawPoolTerrain::getTexture | ( | ) | [virtual] |
Reimplemented from LLFacePool.
Definition at line 1070 of file lldrawpoolterrain.cpp.
References mTexturep.
Referenced by ~LLDrawPoolTerrain().
virtual U32 LLDrawPoolTerrain::getVertexDataMask | ( | ) | [inline, virtual] |
Implements LLDrawPool.
Definition at line 50 of file lldrawpoolterrain.h.
References VERTEX_DATA_MASK.
LLDrawPool * LLDrawPoolTerrain::instancePool | ( | ) | [virtual] |
Implements LLDrawPool.
Definition at line 90 of file lldrawpoolterrain.cpp.
References LLDrawPoolTerrain(), and mTexturep.
void LLDrawPoolTerrain::prerender | ( | ) | [virtual] |
Implements LLDrawPool.
Definition at line 96 of file lldrawpoolterrain.cpp.
References LLControlGroup::getS32(), gPipeline, gSavedSettings, LLDrawPool::mVertexShaderLevel, and sDetailMode.
Implements LLDrawPool.
Definition at line 110 of file lldrawpoolterrain.cpp.
References LLGLSLShader::bind(), LLViewerImage::BOOST_TERRAIN, LLPipeline::disableLights(), LLPipeline::enableLightsDynamic(), LLPipeline::enableLightsStatic(), f, LLFastTimer::FTM_RENDER_TERRAIN, LLControlGroup::getBOOL(), LLViewerRegion::getComposition(), gGLManager, gHighlightProgram, gPipeline, gSavedSettings, gTerrainProgram, i, LLShaderMgr::MATERIAL_COLOR, LLVLComposition::mDetailTextures, LLFacePool::mDrawFace, LLGLManager::mHasARBEnvCombine, LLGLManager::mHasMultitexture, LLGLManager::mNumTextureUnits, LLDrawPool::mVertexShaderLevel, renderFull2TU(), renderFull4TU(), renderFull4TUShader(), renderOwnership(), renderSimple(), S32, sDetailMode, t, and LLGLSLShader::vertexAttrib4f().
void LLDrawPoolTerrain::renderForSelect | ( | ) | [virtual] |
Implements LLFacePool.
Definition at line 1036 of file lldrawpoolterrain.cpp.
References LLVertexBuffer::MAP_VERTEX, LLFacePool::mDrawFace, and LLImageGL::unbindTexture().
void LLDrawPoolTerrain::renderFull2TU | ( | ) | [protected] |
Definition at line 671 of file lldrawpoolterrain.cpp.
References LLViewerImage::bindTexture(), LLFacePool::drawLoop(), f, gAgent, LLViewerRegion::getComposition(), LLViewerRegion::getOriginGlobal(), LLAgent::getRegion(), glBlendFunc, glClientActiveTextureARB, glDisable, glEnable, glTexGenfv, glTranslatef, m2DAlphaRampImagep, LLVLComposition::mDetailTextures, LLFacePool::mDrawFace, LLVector3d::mdV, LLVector4::mV, sDetailScale, LLVector4::setVec(), LLImageGL::unbindTexture(), VX, and VY.
Referenced by render().
void LLDrawPoolTerrain::renderFull4TU | ( | ) | [protected] |
Definition at line 397 of file lldrawpoolterrain.cpp.
References LLViewerImage::bindTexture(), LLFacePool::drawLoop(), f, gAgent, LLViewerRegion::getComposition(), LLViewerRegion::getOriginGlobal(), LLAgent::getRegion(), glBlendFunc, glClientActiveTextureARB, glDisable, glEnable, glTexGenfv, glTranslatef, m2DAlphaRampImagep, LLVLComposition::mDetailTextures, LLFacePool::mDrawFace, LLVector3d::mdV, LLVector4::mV, sDetailScale, LLVector4::setVec(), LLImageGL::unbindTexture(), VX, and VY.
Referenced by render().
void LLDrawPoolTerrain::renderFull4TUShader | ( | ) | [protected] |
Definition at line 189 of file lldrawpoolterrain.cpp.
References LLViewerImage::bindTexture(), LLGLSLShader::disableTexture(), LLFacePool::drawLoop(), LLGLSLShader::enableTexture(), f, gAgent, LLViewerRegion::getComposition(), LLFrameTimer::getElapsedTimeAndResetF32(), LLPipeline::getLightingDetail(), LLViewerRegion::getOriginGlobal(), LLAgent::getRegion(), glBlendFunc, glClientActiveTextureARB, glDisable, glEnable, glTexGenfv, glTranslatef, gPipeline, gTerrainProgram, m2DAlphaRampImagep, LLVLComposition::mDetailTextures, LLFacePool::mDrawFace, LLVector3d::mdV, LLVector4::mV, S32, sDetailScale, LLVector4::setVec(), LLShaderMgr::TERRAIN_ALPHARAMP, LLShaderMgr::TERRAIN_DETAIL0, LLShaderMgr::TERRAIN_DETAIL1, VX, and VY.
Referenced by render().
void LLDrawPoolTerrain::renderOwnership | ( | ) | [protected] |
Definition at line 982 of file lldrawpoolterrain.cpp.
References LLViewerImage::bindTexture(), f, LLViewerRegion::getParcelOverlay(), LLVOSurfacePatch::getPatch(), LLSurface::getRegion(), LLSurfacePatch::getSurface(), LLViewerParcelOverlay::getTexture(), LLDrawable::getVObj(), glClientActiveTextureARB, glPopMatrix, llassert, LLVertexBuffer::MAP_TEXCOORD, LLVertexBuffer::MAP_VERTEX, and LLFacePool::mDrawFace.
Referenced by render().
void LLDrawPoolTerrain::renderSimple | ( | ) | [protected] |
Definition at line 922 of file lldrawpoolterrain.cpp.
References LLFacePool::drawLoop(), f, glClientActiveTextureARB, glDisable, glEnable, glTexGenfv, LLFacePool::mDrawFace, mTexturep, LLVector4::mV, LLVector3::mV, LLVector4::setVec(), and LLImageGL::unbindTexture().
Referenced by render().
Definition at line 68 of file lldrawpoolterrain.h.
Referenced by LLDrawPoolTerrain(), renderFull2TU(), renderFull4TU(), and renderFull4TUShader().
Definition at line 69 of file lldrawpoolterrain.h.
LLPointer<LLViewerImage> LLDrawPoolTerrain::mTexturep [private] |
Definition at line 39 of file lldrawpoolterrain.h.
Referenced by dirtyTextures(), getDebugTexture(), getTexture(), instancePool(), LLDrawPoolTerrain(), and renderSimple().
S32 LLDrawPoolTerrain::sDetailMode = 1 [static] |
Definition at line 73 of file lldrawpoolterrain.h.
Referenced by LLFeatureManager::applyRecommendedFeatures(), getDetailMode(), LLTerrainDetailListener::handleEvent(), LLDrawPoolTerrain(), prerender(), and render().
F32 LLDrawPoolTerrain::sDetailScale = DETAIL_SCALE [static] |
Definition at line 74 of file lldrawpoolterrain.h.
Referenced by LLDrawPoolTerrain(), renderFull2TU(), renderFull4TU(), and renderFull4TUShader().