![]() |
VR-Forces Developer's Guide
|
The effect manager provides a way of creating and sharing effects.
Public Member Functions | |
| DtEffectManager (const std::string &dataPath) | |
| ~DtEffectManager () | |
| void | releaseResources () |
| void | reloadShaders () |
| DtEffect * | createEffect (const std::string &effectName, const std::string &defines, DtEffectCreator::CreateParameters *params=0) const |
| DtEffect * | findSharedEffect (const std::string &effectName, const std::string &defines, DtEffectCreator::CreateParameters *params=0) |
| void | registerEffectCreator (const std::string &effectName, DtEffectCreator *creator) |
Protected Types | |
| typedef std::unordered_map < std::string, DtEffectCreator * > | CreatorMap |
| typedef std::unordered_map < std::string, DtEffect * > | EffectMap |
Protected Attributes | |
| CreatorMap | myEffectCreators |
| EffectMap | mySharedEffects |
| std::string | myDataPath |
|
protected |
|
protected |
| makVrv::DtEffectManager::DtEffectManager | ( | const std::string & | dataPath | ) |
CTOR.
| makVrv::DtEffectManager::~DtEffectManager | ( | ) |
DTOR.
| void makVrv::DtEffectManager::releaseResources | ( | ) |
Release all resources.
| void makVrv::DtEffectManager::reloadShaders | ( | ) |
Handles reloading shaders. Calls reload shaders for all shared effects.
| DtEffect* makVrv::DtEffectManager::createEffect | ( | const std::string & | effectName, |
| const std::string & | defines, | ||
| DtEffectCreator::CreateParameters * | params = 0 |
||
| ) | const |
Attempts to create a new effect using the given effect name. The effect object is not shared, and must be deallocated by the owner.
| DtEffect* makVrv::DtEffectManager::findSharedEffect | ( | const std::string & | effectName, |
| const std::string & | defines, | ||
| DtEffectCreator::CreateParameters * | params = 0 |
||
| ) |
Attempts to find a shared effect, if the shared effect is not yet created, it will attempt to create the effect. The returned effect is shared and should not be deallocated.
| void makVrv::DtEffectManager::registerEffectCreator | ( | const std::string & | effectName, |
| DtEffectCreator * | creator | ||
| ) |
Register an effect creator. If an effect creator was previously registered with the same name, it is first deleted.
|
protected |
|
protected |
|
protected |