今天想用Ogre的Overlay显示些信息。找了官网的说明,也在网上找了些帖子,这个帖子还是非常不错的
http://blog.csdn.net/pizi0475/article/details/5451304
却发现Overlay无论如何不显示,折腾了一晚上,就是找不出为什么错了。
于是,向万能的google请教,原来是ResourceManager.initializeAllResources()必须在所有资源确定最后调用。
简单讲就是如下代码。
mOverlaySystem = OGRE_NEW OverlaySystem();
m_ogreSceneMgr->addRenderQueueListener(mOverlaySystem);
// 这句必须在所有资源给定后再调用,在此后添加的资源并不会添加。
Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
修改后,一切正常。