Windlight/water parameter managers now derived from standard LLSingleton instead of using some silly redundant clone.

This commit is contained in:
Shyotl
2011-09-02 06:35:53 -05:00
parent 91cb401324
commit 443d4e9f56
31 changed files with 418 additions and 390 deletions

View File

@@ -66,8 +66,6 @@
#include "curl/curl.h"
LLWaterParamManager * LLWaterParamManager::sInstance = NULL;
LLWaterParamManager::LLWaterParamManager() :
mFogColor(22.f/255.f, 43.f/255.f, 54.f/255.f, 0.0f, 0.0f, "waterFogColor", "WaterFogColor"),
mFogDensity(4, "waterFogDensity", 2),
@@ -246,7 +244,7 @@ void LLWaterParamManager::updateShaderUniforms(LLGLSLShader * shader)
{
if (shader->mShaderGroup == LLGLSLShader::SG_WATER)
{
shader->uniform4fv(LLViewerShaderMgr::LIGHTNORM, 1, LLWLParamManager::instance()->getRotatedLightDir().mV);
shader->uniform4fv(LLViewerShaderMgr::LIGHTNORM, 1, LLWLParamManager::getInstance()->getRotatedLightDir().mV);
shader->uniform3fv("camPosLocal", 1, LLViewerCamera::getInstance()->getOrigin().mV);
shader->uniform4fv("waterFogColor", 1, LLDrawPoolWater::sWaterFogColor.mV);
shader->uniform4fv("waterPlane", 1, mWaterPlane.mV);
@@ -342,18 +340,6 @@ void LLWaterParamManager::update(LLViewerCamera * cam)
}
}
// static
void LLWaterParamManager::initClass(void)
{
instance();
}
// static
void LLWaterParamManager::cleanupClass(void)
{
delete sInstance;
sInstance = NULL;
}
bool LLWaterParamManager::addParamSet(const std::string& name, LLWaterParamSet& param)
{
@@ -459,16 +445,11 @@ F32 LLWaterParamManager::getFogDensity(void)
}
// static
LLWaterParamManager * LLWaterParamManager::instance()
void LLWaterParamManager::initSingleton()
{
if(NULL == sInstance)
{
sInstance = new LLWaterParamManager();
loadAllPresets(LLStringUtil::null);
sInstance->loadAllPresets(LLStringUtil::null);
sInstance->getParamSet("Default", sInstance->mCurParams);
}
return sInstance;
getParamSet("Default", mCurParams);
}