The tutorial says I need to add the ST_DOT_SCENE enum, and initialize it in the constructor:
Code: Select all
enum SceneType
{
ST_GENERIC,
ST_EXTERIOR_CLOSE,
ST_EXTERIOR_FAR,
ST_EXTERIOR_REAL_FAR,
ST_INTERIOR,
ST_DOT_SCENE
};
SceneManagerEnumerator::SceneManagerEnumerator()
{
// Create default manager
mDefaultManager = new SceneManager();
// All scene types defaulted to begin with (plugins may alter this)
setSceneManager(ST_GENERIC, mDefaultManager);
setSceneManager(ST_EXTERIOR_REAL_FAR, mDefaultManager);
setSceneManager(ST_EXTERIOR_FAR, mDefaultManager);
setSceneManager(ST_EXTERIOR_CLOSE, mDefaultManager);
setSceneManager(ST_INTERIOR, mDefaultManager);
setSceneManager(ST_DOT_SCENE, mDefaultManager);
}
Code: Select all
DotSceneManagerDLL.cpp
extern "C" void dllStartPlugin( void )
{
// Create new scene manager
DotScenePlugin = new DotSceneManager();
DotSceneResourceManager = new SceneResourceManager();
// Register
Root::getSingleton().setSceneManager( ST_GENERIC, DotScenePlugin );
}
Demo_DotScene.h:
void chooseSceneManager(void)
{
mDotSceneMgr = static_cast <DotSceneManager *> ( mRoot->getSceneManager(ST_GENERIC) );
mSceneMgr = mDotSceneMgr;
}
Code: Select all
mDotSceneMgr = static_cast <DotSceneManager *> ( mRoot->getSceneManager(ST_DOT_SCENE) );
Which way is up?
Thanks,
Knox
