|
|
@@ -61,8 +61,6 @@ MaterialManager::MaterialManager()
|
|
|
mLastTime = 0;
|
|
|
mDampness = 0.0f;
|
|
|
mWarningInst = NULL;
|
|
|
- mMatDefToFlush = NULL;
|
|
|
- mMatDefToReload = NULL;
|
|
|
|
|
|
GFXDevice::getDeviceEventSignal().notify( this, &MaterialManager::_handleGFXEvent );
|
|
|
|
|
|
@@ -75,8 +73,6 @@ MaterialManager::MaterialManager()
|
|
|
mUsingDeferred = false;
|
|
|
|
|
|
mFlushAndReInit = false;
|
|
|
- mMatDefShouldFlush = false;
|
|
|
- mMatDefShouldReload = false;
|
|
|
|
|
|
mDefaultAnisotropy = 1;
|
|
|
Con::addVariable( "$pref::Video::defaultAnisotropy", TypeS32, &mDefaultAnisotropy,
|
|
|
@@ -328,12 +324,6 @@ String MaterialManager::getMapEntry(const String & textureName) const
|
|
|
}
|
|
|
|
|
|
void MaterialManager::flushAndReInitInstances()
|
|
|
-{
|
|
|
- // delay flushes and reinits until the start of the next frame.
|
|
|
- mFlushAndReInit = true;
|
|
|
-}
|
|
|
-
|
|
|
-void MaterialManager::_flushAndReInitInstances()
|
|
|
{
|
|
|
// Clear the flag if its set.
|
|
|
mFlushAndReInit = false;
|
|
|
@@ -368,16 +358,8 @@ void MaterialManager::_flushAndReInitInstances()
|
|
|
(*iter)->reInit();
|
|
|
}
|
|
|
|
|
|
-// Used in the materialEditor. This flushes the material preview object so it can be reloaded easily.
|
|
|
-void MaterialManager::flushInstance(BaseMaterialDefinition* target)
|
|
|
-{
|
|
|
- mMatDefToFlush = target;
|
|
|
- mMatDefShouldFlush = true;
|
|
|
-}
|
|
|
-
|
|
|
void MaterialManager::_flushInstance( BaseMaterialDefinition *target )
|
|
|
{
|
|
|
- mMatDefShouldFlush = false;
|
|
|
Vector<BaseMatInstance*>::iterator iter = mMatInstanceList.begin();
|
|
|
while ( iter != mMatInstanceList.end() )
|
|
|
{
|
|
|
@@ -388,26 +370,16 @@ void MaterialManager::_flushInstance( BaseMaterialDefinition *target )
|
|
|
}
|
|
|
iter++;
|
|
|
}
|
|
|
-
|
|
|
- mMatDefToFlush = NULL;
|
|
|
-}
|
|
|
-
|
|
|
-void MaterialManager::reInitInstance(BaseMaterialDefinition* target)
|
|
|
-{
|
|
|
- mMatDefToReload = target;
|
|
|
- mMatDefShouldReload = true;
|
|
|
}
|
|
|
|
|
|
void MaterialManager::_reInitInstance( BaseMaterialDefinition *target )
|
|
|
{
|
|
|
- mMatDefShouldReload = false;
|
|
|
Vector<BaseMatInstance*>::iterator iter = mMatInstanceList.begin();
|
|
|
for ( ; iter != mMatInstanceList.end(); iter++ )
|
|
|
{
|
|
|
if ( (*iter)->getMaterial() == target )
|
|
|
(*iter)->reInit();
|
|
|
}
|
|
|
- mMatDefToReload = NULL;
|
|
|
}
|
|
|
|
|
|
void MaterialManager::updateTime()
|
|
|
@@ -527,14 +499,6 @@ bool MaterialManager::_handleGFXEvent( GFXDevice::GFXDeviceEventType event_ )
|
|
|
case GFXDevice::deStartOfFrame:
|
|
|
if ( mFlushAndReInit )
|
|
|
_flushAndReInitInstances();
|
|
|
- if (mMatDefShouldFlush)
|
|
|
- {
|
|
|
- _flushInstance(mMatDefToFlush);
|
|
|
- }
|
|
|
- if (mMatDefShouldReload)
|
|
|
- {
|
|
|
- _reInitInstance(mMatDefToReload);
|
|
|
- }
|
|
|
break;
|
|
|
|
|
|
default:
|