CaseyB
13-02-2006 17:21:16
I tried to build and run the demo and I ran into path issues where it was looking for a terrain/TsmTerrain directory that didn't exist. I found that this was poited to in the TsmTerrain.cfg file, so I took that out. Now I am getting this error:
So my questions are, was it wrong to have changed the cfg file? And what could be causeing this error?
tuan kuranes
13-02-2006 17:28:13
no good guess with the config file.
Just a bug, I left an assert that I use for special case debugging.
I removed it and am uploading new version.
tuan kuranes
13-02-2006 17:32:04
could do explain more the "terrain/TsmTerrain" ?
is it mapsplitter that raise the error or once map splitted, the Demo doesn't find the newly created folder ?
CaseyB
13-02-2006 17:48:53
When I tried to run it at first it crashed saying that it couldn't open ../../../../Samples/Media/paginglandscape2/terrains/TsmTerrain. So I looked in the config file and it said FileSystem=../../../../Samples/Media/paginglandscape2/terrains/TsmTerrain, so I changed it to FileSystem=../../../../Samples/Media/paginglandscape2/terrains and then I got the error I posted the picture of.
CaseyB
13-02-2006 18:30:21
Ok, I was able to recreate the initial issue by reverting the config file I changed. The initial issue I had was that the demo would crash and this was in the ogre.log file:
-----------------------------------
Details:
-----------------------------------
Error #: 8
Function: FileSystemArchive::changeDirectory
Description: Cannot open requested directory ../../../../Samples/Media/paginglandscape2/terrains/TsmTerrain.
File: ..\src\OgreFileSystem.cpp
Line: 141
CaseyB
13-02-2006 23:06:59
So I modified the cfg file like I said above and it runs, but it crashes after a seemingly random amount of time. I stepped through the code and this is where it dies. It's in OgrePagingLandscapeRenderableManager.cpp
//-----------------------------------------------------------------------
void PagingLandScapeRenderableManager::unqueueRenderable (PagingLandScapeTile *tile)
{
mTilesLoadRenderableQueue.remove (tile);
assert (tile->getRenderable ());
tile->getRenderable ()->mQueued = false;
}
//-----------------------------------------------------------------------
Any ideas as to what the problem may be?
davesh
13-02-2006 23:57:34
Good find Casey.
Glad you were able to find the place where the assertion is occuring.
What happens if you call
assert (tile->getRenderable ());
prior to the call to
mTilesLoadRenderableQueue.remove (tile);
Perhaps the call to remove is nulling out some key field...
Guys who can shed some light into what this means?
DrPain
14-02-2006 00:38:50
davesh
14-02-2006 00:52:39
Good thought....
Any suggestions on how to answer this question? Did you ever figure out the source of the problems you were having?
DrPain
14-02-2006 03:21:01
No, I have not yet figured it out.
I've done all I can to prove to myself that it's not my code.
I even rolled back my code to two weeks ago, which I know was working, and that code now crashes.
tuan kuranes
14-02-2006 07:44:27
Any ideas as to what the problem may be
Those 2 lines should be commented now (assert and tile->get) ?
is that from yesterday zip ?
It's debugging code of my own to trace where I do loose trace of some renderable, making me have to loop over pool to find those.
tuan kuranes
14-02-2006 13:43:42
@CaseyB :
cannot reproduce the cfg file bug :
is that Binary SDK, Source SDK or CVS ?
What's the name of the config file that causes troubles ?
CaseyB
14-02-2006 15:59:47
It's from CVS, I got it Friday. The file that gave me trouble was TsmTerrain.cfg in c:\ogrenew\samples\media\paginglandscape2\terrains. I'll try commenting those lines out and see how it goes.
CaseyB
14-02-2006 16:14:28
I commented out those lines and it works now! Thank you guys!