#include <lldrawpoolwlsky.h>
Public Member Functions | |
LLDrawPoolWLSky (void) | |
~LLDrawPoolWLSky () | |
BOOL | isDead () |
LLViewerImage * | getDebugTexture () |
void | beginRenderPass (S32 pass) |
void | endRenderPass (S32 pass) |
S32 | getNumPasses () |
void | render (S32 pass=0) |
void | prerender () |
U32 | getVertexDataMask () |
BOOL | verify () const |
S32 | getVertexShaderLevel () const |
LLDrawPoolWLSky * | instancePool () |
covariant override | |
LLViewerImage * | getTexture () |
BOOL | isFacePool () |
void | resetDrawOrders () |
Static Public Member Functions | |
static void | cleanupGL () |
static void | restoreGL () |
Static Public Attributes | |
static const U32 | SKY_VERTEX_DATA_MASK |
static const U32 | STAR_VERTEX_DATA_MASK |
Private Member Functions | |
void | renderDome (F32 camHeightLocal, LLGLSLShader *shader) const |
void | renderSkyHaze (F32 camHeightLocal) const |
void | renderStars (void) const |
void | renderSkyClouds (F32 camHeightLocal) const |
void | renderHeavenlyBodies () |
Static Private Attributes | |
static LLPointer< LLImageGL > | sCloudNoiseTexture = NULL |
static LLPointer< LLImageRaw > | sCloudNoiseRawImage = NULL |
Definition at line 39 of file lldrawpoolwlsky.h.
LLDrawPoolWLSky::LLDrawPoolWLSky | ( | void | ) |
Definition at line 55 of file lldrawpoolwlsky.cpp.
References LLImageGL::create(), LLImageFormatted::createFromExtension(), gDirUtilp, LLDir::getExpandedFilename(), LLWLParamManager::instance(), LLPointer< Type >::isNull(), LL_PATH_APP_SETTINGS, llendl, llerrs, llinfos, LLWLParamManager::propagateParameters(), sCloudNoiseRawImage, sCloudNoiseTexture, and TRUE.
Referenced by instancePool().
LLDrawPoolWLSky::~LLDrawPoolWLSky | ( | ) |
BOOL LLDrawPoolWLSky::isDead | ( | ) | [inline, virtual] |
LLViewerImage * LLDrawPoolWLSky::getDebugTexture | ( | ) | [virtual] |
void LLDrawPoolWLSky::beginRenderPass | ( | S32 | pass | ) | [virtual] |
void LLDrawPoolWLSky::endRenderPass | ( | S32 | pass | ) | [virtual] |
S32 LLDrawPoolWLSky::getNumPasses | ( | ) | [inline, virtual] |
void LLDrawPoolWLSky::render | ( | S32 | pass = 0 |
) | [virtual] |
Implements LLDrawPool.
Definition at line 264 of file lldrawpoolwlsky.cpp.
References LLImageGL::bind(), LLVOSky::FACE_MOON, LLFastTimer::FTM_RENDER_WL_SKY, LLWLParamManager::getDomeOffset(), LLWLParamManager::getDomeRadius(), LLSingleton< LLViewerCamera >::getInstance(), LLCoordFrame::getOrigin(), glh_get_current_projection(), gPipeline, gSky, LLPipeline::hasRenderType(), LLWLParamManager::instance(), LLVector3::mV, LLSky::mVOSkyp, LLPipeline::RENDER_TYPE_SKY, renderHeavenlyBodies(), renderSkyClouds(), renderSkyHaze(), renderStars(), and LLImageGL::unbindTexture().
void LLDrawPoolWLSky::prerender | ( | ) | [virtual] |
U32 LLDrawPoolWLSky::getVertexDataMask | ( | ) | [inline, virtual] |
Implements LLDrawPool.
Definition at line 58 of file lldrawpoolwlsky.h.
References SKY_VERTEX_DATA_MASK.
BOOL LLDrawPoolWLSky::verify | ( | ) | const [inline, virtual] |
S32 LLDrawPoolWLSky::getVertexShaderLevel | ( | ) | const [inline, virtual] |
Reimplemented from LLDrawPool.
Definition at line 60 of file lldrawpoolwlsky.h.
References LLDrawPool::mVertexShaderLevel.
LLDrawPoolWLSky * LLDrawPoolWLSky::instancePool | ( | ) | [virtual] |
covariant override
Implements LLDrawPool.
Definition at line 310 of file lldrawpoolwlsky.cpp.
References LLDrawPoolWLSky().
LLViewerImage * LLDrawPoolWLSky::getTexture | ( | ) | [virtual] |
BOOL LLDrawPoolWLSky::isFacePool | ( | ) | [inline, virtual] |
void LLDrawPoolWLSky::resetDrawOrders | ( | ) | [virtual] |
void LLDrawPoolWLSky::cleanupGL | ( | ) | [static] |
Definition at line 325 of file lldrawpoolwlsky.cpp.
References NULL, and sCloudNoiseTexture.
Referenced by LLVOWLSky::cleanupGL().
void LLDrawPoolWLSky::restoreGL | ( | ) | [static] |
Definition at line 331 of file lldrawpoolwlsky.cpp.
References LLImageGL::create(), sCloudNoiseRawImage, sCloudNoiseTexture, and TRUE.
Referenced by LLVOWLSky::restoreGL().
void LLDrawPoolWLSky::renderDome | ( | F32 | camHeightLocal, | |
LLGLSLShader * | shader | |||
) | const [private] |
Definition at line 97 of file lldrawpoolwlsky.cpp.
References F_SQRT3, LLSingleton< LLViewerCamera >::getInstance(), LLCoordFrame::getOrigin(), gSky, llassert_always, LLVector3::mV, LLSky::mVOWLSkyp, NULL, LLPipeline::sReflectionRender, and LLGLSLShader::uniform3f().
Referenced by renderSkyClouds(), and renderSkyHaze().
void LLDrawPoolWLSky::renderSkyHaze | ( | F32 | camHeightLocal | ) | const [private] |
Render the skydome
Definition at line 132 of file lldrawpoolwlsky.cpp.
References LLGLSLShader::bind(), LLPipeline::canUseWindLightShaders(), gObjectSimpleWaterProgram, gPipeline, gWLSkyProgram, LLPipeline::hasRenderType(), LLPipeline::RENDER_TYPE_SKY, renderDome(), shader, LLPipeline::sUnderWaterRender, and LLGLSLShader::unbind().
Referenced by render().
void LLDrawPoolWLSky::renderStars | ( | void | ) | const [private] |
Definition at line 152 of file lldrawpoolwlsky.cpp.
References LLColor4::black, LLGLImmediate::blendFunc(), LLPipeline::disableLights(), LLWLParamSet::getFloat(), gGL, gPipeline, gSky, LLWLParamManager::instance(), llassert_always, LLWLParamManager::mCurParams, LLColor4::mV, LLSky::mVOWLSkyp, and LLPipeline::sReflectionRender.
Referenced by render().
void LLDrawPoolWLSky::renderSkyClouds | ( | F32 | camHeightLocal | ) | const [private] |
Render the skydome
Definition at line 200 of file lldrawpoolwlsky.cpp.
References LLGLSLShader::bind(), LLPipeline::canUseWindLightShaders(), gObjectSimpleWaterProgram, gPipeline, gWLCloudProgram, LLPipeline::hasRenderType(), LLPipeline::RENDER_TYPE_CLOUDS, renderDome(), sCloudNoiseTexture, shader, LLPipeline::sUnderWaterRender, and LLGLSLShader::unbind().
Referenced by render().
void LLDrawPoolWLSky::renderHeavenlyBodies | ( | ) | [private] |
Definition at line 223 of file lldrawpoolwlsky.cpp.
References LLImageGL::bind(), LLPipeline::disableLights(), LLVOSky::FACE_MOON, LLVOSky::FACE_SUN, LLFace::getGeomCount(), LLFace::getTexture(), gPipeline, gSky, llclamp(), LLSky::mVOSkyp, and LLFace::renderIndexed().
Referenced by render().
const U32 LLDrawPoolWLSky::SKY_VERTEX_DATA_MASK [static] |
Initial value:
Definition at line 42 of file lldrawpoolwlsky.h.
Referenced by LLVOWLSky::drawDome(), getVertexDataMask(), and LLVOWLSky::updateGeometry().
const U32 LLDrawPoolWLSky::STAR_VERTEX_DATA_MASK [static] |
Initial value:
Definition at line 44 of file lldrawpoolwlsky.h.
Referenced by LLVOWLSky::drawStars(), and LLVOWLSky::updateStarGeometry().
LLPointer< LLImageGL > LLDrawPoolWLSky::sCloudNoiseTexture = NULL [static, private] |
Definition at line 80 of file lldrawpoolwlsky.h.
Referenced by cleanupGL(), LLDrawPoolWLSky(), renderSkyClouds(), restoreGL(), and ~LLDrawPoolWLSky().
LLPointer< LLImageRaw > LLDrawPoolWLSky::sCloudNoiseRawImage = NULL [static, private] |