Ejemplo n.º 1
0
	//-----------------------------------------------------------------------------------
	ShaderManager::~ShaderManager()
	{
		delete mShaderPiecesManager;
		mShaderPiecesManager = NULL;

		ShaderCacheMap::iterator it = mShaderCache.begin();
		ShaderCacheMap::iterator endIt = mShaderCache.end();
		for (; it != endIt; ++it)
		{
			GpuProgramPtr gpuPrg = it->second;
			HighLevelGpuProgramManager::getSingleton().unload(gpuPrg->getName());
			HighLevelGpuProgramManager::getSingleton().remove(gpuPrg->getName());
			gpuPrg.setNull();
		}
		mShaderCache.clear();
	}