#include <lldrawpoolwater.h>
Inheritance diagram for LLDrawPoolWater:
Public Types | |
VERTEX_DATA_MASK | |
SHADER_LEVEL_RIPPLE = 2 | |
enum | { VERTEX_DATA_MASK } |
enum | { SHADER_LEVEL_RIPPLE = 2 } |
Public Member Functions | |
virtual U32 | getVertexDataMask () |
LLDrawPoolWater () | |
~LLDrawPoolWater () | |
LLDrawPool * | instancePool () |
void | render (S32 pass=0) |
void | renderFaceSelected (LLFace *facep, LLImageGL *image, const LLColor4 &color, const S32 index_offset=0, const S32 index_count=0) |
void | prerender () |
void | renderForSelect () |
LLViewerImage * | getDebugTexture () |
LLColor3 | getDebugColor () const |
void | renderReflection (LLFace *face) |
void | shade () |
void | renderShaderSimple () |
virtual S32 | getMaterialAttribIndex () |
Static Public Member Functions | |
static void | restoreGL () |
Static Public Attributes | |
static BOOL | sSkipScreenCopy = FALSE |
Protected Attributes | |
LLPointer< LLViewerImage > | mHBTex [2] |
LLPointer< LLViewerImage > | mWaterImagep |
LLPointer< LLViewerImage > | mWaterNormp |
const LLWaterSurface * | mWaterSurface |
Definition at line 42 of file lldrawpoolwater.h.
anonymous enum |
anonymous enum |
LLDrawPoolWater::LLDrawPoolWater | ( | ) |
Definition at line 62 of file lldrawpoolwater.cpp.
References LLViewerImageList::getImage(), LLControlGroup::getString(), gImageList, gMoonTextureID, gSunTextureID, gViewerArt, mHBTex, mWaterImagep, mWaterNormp, restoreGL(), TRUE, and WATER_TEST.
LLDrawPoolWater::~LLDrawPoolWater | ( | ) |
Definition at line 79 of file lldrawpoolwater.cpp.
LLColor3 LLDrawPoolWater::getDebugColor | ( | ) | const |
LLViewerImage * LLDrawPoolWater::getDebugTexture | ( | ) | [virtual] |
Reimplemented from LLDrawPool.
Definition at line 684 of file lldrawpoolwater.cpp.
References LLViewerImage::sSmokeImagep.
virtual S32 LLDrawPoolWater::getMaterialAttribIndex | ( | ) | [inline, virtual] |
virtual U32 LLDrawPoolWater::getVertexDataMask | ( | ) | [inline, virtual] |
Implements LLDrawPool.
Definition at line 59 of file lldrawpoolwater.h.
References VERTEX_DATA_MASK.
LLDrawPool * LLDrawPoolWater::instancePool | ( | ) | [virtual] |
void LLDrawPoolWater::prerender | ( | ) | [virtual] |
Implements LLDrawPool.
Definition at line 96 of file lldrawpoolwater.cpp.
References LLControlGroup::getBOOL(), LLShaderMgr::getVertexShaderLevel(), gFeatureManagerp, gGLManager, gSavedSettings, LLFeatureList::isFeatureAvailable(), LLGLManager::mHasCubeMap, LLDrawPool::mVertexShaderLevel, and LLShaderMgr::SHADER_ENVIRONMENT.
Implements LLDrawPool.
Definition at line 105 of file lldrawpoolwater.cpp.
References LLViewerCamera::cameraUnderWater(), LLPipeline::disableLights(), f, face, LLFastTimer::FTM_RENDER_WATER, gCamera, LLDrawable::getCurrentFrame(), LLMatrix4::getMat3(), LLViewerCamera::getModelview(), LLVOSky::getReflFace(), LLCoordFrame::getUpAxis(), gFrameTimeSeconds, gGLManager, glClear, glClientActiveTextureARB, glColor4fv, glDisable, glEnable, glLoadMatrixf, glStencilFunc, glTexGenfv, gPipeline, gSky, LLMatrix4::invert(), LLVOSky::isReflFace(), LLFacePool::mDrawFace, LLGLManager::mHasMultitexture, LLDrawPool::mIndicesDrawn, LLColor4::mV, LLDrawPool::mVertexShaderLevel, LLSky::mVOSkyp, mWaterImagep, renderReflection(), renderShaderSimple(), LLColor4::setVec(), shade(), SHADER_LEVEL_RIPPLE, stop_glerror, LLImageGL::unbindTexture(), and LLVector3::z_axis.
void LLDrawPoolWater::renderForSelect | ( | ) | [virtual] |
Definition at line 466 of file lldrawpoolwater.cpp.
References LLViewerImage::bindTexture(), face, LLVOSky::getDrawRefl(), gSky, mHBTex, LLDrawPool::mIndicesDrawn, and LLSky::mVOSkyp.
Referenced by render(), and renderShaderSimple().
void LLDrawPoolWater::renderShaderSimple | ( | ) |
Definition at line 320 of file lldrawpoolwater.cpp.
References LLGLSLShader::bind(), LLShaderMgr::BUMP_MAP, LLViewerCamera::cameraUnderWater(), LLShaderMgr::DIFFUSE_MAP, LLPipeline::disableLights(), LLGLSLShader::disableTexture(), LLGLSLShader::enableTexture(), LLShaderMgr::ENVIRONMENT_MAP, f, face, gCamera, LLMatrix4::getMat3(), LLViewerCamera::getModelview(), LLVOSky::getReflFace(), LLCoordFrame::getUpAxis(), gFrameTimeSeconds, gGLManager, glClear, glClientActiveTextureARB, glColor4fv, glDisable, glEnable, glLoadMatrixf, glStencilFunc, glTexGenfv, gPipeline, gSky, gWaterProgram, LLMatrix4::invert(), LLVOSky::isReflFace(), LLFacePool::mDrawFace, LLGLManager::mHasMultitexture, LLDrawPool::mIndicesDrawn, LLColor4::mV, LLSky::mVOSkyp, mWaterImagep, renderReflection(), S32, LLColor4::setVec(), stop_glerror, LLImageGL::unbindTexture(), and LLVector3::z_axis.
Referenced by render().
void LLDrawPoolWater::restoreGL | ( | ) | [static] |
Definition at line 84 of file lldrawpoolwater.cpp.
Referenced by LLDrawPoolWater(), and LLViewerWindow::restoreGL().
void LLDrawPoolWater::shade | ( | ) |
Definition at line 500 of file lldrawpoolwater.cpp.
References LLGLSLShader::bind(), LLCubeMap::bind(), LLPipeline::bindScreenToTexture(), LLShaderMgr::BUMP_MAP, LLViewerCamera::cameraUnderWater(), LLShaderMgr::DIFFUSE_MAP, LLGLSLShader::disableTexture(), LLGLSLShader::enableTexture(), LLShaderMgr::ENVIRONMENT_MAP, f, face, gCamera, LLFrameTimer::getElapsedSeconds(), LLSky::getMoonDirection(), LLCoordFrame::getOrigin(), LLSky::getSunDirection(), LLCoordFrame::getUpAxis(), glClientActiveTextureARB, glColor4fv, glEnable, glGetBooleanv, gPipeline, gSky, gWaterProgram, LLVOSky::isReflFace(), mask, LLFacePool::mDrawFace, LLDrawPool::mIndicesDrawn, LLPipeline::mScreenScale, LLGLSLShader::mUniform, LLColor4::mV, LLColor3::mV, LLVector2::mV, LLVector3::mV, LLSky::mVOSkyp, mWaterNormp, NIGHTTIME_ELEVATION_COS, LLColor3::normVec(), LLVector3::normVec(), S32, LLColor4::setVec(), sSkipScreenCopy, sTime, LLShaderMgr::WATER_EYEVEC, LLShaderMgr::WATER_FBSCALE, LLShaderMgr::WATER_LIGHT_DIR, LLShaderMgr::WATER_REFSCALE, LLShaderMgr::WATER_SCREENTEX, LLShaderMgr::WATER_SPECULAR, LLShaderMgr::WATER_SPECULAR_EXP, LLShaderMgr::WATER_TIME, LLShaderMgr::WATER_WAVE_DIR1, LLShaderMgr::WATER_WAVE_DIR2, and LLVector3::z_axis.
Referenced by render().
LLPointer<LLViewerImage> LLDrawPoolWater::mHBTex[2] [protected] |
Definition at line 45 of file lldrawpoolwater.h.
Referenced by LLDrawPoolWater(), and renderReflection().
LLPointer<LLViewerImage> LLDrawPoolWater::mWaterImagep [protected] |
Definition at line 46 of file lldrawpoolwater.h.
Referenced by LLDrawPoolWater(), render(), and renderShaderSimple().
LLPointer<LLViewerImage> LLDrawPoolWater::mWaterNormp [protected] |
const LLWaterSurface* LLDrawPoolWater::mWaterSurface [protected] |
Definition at line 49 of file lldrawpoolwater.h.
BOOL LLDrawPoolWater::sSkipScreenCopy = FALSE [static] |
Definition at line 51 of file lldrawpoolwater.h.
Referenced by LLPipeline::generateReflectionMap(), LLPipeline::renderGeom(), and shade().