h_ryan503
12-08-2007 22:33:53
So I've been working with NxOgre for not to long now, but no matter what I do I can never get anything to display on my screen. I can compile fine, and it runs. The window comes up with my background color and whatever meshes I may have put in. However nothing from the NxOgre ever shows up.
For instance I have yet to get a floor to display.
Here is some of my code that is essecial to getting it to display:
First I set up resources
Then I config them
Then I create my scene
I have been working on this way to many late nights to have no solved it. Not to mention no one else on this forum seems to have this problem.
If you need any other code or have any idea what simple obvious thing I'm missing please save me!
For instance I have yet to get a floor to display.
Here is some of my code that is essecial to getting it to display:
First I set up resources
ConfigFile cf;
cf.load("config.yaml",":",true);
ConfigFile::SectionIterator seci = cf.getSectionIterator();
String secName, typeName, archName;
while (seci.hasMoreElements()) {
secName = seci.peekNextKey();
ConfigFile::SettingsMultiMap *csettings = seci.getNext();
ConfigFile::SettingsMultiMap::iterator i;
for (i = csettings->begin(); i != csettings->end(); ++i) {
Ogre::String k = i->first;
Ogre::String v = i->second;
Ogre::StringUtil::toLowerCase(k);
Ogre::StringUtil::toUpperCase(v);
}
}
Then I config them
ConfigFile cf;
cf.load("media/resources.cfg");
ConfigFile::SectionIterator seci = cf.getSectionIterator();
String secName, typeName, archName;
while (seci.hasMoreElements()) {
secName = seci.peekNextKey();
ConfigFile::SettingsMultiMap *settings = seci.getNext();
ConfigFile::SettingsMultiMap::iterator i;
for (i = settings->begin(); i != settings->end(); ++i) {
typeName = i->first;
archName = i->second;
ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName);
}
}
mRoot->loadPlugin("RenderSystem_GL_d");
mRoot->loadPlugin("Plugin_ParticleFX_d");
mRoot->loadPlugin("Plugin_OctreeSceneManager_d");
mRoot->loadPlugin("Plugin_CgProgramManager_d");
Ogre::RenderSystem* mRenderSystem;
Ogre::RenderSystemList *pRenderSystemList;
pRenderSystemList = mRoot->getAvailableRenderers();
Ogre::RenderSystemList::iterator pRenderSystem;
pRenderSystem = pRenderSystemList->begin();
Ogre::RenderSystem *pSelectedRenderSystem;
pSelectedRenderSystem = *pRenderSystem;
while (pRenderSystem != pRenderSystemList->end()) {
if ((*pRenderSystem)->getName() == "OpenGL Rendering Subsystem") {
mRenderSystem = *pRenderSystem;
break;
}
pRenderSystem++;
}
mRoot->setRenderSystem(mRenderSystem);
mWindow = mRoot->initialise(true);
Then I create my scene
// Set ambient light
mSceneMgr->setAmbientLight(ColourValue(0.5, 0.5, 0.5));
// Create a light
//Light* l = mSceneMgr->createLight("MainLight");
//l->setPosition(20,80,50);
Ogre::RenderSystem* mRenderSystem;
Ogre::RenderSystemList *pRenderSystemList;
pRenderSystemList = getRoot()->getAvailableRenderers();
Ogre::RenderSystemList::iterator pRenderSystem;
pRenderSystem = pRenderSystemList->begin();
Ogre::RenderSystem *pSelectedRenderSystem;
pSelectedRenderSystem = *pRenderSystem;
while (pRenderSystem != pRenderSystemList->end()) {
if ((*pRenderSystem)->getName() == "OpenGL Rendering Subsystem") {
mRenderSystem = *pRenderSystem;
break;
}
pRenderSystem++;
}
getRoot()->setRenderSystem(mRenderSystem);
mWorld = new World();
mScene = mWorld->createScene("Main",mSceneMgr,"gravity: yes, floor: yes");
I have been working on this way to many late nights to have no solved it. Not to mention no one else on this forum seems to have this problem.
If you need any other code or have any idea what simple obvious thing I'm missing please save me!