Why SkinSet file updates on start application?

magistr

05-01-2008 20:05:20

Why QuickGUI SkinSet.gameplay.png file updates on start application?
I saw this as follows: SkinSet.gameplay.png manually edit this file and launched the application. After running, file SkinSet.gameplay.png rebuilded, and it does not have my changes.

For initialize QuickGUI I am use next code:

ResourceGroupManager *rsm = ResourceGroupManager::getSingletonPtr();
StringVector groups = rsm->getResourceGroups();
String mResourceGroup = "quickgui";
if (std::find(groups.begin(), groups.end(), mResourceGroup) == groups.end())
{
rsm->createResourceGroup(mResourceGroup);
}
QuickGUI::SkinSetManager::getSingleton().loadSkin("qgui",QuickGUI::SkinSet::IMAGE_TYPE_PNG,mResourceGroup);
mGUIManager = QuickGUI::Root::getSingleton().createGUIManager(mCamera->getViewport());
mGUIManager->setSceneManager(mSceneMgr);


How to initialize QuickGUI skinset without update skinset file.

kungfoomasta

05-01-2008 21:32:56

delete the .skinset file and the .png file, and re-run the application, both will be updated.

magistr

05-01-2008 21:46:18

I am delete this files and run application.
All files was rebuilded.
After I am run application. And files rebuilded also.
I want to buil fils once, and after only load old files (without rebuilding).
But quick gui rebuild this files for each run!

magistr

14-01-2008 21:05:58

You are review this problem?

kungfoomasta

14-01-2008 21:33:07

Whenever I debug this problem, which has been brought up before, I find that my files are not being rebuilt every time I run the application. It would be incredibly easy for you to step through the code and tell me why the files are being rebuilt.

Here is the SkinSet constructor:


// if skinset doesn't exists
BREAKPOINT---> if (loadSkin() == false)
{
// assemble texture in a single one
buildTexture();
}

if(!Ogre::MaterialManager::getSingleton().resourceExists(mMaterialName))
buildMaterial();


Put in a breakpoint and step through the functions. Why is "loadSkin" returning false?

And if the texture did exist, why do we not get an exception?


if(Ogre::TextureManager::getSingleton().resourceExists(mTextureName))
{
OGRE_EXCEPT(3, "Trying to build SkinSet Texture when it already exists!", "SkinSet::buildTexture()");
return;
}


I think if you stepped through the code you could easily figure out why the files are being rebuilt.

magistr

15-01-2008 05:37:05

But why texture is compleete rebuilded
And all manual changes is cleared.

magistr

23-01-2008 22:04:29

O! I am reosolve this problem.
I am load texture from quickgui resource group, but my path is writed in General resource group :-)

Big thanks!