New wiki article: Advanced Ogre Framework

A place for users of OGRE to discuss ideas and experiences of utilitising OGRE in their games / demos / applications.
VEGETA_DTX
Gnoblar
Posts: 11
Joined: Sat Oct 03, 2009 11:37 am

Re: New wiki article: Advanced Ogre Framework

Post by VEGETA_DTX »

Hey people I wanted to give some feedback on AOF and also ask one question ;)

First I want to say that AOF is PHENOMENAL! I cannot believe how much I've learned from just editing and experimenting around with AOF in just a few hours per few days!
The big picture about the way Ogre(and the game cycle in general) works is getting clearer and clearer(although still unclear, I'm just a newbie) thanks to this framework! I REALLY feel like that boy from AOF introduction and I really see AOF as some Ogre who saved me and helped me sooo much :) (although I also don't want to kiss the Ogre! especially not the male one! :D)

I cannot believe that I, who am not too skilled with C++(I mean I understand it fully but I very often forget some basic and important rules and VERY OFTEN revisit C++ tutorials) and as someone who is THE ABSOLUTE newbie to the game engine architecture, already made my own 3rd person camera fully functioning in real time(sure still not the perfect one, but at least I get the basic idea behind it).
Therefore if a loser like me can advance very fast thanks to this framework then spacegaier and the whole Ogre community seriously deserve a medal!

Now I want to ask one question. Is the AppState.cpp intentionally missing because it is assumed to be done by the user?
And looking at the AppState.hpp I can conclude that that's the place where my animation calls should be placed?
If so, is there a specific reason why there is no example for that as well, since that would indeed explain many more things, mainly the animation.
I apology if this sounded ungrateful, it was in no way my intention, I just asked because perhaps there is a special reason for it? maybe making the example listener of some certain kind is automatically limiting or closing the options of using that listener for some OTHER kind of engine, so its simply left in the hands of user to design his own desired kind of AppState?(if you understand what I mean), or am I just simply talking nonsense :P

Thanks for reading!
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

First of all: Thanks for the nice feedback :) .

Concerning the AppState thing: There is no CPP file for that class since this class is only meant as an unimplemented base class for all the needed states classes of your application. And as there is nothing to implement here (just defining how all states will look like, e.g. they all have to have an enter(), pause() and resume() method), we do not need a CPP file.
So, you are never expected to work with the AppState class directly. In fact, you have to derive your own state classes from the AppState class, as shown with the MenuState and the GameState classes. These classes then actually implement (= fill the functions with content) the behaviour you need (e.g. your animation stuff).

Hope that I was able to make it clear. If not, just ask again.
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
VEGETA_DTX
Gnoblar
Posts: 11
Joined: Sat Oct 03, 2009 11:37 am

Re: New wiki article: Advanced Ogre Framework

Post by VEGETA_DTX »

Sure that absolutely made sense :) thanks a lot! That is actually even much easier than I thought...at least in some way :)
So its probably me and my ignorance that can't successfully do any animation inside AOF so far :) but hey I've never been more eager to go and experiment further so I guess its just a matter of practice and knowledge about the animation in Ogre.

Maybe you could tell me right away whats wrong with my animation:
if(OgreFramework::getSingletonPtr()->m_pKeyboard->isKeyDown(OIS::KC_W))
{
m_TranslateVector.z = m_MoveScale;

mAnimationState = m_pMilojkoEntity->getAnimationState("clip1");
mAnimationState->setLoop(true);
mAnimationState->setEnabled(true);
}
(covers himself in shame of his eventual ignorance :P?)
Is that making sense at all? :) it compiles nicely and it runs and all but when I press or hold W no animation is shown at all, yet in the "CEGUI mesh viewer" that I've recently downloaded, animation is shown and working perfectly well?

Sorry for storm of questions I hope it didn't annoy you.
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

VEGETA_DTX wrote:Sorry for storm of questions I hope it didn't annoy you.
No, that's what I am here for ;) .

First a general thing: Where did you put this code snippet? If you have put it in s keyPressed() method then it will be only excuted once if the key is hit. If you put it in a getInput() method then it will be excuted as long as the key is pressed down. Just to make that clear...

Animation: I haven't used animations a lot in Ogre so far, but I think you actually have to forward the animation. With the lines you posted, you only tell the animation that it should be played in a loop and is enabled now. But you also have to call the method

Code: Select all

mAnimationState->addTime(timeSinceLastFrame / 1000);
in every frame in order to make it run. So, put this line e.g. in the update() method of your state and everything should be fine (at least I hope :) ).
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
VEGETA_DTX
Gnoblar
Posts: 11
Joined: Sat Oct 03, 2009 11:37 am

Re: New wiki article: Advanced Ogre Framework

Post by VEGETA_DTX »

Thanks very much yes, that snippet is inside getInput where it was by a default I just added those 3 lines for animation.
However when I added that line "mAnimationState->addTime(timeSinceLastFrame / 1000);" that you've told me, in the GameState::update() I compile and run but then it pops that yet again unavoidable error - "AdvancedOgreFramework has encountered a problem and needs to close"...

But that got to be something with my model then...what confuses me is that its working fine inside that mesh viewer.
But its fine, at least now I understand how to do it so I guess I just have to experiment with other models, especially with the ones included with Ogre since they are the safest I guess. I will also revisit the Ogre Animation tutorial on wiki and see if I missed something.

Thanks a lot!
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

Have a look at the Ogre.log. The problem causing the error should be listed there.

And I would put this animation enabling lines / setting loop in the keyPressed() method as you only want them to be executed once per key press (press the key = enable the animation).
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
VEGETA_DTX
Gnoblar
Posts: 11
Joined: Sat Oct 03, 2009 11:37 am

Re: New wiki article: Advanced Ogre Framework

Post by VEGETA_DTX »

Oh sorry I didn't even know about OgreLog, I think I yet have lot to learn.

These are the last several lines in the log:
17:26:10: Demo initialized!
17:26:10: Entering MenuState...
17:26:10: Pausing MenuState...
17:26:10: Entering GameState...
17:26:10: Texture: clouds.jpg: Loading 1 faces(PF_R8G8B8,256x256x1) with hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
17:26:10: [DotSceneLoader] Parsing dotScene file with version 1.0.0
17:26:10: Mesh: Loading Cube01.mesh.
17:26:10: Mesh: Loading Cube03.mesh.
17:26:10: Mesh: Loading Cube02.mesh.
17:26:10: Mesh: Loading OgreExporter2.mesh.
17:26:10: Texture: 538089.jpg: Loading 1 faces(PF_R8G8B8,700x323x1) with 5 generated mipmaps from Image. Internal format is PF_X8R8G8B8,700x323x1.
UPDATE:
I DID IT YAHOO!!! :) I just placed "mAnimationState = m_pOgreHeadEntity->getAnimationState("clip1");" statement into GameState::update function as well.
Although animation is incredibly fast, it ends the same second it starts, so I simply devided timeSinceLastFrame with 1000 and it works perfectly well - "mAnimationState->addTime(timeSinceLastFrame/1000);" now its all just a matter of experimenting and practice to set it all in a proper way, although it already works almost the way I want. Thanks a lot spacegaier!!!!!!!!
ShadeOgre
Gremlin
Posts: 158
Joined: Mon Mar 10, 2008 10:55 pm
Location: Budapest, Hungary
x 1

Re: New wiki article: Advanced Ogre Framework

Post by ShadeOgre »

Where can this framework help the "Manual material manipulation"?
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

The usage is shown in the function createScene() in the GameState class.
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
dave2041
Halfling
Posts: 71
Joined: Fri Apr 24, 2009 12:55 pm

Re: New wiki article: Advanced Ogre Framework

Post by dave2041 »

Zephon wrote:
spacegaier wrote: For easier switching between the states (SceneManager does not have to be refilled on every change). Why should I make a camera class for this?
OK i see. My thought was that the the control/movement code for the camera could be put together in a single class instead of spreading it out on several states. I guess this is more a matter of convenience. And with states having their own scene managers i think this could mess up the start up sequence of states. Might not be worth the trouble.
Doesn't it depend on the individual? for example i am using a third person camera, so i created a class to handle the camera positioning updates and control the camera that way, but others might only need the basic functionality that is provided. That's why this is a framework and not a game/application that serves any one specific purpose.
Hegpetz
Gnoblar
Posts: 3
Joined: Wed Jan 21, 2009 5:54 pm
Location: Tempe, AZ

Re: New wiki article: Advanced Ogre Framework

Post by Hegpetz »

After getting your framework going, I realized that if you by chance hit Cancel on the Ogre Rendering engine selection box, then it still runs the game anyway.

To fix this DemoApp's destructor now is

Code: Select all

DemoApp::~DemoApp()
{
	delete OgreFramework::getSingletonPtr();
	if ( m_pAppStateManager != NULL )
		delete m_pAppStateManager;
}
Inside OgreFramework::initOgre(...) make it now

Code: Select all

	if (!m_pRoot->showConfigDialog())
		return 0;
Simply just looking for the return value now. As well the return type must be changed to int (and in .hpp). Add the appropriate return 1; to the end of initOgre so when we check for it it'll be defined between the two.

Inside DemoApp::startDemo():

Code: Select all

	m_pAppStateManager = NULL;

	if (!OgreFramework::getSingletonPtr()->initOgre("AdvancedOgreFramework", 0, 0))
		return;
Must be set to NULL so you don't obliterate memory, and we need to see what we got back from dialog so we can cancel.

Now you should be able to cleanly cancel. Sorry I'm in a rush so messy code/example but you should be able to piece the pieces together. =)

P.S. Thanks for providing this, sure it will be helpful to many!
Wolfe813
Gnoblar
Posts: 1
Joined: Mon Nov 09, 2009 5:55 am

Re: New wiki article: Advanced Ogre Framework

Post by Wolfe813 »

I'd just like to make sure, as I've not found any licensing files in the source package for this... This is public domain, like the basic OGRE application framework, correct? I'm sure by the time I'm done with it, I'll have butchered it into a totally different creature, but I'd rather not violate the license, if there is one.
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

Yes, free for anything. Proceed with it, as you wish: Alter it and republish, delete it from your hard drive, enter funny words in the files, just as you feel up to ;) .
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
x 9

Re: New wiki article: Advanced Ogre Framework

Post by Ident »

Hegpetz wrote:After getting your framework going, I realized that if you by chance hit Cancel on the Ogre Rendering engine selection box, then it still runs the game anyway.

To fix this DemoApp's destructor now is

[...]
*SNIP*
made the adjustments in my modified framework - works like a charm. A Very lots of thanks!

@ spacegaier - The latest Ogre version .. oh wait why am i telling you this, i already saw you edited my wiki article on building ogre with cegui :D whatever- when i said earlier some time, that your framework works with the Ogre 1.7 unstable trunk from SVN, this was still true, but since they have cut the ceguiogrerenderer build out of the the SVN, so you gotta build it yourself, thus it's not really compatible anymore, unless you follow that tutorial there ;)

Just wanted to mention that, but while writing I noticed you would have to know this already anyways, and I think there was also a post in this thread about this, whatever, now this is for reader's information :)

Btw., i work with the latest stable CEGUI version (or even the one from the SVN trunk, can't remember, there was so much confusion in the last weeks of building Ogre and CEGUI) together with Ogre, and i had to make some adjustments for the AOF, but only small ones after all. Still you have to know what you do, or you will be troubled like us for some hours and have to dig yourself through docus and error messages. So to tell - it can be a pain to upgrade, but it's definitely possible. Works fine here so far, of course with the old CEGUI and the Ogre 1.7 it worked without any adjustments to make, and I think it might still very well work that way.

JFYI,

Ident
Pie21
Gnoblar
Posts: 13
Joined: Wed Nov 11, 2009 8:07 am

Re: New wiki article: Advanced Ogre Framework

Post by Pie21 »

Okay so I've got a bunch of crazy problems in all different areas.

When I run the pre-compiled AOF .exe it starts up and runs nicely.

When I copied all the code off the wiki into my own created files, I eventually got it to link and compile properly, and then I choose my OGRE settings, and then it crashes, one of them C++ segfaults, trying to write to 0xcccccccc. Seems it was trying to call the destructor on the AppStateManager before it had even been created... However this could be my fault; when I first tried compiling, the protected AppState destructor was apparently unavailable to the AppStateManager, so I made said destructor public. This made it compile, but I imagine it's also what's causing the problem.

EDIT: I checked the files in the downloaded package against the code I copied from the wiki, and they're different - AppState has a destroy() method instead of a virtual destructor, so that would probably help. I copied a couple of files across, but it still crash when trying to delete something. I guess I'll just copy them all across in the meantime but...

More oddly (to me, you guys probably know why), when I open the downloaded solution and compile it works happily, but when I get to the OGRE setting dialog, I can't choose any render subsystems - the list is empty. Checking out Ogre.log, it seems to find and install and initialise the D3D9 and OpenGL plugins successfully, and then at the end of the log it uninstalls and destroys them, but they never show up in the dialog box. Any ideas on why this would mess up?

EDIT: Okay just running the EXE directly works fine, but running through Visual Studio means there's no rendering subsystems available. So... I guess it's working to an extent. It's 1am so I'm too tired to investigate further for now :) Awesome job though. And I noticed it crashes if you try and jump back to the menu state more than once? Someone's probably mentioned that but it's too late.
Last edited by Pie21 on Wed Nov 11, 2009 3:01 pm, edited 1 time in total.
Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
x 9

Re: New wiki article: Advanced Ogre Framework

Post by Ident »

Pie21 wrote:Okay so I've got a bunch of crazy problems in all different areas.
More oddly (to me, you guys probably know why), when I open the downloaded solution and compile it works happily, but when I get to the OGRE setting dialog, I can't choose any render subsystems - the list is empty. Checking out Ogre.log, it seems to find and install and initialise the D3D9 and OpenGL plugins successfully, and then at the end of the log it uninstalls and destroys them, but they never show up in the dialog box. Any ideas on why this would mess up?
Typically this is the case when you don't configure your working directory. Or you don't have a config file, then you just have to click into the box and make your settings and it will create you one.


About the other problems: I can't help you with that, just compare the code and look in your debugger why it exactly it crashes and where...
Pie21
Gnoblar
Posts: 13
Joined: Wed Nov 11, 2009 8:07 am

Re: New wiki article: Advanced Ogre Framework

Post by Pie21 »

Ident wrote:Typically this is the case when you don't configure your working directory. Or you don't have a config file, then you just have to click into the box and make your settings and it will create you one.
Bingo! I was trying to change the project properties as little as possible, but a working directory is a good idea ;) Running it through the EXE made everything work happily, so that would be a hint.

Thanks all! I always get stuck on this like this. I can usually nut out coding bugs, but you just have to learn this stuff. Now I've gotta get some rest so I can dig into the actual code tomorrow!
Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
x 9

Re: New wiki article: Advanced Ogre Framework

Post by Ident »

happy to have helped :D i don't know why this part of the project settings is sometimes missing or not copied,. we often encounter this problem, but now its symptoms it's usually easily solved :) so i also knew what would help you
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4308
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 137

Re: New wiki article: Advanced Ogre Framework

Post by spacegaier »

I've set a working directory in the solution here on my PC, but apparently it isn't saved in the .SLN file, but I guess in this user file for the solution.

@Pie21:Did I corretly understand: The code in the wiki is not the same as in the downloadeable version? If so, I'll have to reupload it...

@Ident: Could you list the adjustments you made to get it running with the new CEGUI? As you said, it canbe tricky to modify things for new versions, so you could prevent others from that :) .
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
x 9

Re: New wiki article: Advanced Ogre Framework

Post by Ident »

spacegaier wrote:I've set a working directory in the solution here on my PC, but apparently it isn't saved in the .SLN file, but I guess in this user file for the solution.
That will probably be it. Still weird they made it like this only with this path...
spacegaier wrote: @Ident: Could you list the adjustments you made to get it running with the new CEGUI? As you said, it canbe tricky to modify things for new versions, so you could prevent others from that :) .
Difficult to recreate, we ran into a lot of trouble that kept as stuck for quite some time.

I'll give you code examples from my project, i guess things will be missing, hopefully someone will try the following changes out to check if changes are complete...


First: OgreFramwork.h

Code: Select all

	CEGUI::OgreRenderer*		m_pGUIRenderer;
	CEGUI::System*				m_pGUISystem;
2 Pointers we need.

I don't know if the original OFM uses pointers or references or instances for this, however if it aren't pointers you will have to search and replace "m_pGUIRenderer." with "m_pGUIRenderer->" and do the same with the System.

Now we create something for them to point at like this: (OgreFramework.cpp in initOgre(...))

Code: Select all

	//Init CEGUI::OgreRenderer, CEGUI::OgreResourceProvider and CEGUI::System
	CEGUI::OgreRenderer& r_GUIRenderer = CEGUI::OgreRenderer::create();
	CEGUI::OgreResourceProvider& r_ogreResourceProvider = CEGUI::OgreRenderer::createOgreResourceProvider();
	CEGUI::System& r_GUISystem = CEGUI::System::create(r_GUIRenderer, &r_ogreResourceProvider);

	m_pGUIRenderer = &r_GUIRenderer;
	m_pGUISystem = &r_GUISystem;
This creates our Renderer, and also adjusts the Resourceprovider to be working with Ogre. The imagecodec is default.
Then we create our System with the Renderer we just created.

The latter two lines btw give me a bad feeling in my stomach, but it seems to work, i don't know why. From my understanding the references' memory would be given free after the end of the function, when the } closes , but seemingly that's not the case. No wait, it's just a reference, not a.. ! Okay forget what i just said :D

However back to the topic: You've to call those lines AFTER creating the Ogre root, that is mandatory.

in the rest of this function there should be no other CEGUI related method calls except

Code: Select all

	CEGUI::SchemeManager::getSingleton().create("TaharezLookSkin.scheme"); 
	CEGUI::WindowManager::getSingleton().loadWindowLayout("AdvancedOgreFramework.layout"); 
Look for methods which according to your development environment do not exist, most probably you can delete the whole line in that case...

Err yea, I guess that's it. If someone wants to try this out, i ll be here to help.
savuporo
Gnoblar
Posts: 11
Joined: Wed Nov 11, 2009 9:08 pm

Re: New wiki article: Advanced Ogre Framework

Post by savuporo »

I was setting up this under Linux, found a couple little snags here and there.
deleting the input objects and then destroying the inputsystem would lead to a crash in OIS ( because when the factory shuts down it tries to loop through and access the already deleted objects) , this worked better:

Code: Select all

OgreFramework::~OgreFramework()
{
	if(m_pInputMgr)
	{
		m_pInputMgr->destroyInputObject(m_pKeyboard);
		m_pInputMgr->destroyInputObject(m_pMouse);
		OIS::InputManager::destroyInputSystem(m_pInputMgr);
	}

	delete m_pRoot;
}
Also i really had to force OGRE_THREAD_SUPPORT=0 across the project to avoid threading related asserts, couldnt figure out why exactly.
savuporo
Gnoblar
Posts: 11
Joined: Wed Nov 11, 2009 9:08 pm

Re: New wiki article: Advanced Ogre Framework

Post by savuporo »

Oh, now i remember, two other mods that i made:

Code: Select all

DemoApp::DemoApp() : m_pAppStateManager(NULL)
{
...
}
DemoApp::~DemoApp()
{
       ....
	if ( m_pAppStateManager)
		delete m_pAppStateManager;
}
Otherwise you'd get a crash if initalizing ogre failed for some reason, and the exception handler in main.cpp wont be able to catch the exception thrown because ~DemoApp destructor is called before entering catch handler.
dave2041
Halfling
Posts: 71
Joined: Fri Apr 24, 2009 12:55 pm

Re: New wiki article: Advanced Ogre Framework

Post by dave2041 »

jonnys wrote:
dave2041 wrote:i'm confused. when you enter the gamestate isn't the menu state paused?

and by that logic if you then push on the pausestate from the game state shouldn't the gamestate be paused? untill you pop the pausestate. Thats how i thought it would work ~
Im confused too.. I agree with what you are saying but unfortunately that is not what is happening when I run my app.

This will point out to you what is happening in my program:

Code: Select all

15:17:12: Creating resource group General
15:17:12: Creating resource group Internal
15:17:12: Creating resource group Autodetect
15:17:12: SceneManagerFactory for type 'DefaultSceneManager' registered.
15:17:12: Registering ResourceManager for type Material
15:17:12: Registering ResourceManager for type Mesh
15:17:12: Registering ResourceManager for type Skeleton
15:17:12: MovableObjectFactory for type 'ParticleSystem' registered.
15:17:12: OverlayElementFactory for type Panel registered.
15:17:12: OverlayElementFactory for type BorderPanel registered.
15:17:12: OverlayElementFactory for type TextArea registered.
15:17:12: Registering ResourceManager for type Font
15:17:12: ArchiveFactory for archive type FileSystem registered.
15:17:12: ArchiveFactory for archive type Zip registered.
15:17:12: FreeImage version: 3.10.0
15:17:12: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
15:17:12: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi,exr,j2k,j2c,jp2
15:17:12: DDS codec registering
15:17:12: Registering ResourceManager for type HighLevelGpuProgram
15:17:12: Registering ResourceManager for type Compositor
15:17:12: MovableObjectFactory for type 'Entity' registered.
15:17:12: MovableObjectFactory for type 'Light' registered.
15:17:12: MovableObjectFactory for type 'BillboardSet' registered.
15:17:12: MovableObjectFactory for type 'ManualObject' registered.
15:17:12: MovableObjectFactory for type 'BillboardChain' registered.
15:17:12: MovableObjectFactory for type 'RibbonTrail' registered.
15:17:12: Loading library .\RenderSystem_Direct3D9_d
15:17:12: Installing plugin: D3D9 RenderSystem
15:17:12: D3D9 : Direct3D9 Rendering Subsystem created.
15:17:12: D3D9: Driver Detection Starts
15:17:12: D3D9: Driver Detection Ends
15:17:12: Plugin successfully installed
15:17:12: Loading library .\RenderSystem_GL_d
15:17:12: Installing plugin: GL RenderSystem
15:17:12: OpenGL Rendering Subsystem created.
15:17:12: Plugin successfully installed
15:17:12: Loading library .\Plugin_OctreeSceneManager_d
15:17:12: Installing plugin: Octree & Terrain Scene Manager
15:17:12: Plugin successfully installed
15:17:12: Loading library .\RenderSystem_Direct3D10_d
15:17:12: Installing plugin: D3D10 RenderSystem
15:17:12: D3D10 : Direct3D10 Rendering Subsystem created.
15:17:41: D3D10: Driver Detection Starts
15:17:41: D3D10: Driver Detection Ends
15:17:41: Plugin successfully installed
15:17:41: Loading library .\Plugin_ParticleFX_d
15:17:41: Installing plugin: ParticleFX
15:17:41: Particle Emitter Type 'Point' registered
15:17:41: Particle Emitter Type 'Box' registered
15:17:41: Particle Emitter Type 'Ellipsoid' registered
15:17:41: Particle Emitter Type 'Cylinder' registered
15:17:41: Particle Emitter Type 'Ring' registered
15:17:41: Particle Emitter Type 'HollowEllipsoid' registered
15:17:41: Particle Affector Type 'LinearForce' registered
15:17:41: Particle Affector Type 'ColourFader' registered
15:17:41: Particle Affector Type 'ColourFader2' registered
15:17:41: Particle Affector Type 'ColourImage' registered
15:17:41: Particle Affector Type 'ColourInterpolator' registered
15:17:41: Particle Affector Type 'Scaler' registered
15:17:41: Particle Affector Type 'Rotator' registered
15:17:41: Particle Affector Type 'DirectionRandomiser' registered
15:17:41: Particle Affector Type 'DeflectorPlane' registered
15:17:41: Plugin successfully installed
15:17:41: Loading library .\Plugin_CgProgramManager_d
15:17:41: Installing plugin: Cg Program Manager
15:17:42: Plugin successfully installed
15:17:42: Loading library .\Caelum_d
15:17:42: Installing plugin: Caelum
15:17:42: Caelum plugin version 0.5.0 installed
15:17:42: Registering ResourceManager for type PropertyScript
15:17:42: Plugin successfully installed
15:17:42: *-*-* OGRE Initialising
15:17:42: *-*-* Version 1.7.0dev-unstable (Cthugha)
15:17:42: D3D10 : RenderSystem Option: Allow NVPerfHUD = No
15:17:42: D3D10 : RenderSystem Option: Driver type = Hardware
15:17:42: D3D10 : RenderSystem Option: FSAA = 0
15:17:42: D3D10 : RenderSystem Option: Floating-point mode = Fastest
15:17:42: D3D10 : RenderSystem Option: Full Screen = No
15:17:42: D3D10 : RenderSystem Option: Information Queue Exceptions Bottom Level = Info (exception on any message)
15:17:42: D3D10 : RenderSystem Option: Rendering Device = Mobile Intel(R) 4 Series Express Chipset Family
15:17:42: D3D10 : RenderSystem Option: VSync = No
15:17:42: D3D10 : RenderSystem Option: VSync Interval = 1
15:17:42: D3D10 : RenderSystem Option: Video Mode = 800 x 600 @ 32-bit colour
15:17:42: D3D10 : RenderSystem Option: sRGB Gamma Conversion = No
15:17:42: D3D9 : RenderSystem Option: Allow NVPerfHUD = No
15:17:42: D3D9 : RenderSystem Option: FSAA = 0
15:17:42: D3D9 : RenderSystem Option: Floating-point mode = Fastest
15:17:42: D3D9 : RenderSystem Option: Full Screen = No
15:17:42: D3D9 : RenderSystem Option: Rendering Device = Monitor-1-Mobile Intel(R) 4 Series Express Chipset Family
15:17:42: D3D9 : RenderSystem Option: Resource Creation Policy = Create on all devices
15:17:42: D3D9 : RenderSystem Option: VSync = No
15:17:42: D3D9 : RenderSystem Option: VSync Interval = 1
15:17:42: D3D9 : RenderSystem Option: Video Mode = 800 x 600 @ 32-bit colour
15:17:42: D3D9 : RenderSystem Option: sRGB Gamma Conversion = No
15:17:45: CPU Identifier & Features
15:17:45: -------------------------
15:17:45:  *   CPU ID: GenuineIntel: Intel(R) Core(TM)2 Duo CPU     T5800  @ 2.00GHz
15:17:45:  *      SSE: yes
15:17:45:  *     SSE2: yes
15:17:45:  *     SSE3: yes
15:17:45:  *      MMX: yes
15:17:45:  *   MMXEXT: yes
15:17:45:  *    3DNOW: no
15:17:45:  * 3DNOWEXT: no
15:17:45:  *     CMOV: yes
15:17:45:  *      TSC: yes
15:17:45:  *      FPU: yes
15:17:45:  *      PRO: yes
15:17:45:  *       HT: no
15:17:45: -------------------------
15:17:45: D3D9 : Subsystem Initialising
15:17:45: Registering ResourceManager for type Texture
15:17:45: Registering ResourceManager for type GpuProgram
15:17:45: D3D9RenderSystem::_createRenderWindow "Advance Ogre Framework", 800x600 windowed  miscParams: FSAA=0 FSAAHint= colourDepth=32 gamma=false monitorIndex=0 useNVPerfHUD=false vsync=false vsyncInterval=1 
15:17:45: D3D9 : Created D3D9 Rendering Window 'Advance Ogre Framework' : 800x600, 32bpp
15:17:45: D3D9 : WARNING - disabling VSync in windowed mode can cause timing issues at lower frame rates, turn VSync on if you observe this problem.
15:17:45: D3D9: Vertex texture format supported - PF_L8
15:17:45: D3D9: Vertex texture format supported - PF_L16
15:17:45: D3D9: Vertex texture format supported - PF_A8
15:17:45: D3D9: Vertex texture format supported - PF_A4L4
15:17:45: D3D9: Vertex texture format supported - PF_BYTE_LA
15:17:45: D3D9: Vertex texture format supported - PF_R5G6B5
15:17:45: D3D9: Vertex texture format supported - PF_B5G6R5
15:17:45: D3D9: Vertex texture format supported - PF_A4R4G4B4
15:17:45: D3D9: Vertex texture format supported - PF_A1R5G5B5
15:17:45: D3D9: Vertex texture format supported - PF_A8R8G8B8
15:17:45: D3D9: Vertex texture format supported - PF_B8G8R8A8
15:17:45: D3D9: Vertex texture format supported - PF_A2R10G10B10
15:17:45: D3D9: Vertex texture format supported - PF_DXT1
15:17:45: D3D9: Vertex texture format supported - PF_DXT2
15:17:45: D3D9: Vertex texture format supported - PF_DXT3
15:17:45: D3D9: Vertex texture format supported - PF_DXT4
15:17:45: D3D9: Vertex texture format supported - PF_DXT5
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT16_RGB
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT16_RGBA
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT32_RGB
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT32_RGBA
15:17:45: D3D9: Vertex texture format supported - PF_X8R8G8B8
15:17:45: D3D9: Vertex texture format supported - PF_R8G8B8A8
15:17:45: D3D9: Vertex texture format supported - PF_DEPTH
15:17:45: D3D9: Vertex texture format supported - PF_SHORT_RGBA
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT16_R
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT32_R
15:17:45: D3D9: Vertex texture format supported - PF_SHORT_GR
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT16_GR
15:17:45: D3D9: Vertex texture format supported - PF_FLOAT32_GR
15:17:45: D3D9: Vertex texture format supported - PF_SHORT_RGB
15:17:45: RenderSystem capabilities
15:17:45: -------------------------
15:17:45: RenderSystem Name: Direct3D9 Rendering Subsystem
15:17:45: GPU Vendor: intel
15:17:45: Device Name: Monitor-1-Mobile Intel(R) 4 Series Express Chipset Family
15:17:45: Driver Version: 8.15.10.1872
15:17:45:  * Fixed function pipeline: yes
15:17:45:  * Hardware generation of mipmaps: yes
15:17:45:  * Texture blending: yes
15:17:45:  * Anisotropic texture filtering: yes
15:17:45:  * Dot product texture operation: yes
15:17:45:  * Cube mapping: yes
15:17:45:  * Hardware stencil buffer: yes
15:17:45:    - Stencil depth: 8
15:17:45:    - Two sided stencil support: yes
15:17:45:    - Wrap stencil values: yes
15:17:45:  * Hardware vertex / index buffers: yes
15:17:45:  * Vertex programs: yes
15:17:45:  * Number of floating-point constants for vertex programs: 256
15:17:45:  * Number of integer constants for vertex programs: 16
15:17:45:  * Number of boolean constants for vertex programs: 16
15:17:45:  * Fragment programs: yes
15:17:45:  * Number of floating-point constants for fragment programs: 224
15:17:45:  * Number of integer constants for fragment programs: 16
15:17:45:  * Number of boolean constants for fragment programs: 16
15:17:45:  * Geometry programs: no
15:17:45:  * Number of floating-point constants for geometry programs: 0
15:17:45:  * Number of integer constants for geometry programs: 0
15:17:45:  * Number of boolean constants for geometry programs: 0
15:17:45:  * Supported Shader Profiles: hlsl ps_1_1 ps_1_2 ps_1_3 ps_1_4 ps_2_0 ps_2_a ps_2_b ps_2_x ps_3_0 vs_1_1 vs_2_0 vs_2_a vs_2_x vs_3_0
15:17:45:  * Texture Compression: yes
15:17:45:    - DXT: yes
15:17:45:    - VTC: no
15:17:45:    - PVRTC: no
15:17:45:  * Scissor Rectangle: yes
15:17:45:  * Hardware Occlusion Query: yes
15:17:45:  * User clip planes: yes
15:17:45:  * VET_UBYTE4 vertex element type: yes
15:17:45:  * Infinite far plane projection: yes
15:17:45:  * Hardware render-to-texture: yes
15:17:45:  * Floating point textures: yes
15:17:45:  * Non-power-of-two textures: yes (limited)
15:17:45:  * Volume textures: yes
15:17:45:  * Multiple Render Targets: 4
15:17:45:    - With different bit depths: yes
15:17:45:  * Point Sprites: yes
15:17:45:  * Extended point parameters: yes
15:17:45:  * Max Point Size: 10
15:17:45:  * Vertex texture fetch: yes
15:17:45:  * Number of world matrices: 0
15:17:45:  * Number of texture units: 8
15:17:45:  * Stencil buffer depth: 8
15:17:45:  * Number of vertex blend matrices: 0
15:17:45:    - Max vertex textures: 4
15:17:45:    - Vertex textures shared: no
15:17:45:  * Render to Vertex Buffer : no
15:17:45:  * DirectX per stage constants: yes
15:17:45: ***************************************
15:17:45: *** D3D9 : Subsystem Initialised OK ***
15:17:45: ***************************************
15:17:45: DefaultWorkQueue('Root') initialising on thread 0068D358.
15:17:45: Particle Renderer Type 'billboard' registered
15:17:45: SceneManagerFactory for type 'OctreeSceneManager' registered.
15:17:45: SceneManagerFactory for type 'TerrainSceneManager' registered.
15:17:45: DefaultWorkQueue('Root')::WorkerFunc - thread 051986A0 starting.
15:17:45: DefaultWorkQueue('Root')::WorkerFunc - thread 051997E8 starting.
15:17:46: Creating resource group Bootstrap
15:17:46: Added resource location '../GameAssets/packs/OgreCore.zip' of type 'Zip' to resource group 'Bootstrap'
15:17:46: Creating resource group Brushes
15:17:46: Added resource location '../GameAssets/Media/brushes' of type 'FileSystem' to resource group 'Brushes'
15:17:46: Creating resource group EditorResources
15:17:46: Added resource location '../GameAssets/Media/EditorResources' of type 'FileSystem' to resource group 'EditorResources'
15:17:46: Added resource location '../GameAssets' of type 'FileSystem' to resource group 'General'
15:17:46: Added resource location '../GameAssets/mygui_media' of type 'FileSystem' to resource group 'General'
15:17:46: Added resource location '../GameAssets/materials/scripts' of type 'FileSystem' to resource group 'General'
15:17:46: Added resource location '../GameAssets/Media/OgreTerrain' of type 'FileSystem' to resource group 'General'
15:17:46: Creating resource group TerrainTextures
15:17:46: Added resource location '../GameAssets/Media/TerrainTextures' of type 'FileSystem' to resource group 'TerrainTextures'
15:17:46: Parsing scripts for resource group Autodetect
15:17:46: Finished parsing scripts for resource group Autodetect
15:17:46: Parsing scripts for resource group Bootstrap
15:17:46: Parsing script OgreCore.material
15:17:46: Parsing script OgreProfiler.material
15:17:46: Parsing script Ogre.fontdef
15:17:46: Parsing script OgreDebugPanel.overlay
15:17:46: Texture: New_Ogre_Border_Center.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
15:17:46: Texture: New_Ogre_Border.png: Loading 1 faces(PF_A8R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x256x1.
15:17:46: Texture: New_Ogre_Border_Break.png: Loading 1 faces(PF_A8R8G8B8,32x32x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,32x32x1.
15:17:46: Texture: BlueHighwayTexture: Loading 1 faces(PF_BYTE_LA,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x512x1.
15:17:46: Texture: ogretext.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
15:17:46: Parsing script OgreLoadingPanel.overlay
15:17:46: Finished parsing scripts for resource group Bootstrap
15:17:46: Parsing scripts for resource group Brushes
15:17:46: Finished parsing scripts for resource group Brushes
15:17:46: Parsing scripts for resource group EditorResources
15:17:46: Parsing script Ogitor.material
15:17:46: Finished parsing scripts for resource group EditorResources
15:17:46: Parsing scripts for resource group General
15:17:46: Parsing script Ogre.material
15:17:46: Parsing script Example.material
15:17:47: Finished parsing scripts for resource group General
15:17:47: Parsing scripts for resource group Internal
15:17:47: Finished parsing scripts for resource group Internal
15:17:47: Parsing scripts for resource group TerrainTextures
15:17:47: Finished parsing scripts for resource group TerrainTextures
15:17:47: --------------Before Timer Reset-------------
15:17:47: --------------After Timer Reset-------------
15:17:47: Texture: 39548928_TrueTypeFont: Loading 1 faces(PF_BYTE_LA,512x256x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x256x1.
15:17:47: Texture: 39618560_TrueTypeFont: Loading 1 faces(PF_BYTE_LA,256x256x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,256x256x1.
15:17:47: Texture: core_micro_font.PNG: Loading 1 faces(PF_A8R8G8B8,512x128x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,512x128x1.
15:17:48: Texture: core.png: Loading 1 faces(PF_A8R8G8B8,1024x256x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,1024x256x1.
15:17:48: --------------After MyGUI -------------
15:17:48: --------------After loading Overlay-------------
15:17:48: Demo initialized!
[b]15:17:48: Entering MenuState...[/b]
15:17:54: Texture: core_pointer.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
[b]15:18:45: Pausing MenuState...[/b]
[b]15:18:57: Entering GameState...[/b]
15:18:57: Creating resource group ProjectResources
15:18:57: Added resource location 'SampleScene/Models' of type 'FileSystem' to resource group 'ProjectResources'
15:18:57: Added resource location 'SampleScene/Materials' of type 'FileSystem' to resource group 'ProjectResources'
15:18:57: Initialising resource group ProjectResources
15:18:57: Parsing scripts for resource group ProjectResources
15:18:57: Parsing script StdQuad_vp.program
15:18:57: Parsing script Barrel.material
15:18:57: Parsing script BlackAndWhite.material
15:18:57: Parsing script Dwarf.material
15:18:57: Parsing script fence4.material
15:18:57: Parsing script hang.bridge.01.material
15:18:57: Parsing script highlander.house.01.material
15:18:58: Parsing script ogre.material
15:18:58: Parsing script rock.05.material
15:18:58: Parsing script rock.07.material
15:18:58: Parsing script skeltorch.material
15:18:58: Parsing script ssao.material
15:18:58: Parsing script tree.05.material
15:18:58: Parsing script tree.07.material
15:18:58: Parsing script tree.09.material
15:18:58: Parsing script BW.compositor
15:18:58: Parsing script ssao.compositor
15:18:58: Finished parsing scripts for resource group ProjectResources
15:18:58: Mesh: Loading scbCamera.mesh.
15:18:58: WARNING: scbCamera.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
15:18:58: Creating resource group TerrainResources
15:18:58: Added resource location 'SampleScene/Terrain' of type 'FileSystem' to resource group 'TerrainResources'
15:18:58: Mesh: Loading scbArrowEx.mesh.
15:18:58: WARNING: scbArrowEx.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
15:18:58: Terrain created; size=513 minBatch=33 maxBatch=65 treeDepth=4 lodLevels=5 leafLods=2
15:19:01: D3D9 : Loading 2D Texture, image name : 'dirt_grayrocky_diffusespecular.dds' with 5 mip map levels
15:19:01: D3D9 : Loading 2D Texture, image name : 'dirt_grayrocky_normalheight.dds' with 5 mip map levels
15:19:01: Texture: jungle_0_diffuse.png: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
15:19:01: Texture: jungle_0_normal.png: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
15:19:01: Texture: city_0_diffuse.png: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
15:19:01: Texture: city_0_normal.png: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
15:19:02: Mesh: Loading scbLight_Direct.mesh.
15:19:02: WARNING: scbLight_Direct.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
15:19:02: Mesh: Loading Ogre.mesh.
15:19:03: Skeleton: Loading Ogre.skeleton
15:19:03: WARNING: Ogre.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
15:19:03: Texture: ogre.tex.jpg: Loading 1 faces(PF_R8G8B8,1024x1024x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,1024x1024x1.
15:19:03: Texture: ogreahead.tex.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
15:19:04: Mesh: Loading highlanderhouse.01.mesh.
15:19:04: WARNING: highlanderhouse.01.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.
15:19:04: Texture: highlander.house.01.jpg: Loading 1 faces(PF_R8G8B8,1024x1024x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,1024x1024x1.
///Hit puase key///
[b]15:22:18: Pausing GameState...[/b]
[b]15:22:54: Entering GameState...[/b]
////That line above should say entering PauseState!!! :x , and so since it is trying to declare the snenemanager again it gives an exception error (below)
15:22:59: OGRE EXCEPTION(4:ItemIdentityException): SceneManager instance called 'GameSceneMgr' already exists in SceneManagerEnumerator::createSceneManager at ..\..\OgreSVNTrunk\OgreMain\src\OgreSceneManagerEnumerator.cpp (line 202)
15:23:31: DefaultWorkQueue('Root') shutting down on thread 0068D358.
15:23:31: DefaultWorkQueue('Root')::WorkerFunc - thread 051997E8 stopped.
15:23:31: DefaultWorkQueue('Root')::WorkerFunc - thread 051986A0 stopped.
15:23:31: *-*-* OGRE Shutdown
15:23:31: Unregistering ResourceManager for type Compositor
15:23:31: Unregistering ResourceManager for type Font
15:23:31: Unregistering ResourceManager for type Skeleton
15:23:31: Unregistering ResourceManager for type Mesh
15:23:31: Unregistering ResourceManager for type HighLevelGpuProgram
15:23:31: Uninstalling plugin: Caelum
15:23:31: Unregistering ResourceManager for type PropertyScript
15:23:31: Caelum plugin uninstalled
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\Caelum_d
15:23:31: Uninstalling plugin: Cg Program Manager
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\Plugin_CgProgramManager_d
15:23:31: Uninstalling plugin: ParticleFX
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\Plugin_ParticleFX_d
15:23:31: Uninstalling plugin: D3D10 RenderSystem
15:23:31: D3D10 : Shutting down cleanly.
15:23:31: D3D10 : Direct3D10 Rendering Subsystem destroyed.
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\RenderSystem_Direct3D10_d
15:23:31: Uninstalling plugin: Octree & Terrain Scene Manager
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\Plugin_OctreeSceneManager_d
15:23:31: Uninstalling plugin: GL RenderSystem
15:23:31: *** Stopping Win32GL Subsystem ***
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\RenderSystem_GL_d
15:23:31: Uninstalling plugin: D3D9 RenderSystem
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: core_micro_font.PNG
15:23:31: Released D3D9 texture: core_micro_font.PNG
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: core.png
15:23:31: Released D3D9 texture: core.png
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: core_pointer.png
15:23:31: Released D3D9 texture: core_pointer.png
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: OgitorDecalTexture
15:23:31: Released D3D9 texture: OgitorDecalTexture
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: TerrBlend1
15:23:31: Released D3D9 texture: TerrBlend1
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: OgreTerrain/308089778/nm
15:23:31: Released D3D9 texture: OgreTerrain/308089778/nm
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: OgreTerrain/308089778/lm
15:23:31: Released D3D9 texture: OgreTerrain/308089778/lm
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: OgreTerrain/308089778/comp
15:23:31: Released D3D9 texture: OgreTerrain/308089778/comp
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: dirt_grayrocky_diffusespecular.dds
15:23:31: Released D3D9 texture: dirt_grayrocky_diffusespecular.dds
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: dirt_grayrocky_normalheight.dds
15:23:31: Released D3D9 texture: dirt_grayrocky_normalheight.dds
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: jungle_0_diffuse.png
15:23:31: Released D3D9 texture: jungle_0_diffuse.png
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: jungle_0_normal.png
15:23:31: Released D3D9 texture: jungle_0_normal.png
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: city_0_diffuse.png
15:23:31: Released D3D9 texture: city_0_diffuse.png
15:23:31: D3D9 device: 0x[030F3800] destroy. Releasing D3D9 texture: city_0_normal.png
15:23:31: Released D3D9 texture: city_0_normal.png
15:23:31: D3D9 : Shutting down cleanly.
15:23:31: Unregistering ResourceManager for type Texture
15:23:31: Unregistering ResourceManager for type GpuProgram
15:23:31: D3D9 : Direct3D9 Rendering Subsystem destroyed.
15:23:31: Plugin successfully uninstalled
15:23:31: Unloading library .\RenderSystem_Direct3D9_d
15:23:31: Unregistering ResourceManager for type Material
15:23:31: DefaultWorkQueue('Root') shutting down on thread 0068D358.
I have come along way with my game, and i thought it would be nice to have a pause state. having similar problems boiling down to calling the gamestates::enter function twice once i have visited the pause state. Did you figure out any kind of workaround?
Heres how my output looks:

Code: Select all

20:25:11: Entering MenuState...
20:25:14: Pausing MenuState...
20:25:14: Entering GameState...
20:25:14: TerrainSceneManager: Registered a new PageSource for type Heightmap
20:25:14: TerrainSceneManager: Activated PageSource Heightmap
20:25:14: Texture: terrain.png: Loading 1 faces(PF_A8R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,512x512x1.
20:25:14: Texture: shortGrass.jpg: Loading 1 faces(PF_L8,512x512x1) with 5 generated mipmaps from Image. Internal format is PF_L8,512x512x1.
20:25:14: Mesh: Loading ninja.mesh.
20:25:14: Skeleton: Loading ninja.skeleton
20:25:15: Texture: nskingr.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
20:25:15: Texture: shiny_mask.png: Loading 1 faces(PF_A8R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,512x512x1.
20:25:15: Texture: env.jpg: Loading 6 faces(PF_R8G8B8,128x128x1) with  hardware generated mipmaps from multiple Images. Internal format is PF_X8R8G8B8,128x128x1.
20:25:15: Mesh: Loading robot.mesh.
20:25:15: Skeleton: Loading robot.skeleton
20:25:15: Texture: r2skin.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
20:25:15: Texture: explosion.png: Loading 1 faces(PF_R8G8B8,64x64x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,64x64x1.
20:25:15: Texture: target.png: Loading 1 faces(PF_A8R8G8B8,128x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,128x128x1.
20:25:19: Leaving GameState...
20:25:19: Resuming MenuState...
20:25:20: Pausing MenuState...
20:25:20: Entering GameState...
20:25:20: TerrainSceneManager: Registered a new PageSource for type Heightmap
20:25:20: TerrainSceneManager: Activated PageSource Heightmap
20:25:25: Pausing GameState...
20:25:25: Entering PauseState...
20:25:26: Leaving PauseState...
20:25:26: Resuming GameState...
20:25:28: Leaving GameState...
20:25:28: Resuming MenuState...
20:25:29: Pausing MenuState...
20:25:29: Entering GameState...
20:25:29: TerrainSceneManager: Registered a new PageSource for type Heightmap
20:25:29: TerrainSceneManager: Activated PageSource Heightmap
20:25:29: Pausing GameState...
20:25:29: Entering GameState...
20:25:29: OGRE EXCEPTION(4:ItemIdentityException): SceneManager instance called 'GameSceneMgr' already exists in SceneManagerEnumerator::createSceneManager at f:\codingextra\ogre\shoggoth_vc8\ogre\ogremain\src\ogrescenemanagerenumerator.cpp (line 202)
Ident
Gremlin
Posts: 155
Joined: Thu Sep 17, 2009 8:43 pm
Location: Austria
x 9

Re: New wiki article: Advanced Ogre Framework

Post by Ident »

I, too, have problems with switching between GameState and MenuState.

I get an ESP error when trying to re-enter the GameState, also I'd be happy with just having the GameState paused, but recreating is okaay, too - but then: why does it not work like this? couldn't fix it myself by looking at tthe code so far, also i dont know what the ESP error "means"...
dave2041
Halfling
Posts: 71
Joined: Fri Apr 24, 2009 12:55 pm

Re: New wiki article: Advanced Ogre Framework

Post by dave2041 »

Ident wrote:I, too, have problems with switching between GameState and MenuState.

I get an ESP error when trying to re-enter the GameState, also I'd be happy with just having the GameState paused, but recreating is okaay, too - but then: why does it not work like this? couldn't fix it myself by looking at tthe code so far, also i dont know what the ESP error "means"...
sup ident, i don't have troubles switching between menu state and gamestate
i can switch between those as many times as i want. however if i go to the pause state from the game state then back to game -> menu then back into the game thats when the games enter function is called twice and so i get the scene manager already exists error. Whats an ESP error?