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.
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 »

Rhynedahll wrote:
spacegaier wrote:Ah, sorry. Back then I seem to have forgotten to switch the link for the AOF. I just did it for BOF. I will update the wiki page shortly.

In the meantime, here we go: https://bitbucket.org/spacegaier/advancedogreframework
In my clone there is a typo in AdvanceOgreFramework.cpp (missing underscore):

Code: Select all

template<> OgreFramework* Ogre::Singleton<OgreFramework>::msSingleton = 0;
Not a typo!!! You are suing the old Ogre (1.7.x) whereas I am using the new 1.8!
Rhynedahll wrote: Quesiton about Debug mode. What would cause the Render Subsystems not to show up in the Ogre config dialog?
No ogre.cfg file present in the directory you are trying to run the .EXE from.
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...
Rhynedahll
Halfling
Posts: 77
Joined: Thu Jan 08, 2009 2:03 am
x 1

Re: New wiki article: Advanced Ogre Framework

Post by Rhynedahll »

Has anyone integrated the Sinbad Character Controller from the samples into AOF?

If so, could you summerize the code changes necessary? Also, any conflicts, problems, drawbacks, suggestions, etc.

Thanks in advance ! :D
The Key to Magic -- Book One: ORPHAN
An epic fantasy by H. Jonas Rhynedahll available on Kindle.
The Key to Magic
Rhynedahll
Halfling
Posts: 77
Joined: Thu Jan 08, 2009 2:03 am
x 1

Re: New wiki article: Advanced Ogre Framework

Post by Rhynedahll »

Rhynedahll wrote: Quesiton about Debug mode. What would cause the Render Subsystems not to show up in the Ogre config dialog?
No ogre.cfg file present in the directory you are trying to run the .EXE from.
Unfortunately, that does not appear to be the problem, since the ogre.cfg file is in fact present alonside the .exe.
The Key to Magic -- Book One: ORPHAN
An epic fantasy by H. Jonas Rhynedahll available on Kindle.
The Key to Magic
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 »

Are you trying to run the application directly out of VisualStudio? If that is the case than you most likely have not set a "working directory". If you run your application directly from the file system and the ogre.cfg is in fact present, that it should work.
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...
Rhynedahll
Halfling
Posts: 77
Joined: Thu Jan 08, 2009 2:03 am
x 1

Re: New wiki article: Advanced Ogre Framework

Post by Rhynedahll »

spacegaier wrote:Are you trying to run the application directly out of VisualStudio? If that is the case than you most likely have not set a "working directory". If you run your application directly from the file system and the ogre.cfg is in fact present, that it should work.
I've gotten it fixed with some assistance from the Help forum. Because of my ignorance, I had not set the file names for the debug versions. I had to make a slight change:

Code: Select all

m_pRoot = new Ogre::Root("plugins_d.cfg", "ogre_d.cfg", 
			"Ogre_d.log");
The Key to Magic -- Book One: ORPHAN
An epic fantasy by H. Jonas Rhynedahll available on Kindle.
The Key to Magic
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, either change the code or name the debug versions of the CFG files exactly like the release versions (my approach :) ).
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...
Rhynedahll
Halfling
Posts: 77
Joined: Thu Jan 08, 2009 2:03 am
x 1

Re: New wiki article: Advanced Ogre Framework

Post by Rhynedahll »

So, I've banged away for a while at integrating the Sinbad Character Controller code from the sample into AOF. I've managed to do the simple things like pop the Sinbad character into the scene, but I have not made much progress in changing the AOF camera controller to the character camera controller.

Hopefully, one of you might have the time to offer some suggestions. I'm sure it's something simple that I am missing. (I learned to program in another language, so C++ syntax makes my head want to explode.)

My current problem is trying to add this line (commented out) in gamestate.cpp:

Code: Select all

void GameState::update(double timeSinceLastFrame)
{
   
   //mChara->addTime(timeSinceLastFrame);
	
    if(m_bQuit == true)
    {
        popAppState();
        return;
    }
My thought was that to get the character animations/camera to update, that I would have to use the SCC addTime function here in the AOF update function, but while this builds, it crashes when I try to enter the gamestate from the starting menu.

The error reported is:
Assertion Failed!
Program:...
File \OgreMain\src\OrgeNode.cpp
Line 393

Expression: !q1.isNaN() && "INvalid orientation supplied as parameter"

I can step through the three private functions of the addTime function without problem but when I remove my break points it crashes.

addTime takes a Ogre::Real parameter (deltaTime) while timeSinceLastFrame is a double, but I thought this was possible? (It only generates a warning.)

AOF will run without this line but (obviously) the character and camera do not move (update.)

Thanks in advance for any possible help with this.
The Key to Magic -- Book One: ORPHAN
An epic fantasy by H. Jonas Rhynedahll available on Kindle.
The Key to Magic
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 »

Difficult to help here remotely. I would probably start by having a look at the call stack when the error occurs and set break points there /examine which variable contains the invalid orientation and try to trace it back to the commented line.

Also the fact that everything works when you are debugging sounds to me as if there is something multi-threaded going on = only when you are in debug mode, your thread is slow enough to let the other thread(s) do whathever it/they do(es) so that later all is fine (I know bad explanation, but hard to put in words :D ).
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...
Nysomin
Gnoblar
Posts: 1
Joined: Fri Jun 22, 2012 10:51 pm

Re: New wiki article: Advanced Ogre Framework

Post by Nysomin »

I am getting a new error:

Code: Select all

‘OgreFramework* Ogre::Singleton<OgreFramework>::ms_Singleton’ is not a static member of ‘class Ogre::Singleton<OgreFramework>’
On line:

Code: Select all

template<> OgreFramework* Ogre::Singleton<OgreFramework>::ms_Singleton = 0;
I am using Ogre 1.8 source, so I am wondering if that has something to do with it.



EDIT:

Wait, nevermind, saw the error.
Stenr Reisa
Gnoblar
Posts: 18
Joined: Thu May 31, 2012 5:51 am

Re: New wiki article: Advanced Ogre Framework

Post by Stenr Reisa »

I am trying to get the advanced framework to work in Visual Studio 2010, it compiles fine but I am getting a lot of linker errors.

I just went through the article and put the code into a new project, then copied the media folder to the release directory. Did i mess up? :oops:

Code: Select all

1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::TerrainGlobalOptions::TerrainGlobalOptions(void)" (__imp_??0TerrainGlobalOptions@Ogre@@QAE@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::handleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (__imp_?handleResponse@TerrainGroup@Ogre@@UAEXPBUResponse@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual bool __thiscall Ogre::TerrainGroup::canHandleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (__imp_?canHandleResponse@TerrainGroup@Ogre@@UAE_NPBUResponse@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::WorkQueue::Response * __thiscall Ogre::TerrainGroup::handleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (__imp_?handleRequest@TerrainGroup@Ogre@@UAEPAUResponse@WorkQueue@2@PBVRequest@42@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual bool __thiscall Ogre::TerrainGroup::canHandleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (__imp_?canHandleRequest@TerrainGroup@Ogre@@UAE_NPBVRequest@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::freeTemporaryResources(void)" (__imp_?freeTemporaryResources@TerrainGroup@Ogre@@QAEXXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::Terrain * __thiscall Ogre::TerrainGroup::getTerrain(long,long)const " (__imp_?getTerrain@TerrainGroup@Ogre@@UBEPAVTerrain@2@JJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::TerrainGroup::TerrainSlotDefinition * __thiscall Ogre::TerrainGroup::getTerrainDefinition(long,long)const " (__imp_?getTerrainDefinition@TerrainGroup@Ogre@@UBEPAUTerrainSlotDefinition@12@JJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::removeTerrain(long,long)" (__imp_?removeTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::unloadTerrain(long,long)" (__imp_?unloadTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::loadTerrain(long,long,bool)" (__imp_?loadTerrain@TerrainGroup@Ogre@@UAEXJJ_N@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::loadAllTerrains(bool)" (__imp_?loadAllTerrains@TerrainGroup@Ogre@@UAEX_N@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,struct Ogre::Terrain::ImportData const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBUImportData@Terrain@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class Ogre::Image const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBVImage@2@PBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBMPBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setTerrainSize(unsigned short)" (__imp_?setTerrainSize@TerrainGroup@Ogre@@UAEXG@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setTerrainWorldSize(float)" (__imp_?setTerrainWorldSize@TerrainGroup@Ogre@@UAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setOrigin(class Ogre::Vector3 const &)" (__imp_?setOrigin@TerrainGroup@Ogre@@UAEXABVVector3@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGroup::~TerrainGroup(void)" (__imp_??1TerrainGroup@Ogre@@UAE@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::TerrainGroup::TerrainGroup(class Ogre::SceneManager *,enum Ogre::Terrain::Alignment,unsigned short,float)" (__imp_??0TerrainGroup@Ogre@@QAE@PAVSceneManager@1@W4Alignment@Terrain@1@GM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall Ogre::TerrainGroup::getResourceGroup(void)const " (__imp_?getResourceGroup@TerrainGroup@Ogre@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::setResourceGroup(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?setResourceGroup@TerrainGroup@Ogre@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::SceneManager * __thiscall Ogre::TerrainGroup::getSceneManager(void)const " (__imp_?getSceneManager@TerrainGroup@Ogre@@UBEPAVSceneManager@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual unsigned short __thiscall Ogre::TerrainGroup::getTerrainSize(void)const " (__imp_?getTerrainSize@TerrainGroup@Ogre@@UBEGXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual float __thiscall Ogre::TerrainGroup::getTerrainWorldSize(void)const " (__imp_?getTerrainWorldSize@TerrainGroup@Ogre@@UBEMXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual enum Ogre::Terrain::Alignment __thiscall Ogre::TerrainGroup::getAlignment(void)const " (__imp_?getAlignment@TerrainGroup@Ogre@@UBE?AW4Alignment@Terrain@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::Vector3 const & __thiscall Ogre::TerrainGroup::getOrigin(void)const " (__imp_?getOrigin@TerrainGroup@Ogre@@UBEABVVector3@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::Terrain::ImportData & __thiscall Ogre::TerrainGroup::getDefaultImportSettings(void)" (__imp_?getDefaultImportSettings@TerrainGroup@Ogre@@UAEAAUImportData@Terrain@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setMaxPixelError(float)" (__imp_?setMaxPixelError@TerrainGlobalOptions@Ogre@@QAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDistance(float)" (__imp_?setCompositeMapDistance@TerrainGlobalOptions@Ogre@@QAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDiffuse(class Ogre::ColourValue const &)" (__imp_?setCompositeMapDiffuse@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapAmbient(class Ogre::ColourValue const &)" (__imp_?setCompositeMapAmbient@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setLightMapDirection(class Ogre::Vector3 const &)" (__imp_?setLightMapDirection@TerrainGlobalOptions@Ogre@@QAEXABVVector3@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGlobalOptions::~TerrainGlobalOptions(void)" (__imp_??1TerrainGlobalOptions@Ogre@@UAE@XZ)
What could be the cause of this? I'm sure it is something I should know what the problem is but I cannot figure it out. I downloaded the resource pack and have put them where they should be in my Ogre 1.8 SDK...Any input would be appreciated...noob here trying to learn as i go :(
Stenr Reisa
Gnoblar
Posts: 18
Joined: Thu May 31, 2012 5:51 am

Re: New wiki article: Advanced Ogre Framework

Post by Stenr Reisa »

AHAHAHAHAHAHHAHA I FIGURED IT OUT!!! :twisted:

Went through and commented out all the processing to do with terrain in the DotSceneLoader. Was really cool getting it to work after working on it for a hour or so :oops: ! Got the config dialog and I was like :shock:

Thanks for this awesome framework spacegaier (and for taking so much time to be so noob friendly! its greatly appreciated! I can't even imagine the things you must be working on right now, hopefully I can get there someday :roll: ).
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 »

Glad you were able to figure it out own your own...always more rewarding that way :) .
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...
Stenr Reisa
Gnoblar
Posts: 18
Joined: Thu May 31, 2012 5:51 am

Re: New wiki article: Advanced Ogre Framework

Post by Stenr Reisa »

Hey space...I am working on a version of your advanced framework that uses CEGUI instead of the built in one...as a way to give back to the community I am totally willing to share the code, already have cegui integrated and working I am just building a basic gui now, would you be interested in this, if not, do u mind me making a thread and sharing it? If you don't want me to for whatever reason i wont...
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 don't mind at all, but you could save yourself the trouble since I am pretty certain that there are already published versions of my framework plus CEGUI out there somewhere (links should be in the forum...search function is your friend ;) ).
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...
Stenr Reisa
Gnoblar
Posts: 18
Joined: Thu May 31, 2012 5:51 am

Re: New wiki article: Advanced Ogre Framework

Post by Stenr Reisa »

oh lol... :oops:
Stenr Reisa
Gnoblar
Posts: 18
Joined: Thu May 31, 2012 5:51 am

Re: New wiki article: Advanced Ogre Framework

Post by Stenr Reisa »

Well, i looked into it and the only one I could find was a couple years old....im gonna go ahead and continue with mine cause it works now all i gotta do is build a gui, ill just makea thread for it when its finished.
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 »

There is one linked in my wiki article. It is for Ogre 1.7.1 but there is only one line to change in that regard. It might at least serve as a source of inspiration ;) .
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...
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 »

Update 2013/02/10:
  • ported to Ogre 1.9 (v1.8 version remains as branch)
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...
audran
Gnoblar
Posts: 14
Joined: Sat Feb 16, 2013 3:42 am

Re: New wiki article: Advanced Ogre Framework

Post by audran »

HI, thank you for your Framework, but i have a problem when i try to build it :
I am on VC ++ 2010 express, Ogre 1.8.1

Code: Select all

1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.hpp(55): error C2039: 'OverlaySystem' : n'est pas membre de 'Ogre'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.hpp(55): error C2143: erreur de syntaxe : absence de ';' avant '*'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.hpp(55): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.hpp(55): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(59): error C2065: 'm_pOverlaySystem' : identificateur non déclaré
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(59): error C2039: 'OverlaySystem' : n'est pas membre de 'Ogre'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(59): error C2061: erreur de syntaxe : identificateur 'OverlaySystem'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(105): error C2039: 'InputContext' : n'est pas membre de 'OgreBites'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(105): error C2065: 'InputContext' : identificateur non déclaré
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(105): error C2146: erreur de syntaxe : absence de ';' avant l'identificateur 'inputContext'
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(105): error C2065: 'inputContext' : identificateur non déclaré
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(106): error C2065: 'inputContext' : identificateur non déclaré
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(106): error C2228: la partie gauche de '.mMouse' doit avoir un class/struct/union
1>          le type est ''unknown-type''
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(107): error C2065: 'inputContext' : identificateur non déclaré
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(107): error C2228: la partie gauche de '.mKeyboard' doit avoir un class/struct/union
1>          le type est ''unknown-type''
1>d:\documents\visual studio 2010\projects\testframework\testframework\advancedogreframework.cpp(108): error C2065: 'inputContext' : identificateur non déclaré
1>  Génération de code en cours...
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
Thank you if someone can help me, i'm a very beginner
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 »

You are trying to use the 1.9 version of my framework with Ogre 1.8. That won't work. My code repository on BitBucket has two branches: 1.8 and default (= 1.9).

You need to take the code from the 1.8 branch in order to work with Ogre 1.8
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...
audran
Gnoblar
Posts: 14
Joined: Sat Feb 16, 2013 3:42 am

Re: New wiki article: Advanced Ogre Framework

Post by audran »

Hi, thank you for your help.
I downloaded the 1.8 and i have now the same error like Stenr Reisa :

Code: Select all

1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::TerrainGlobalOptions::TerrainGlobalOptions(void)" (__imp_??0TerrainGlobalOptions@Ogre@@QAE@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::handleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (__imp_?handleResponse@TerrainGroup@Ogre@@UAEXPBUResponse@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual bool __thiscall Ogre::TerrainGroup::canHandleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (__imp_?canHandleResponse@TerrainGroup@Ogre@@UAE_NPBUResponse@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::WorkQueue::Response * __thiscall Ogre::TerrainGroup::handleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (__imp_?handleRequest@TerrainGroup@Ogre@@UAEPAUResponse@WorkQueue@2@PBVRequest@42@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual bool __thiscall Ogre::TerrainGroup::canHandleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (__imp_?canHandleRequest@TerrainGroup@Ogre@@UAE_NPBVRequest@WorkQueue@2@PBV42@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::freeTemporaryResources(void)" (__imp_?freeTemporaryResources@TerrainGroup@Ogre@@QAEXXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::Terrain * __thiscall Ogre::TerrainGroup::getTerrain(long,long)const " (__imp_?getTerrain@TerrainGroup@Ogre@@UBEPAVTerrain@2@JJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::TerrainGroup::TerrainSlotDefinition * __thiscall Ogre::TerrainGroup::getTerrainDefinition(long,long)const " (__imp_?getTerrainDefinition@TerrainGroup@Ogre@@UBEPAUTerrainSlotDefinition@12@JJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::removeTerrain(long,long)" (__imp_?removeTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::unloadTerrain(long,long)" (__imp_?unloadTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::loadTerrain(long,long,bool)" (__imp_?loadTerrain@TerrainGroup@Ogre@@UAEXJJ_N@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::loadAllTerrains(bool)" (__imp_?loadAllTerrains@TerrainGroup@Ogre@@UAEX_N@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,struct Ogre::Terrain::ImportData const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBUImportData@Terrain@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class Ogre::Image const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBVImage@2@PBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBMPBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?defineTerrain@TerrainGroup@Ogre@@UAEXJJABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setTerrainSize(unsigned short)" (__imp_?setTerrainSize@TerrainGroup@Ogre@@UAEXG@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setTerrainWorldSize(float)" (__imp_?setTerrainWorldSize@TerrainGroup@Ogre@@UAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual void __thiscall Ogre::TerrainGroup::setOrigin(class Ogre::Vector3 const &)" (__imp_?setOrigin@TerrainGroup@Ogre@@UAEXABVVector3@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGroup::~TerrainGroup(void)" (__imp_??1TerrainGroup@Ogre@@UAE@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::TerrainGroup::TerrainGroup(class Ogre::SceneManager *,enum Ogre::Terrain::Alignment,unsigned short,float)" (__imp_??0TerrainGroup@Ogre@@QAE@PAVSceneManager@1@W4Alignment@Terrain@1@GM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall Ogre::TerrainGroup::getResourceGroup(void)const " (__imp_?getResourceGroup@TerrainGroup@Ogre@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::setResourceGroup(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?setResourceGroup@TerrainGroup@Ogre@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::SceneManager * __thiscall Ogre::TerrainGroup::getSceneManager(void)const " (__imp_?getSceneManager@TerrainGroup@Ogre@@UBEPAVSceneManager@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual unsigned short __thiscall Ogre::TerrainGroup::getTerrainSize(void)const " (__imp_?getTerrainSize@TerrainGroup@Ogre@@UBEGXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual float __thiscall Ogre::TerrainGroup::getTerrainWorldSize(void)const " (__imp_?getTerrainWorldSize@TerrainGroup@Ogre@@UBEMXZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual enum Ogre::Terrain::Alignment __thiscall Ogre::TerrainGroup::getAlignment(void)const " (__imp_?getAlignment@TerrainGroup@Ogre@@UBE?AW4Alignment@Terrain@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual class Ogre::Vector3 const & __thiscall Ogre::TerrainGroup::getOrigin(void)const " (__imp_?getOrigin@TerrainGroup@Ogre@@UBEABVVector3@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual struct Ogre::Terrain::ImportData & __thiscall Ogre::TerrainGroup::getDefaultImportSettings(void)" (__imp_?getDefaultImportSettings@TerrainGroup@Ogre@@UAEAAUImportData@Terrain@2@XZ)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setMaxPixelError(float)" (__imp_?setMaxPixelError@TerrainGlobalOptions@Ogre@@QAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDistance(float)" (__imp_?setCompositeMapDistance@TerrainGlobalOptions@Ogre@@QAEXM@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDiffuse(class Ogre::ColourValue const &)" (__imp_?setCompositeMapDiffuse@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapAmbient(class Ogre::ColourValue const &)" (__imp_?setCompositeMapAmbient@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setLightMapDirection(class Ogre::Vector3 const &)" (__imp_?setLightMapDirection@TerrainGlobalOptions@Ogre@@QAEXABVVector3@2@@Z)
1>DotSceneLoader.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGlobalOptions::~TerrainGlobalOptions(void)" (__imp_??1TerrainGlobalOptions@Ogre@@UAE@XZ)
but unlike him i don't find where is the error.

Thank 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 »

You seem to have missed to linked OgreTerrain.lib
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...
audran
Gnoblar
Posts: 14
Joined: Sat Feb 16, 2013 3:42 am

Re: New wiki article: Advanced Ogre Framework

Post by audran »

Thank you, it works.
User avatar
Phosphoros
Gnoblar
Posts: 3
Joined: Thu Mar 18, 2010 7:35 pm

Re: New wiki article: Advanced Ogre Framework

Post by Phosphoros »

I've made a CMakeLists.txt and modified the config-files, so I could get it to work with codeblocks on Ubuntu and Ogre 1.8.1, is there some way to contribute to this project, or isnt't there any nee for such a solution?
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 »

Best way would be for you to create a fork on BitBucket and then submit a pull request to me and I will have a look at it then.
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...