OGRE手動載入模型與材質
來源:互聯網
上載者:User
// [8/12/2010 Administrator]<br />// 動態解析 材質指令碼<br />//addMaterial();<br />{<br />Ogre::FileInfoListPtr fileInfoList =<br />Ogre::ResourceGroupManager::getSingleton().findResourceFileInfo(<br />"General", "*.material");</p><p>for (Ogre::FileInfoList::const_iterator it = fileInfoList->begin(); it != fileInfoList->end(); ++it)<br />{<br />const WX::String& name = it->filename;<br />const WX::String& basename = it->basename;<br />WX::String s = it->archive->getType();<br />WX::String sPath = it->archive->getName();<br />if (s == "FileSystem")<br />{<br />WX::String sNewPath = sPath + "/" + it->path;<br />Ogre::ResourceGroupManager::getSingleton().addResourceLocation(sNewPath, "FileSystem", "General");<br />//Ogre::ResourcePtr pSrc = Ogre::MaterialManager::getSingleton().load(basename, "General");<br />Ogre::DataStreamPtr pData = Ogre::ResourceGroupManager::getSingleton().openResource(basename, "General");<br />Ogre::MaterialManager::getSingleton().parseScript(pData, "General");<br />//MaterialSerializer::parseScript(, "General");<br />}<br />//wxTreeItemId item = AddLeaf(root, AS_STRING(name));<br />//mModelList->SetItemData(item, new ModelItemData(name, AS_STRING(typeName), AS_STRING(parameterName)));<br />}<br />}