Page 11 of 12

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 9:50 pm
by mboeni
Hi mate

Yep, that worked, one obstacle less ;)

I do get the configuration window now (having had to delete ogre.cfg and resources.cfg) but no "Mode" (resolution) is made available.

When clicking "ok" i get the following error

Code: Select all

Unable to apply desired settings to the window. Please consult the system log for details
and an assertion error / stack overflow:

Code: Select all

The thread 'Win32 Thread' (0xf68) has exited with code 3 (0x3).
First-chance exception at 0x774672c0 in generat0rX.exe: 0xC00000FD: Stack overflow.
Unhandled exception at 0x774672c0 in generat0rX.exe: 0xC00000FD: Stack overflow.
The settings ini:

Code: Select all

[Graphics]
RenderSystem=Direct3D9 Rendering Subsystem
SelectedWindowMode=-1
AllowPerfHUD=false
EnableGammaCorrection=false
FSSAFactor=2
EnableVerticalSync=false
The log says:

Code: Select all

	10:45:48 pm - 	Debug test
	10:45:48 pm - 	Warning test
	10:45:48 pm - 	Critical test
	10:45:48 pm - 	link XMLID_34_ hasn't been detected!
	10:45:48 pm - 	link XMLID_34_ hasn't been detected!
	10:45:48 pm - 	link XMLID_36_ hasn't been detected!
	10:45:48 pm - 	link XMLID_34_ hasn't been detected!
	10:45:48 pm - 	link XMLID_34_ hasn't been detected!
	10:45:48 pm - 	link XMLID_36_ hasn't been detected!
	10:45:55 pm - 	Failed to set main window resolution. The list of resolutions was:
	10:45:55 pm - 	The requested index was: "-1"
and in my main.cpp I'm doing this:

Code: Select all

#include "generat0rx.h"
#include <QtGui/QApplication>
#include <qplastiquestyle.h>
#include <Application.h>
#include "OgreEngineLogic.h"

int main(int argc, char *argv[])
{
	QApplication::setStyle ( new QPlastiqueStyle() );

	QtOgre::Application app(argc, argv, new QtOgre::OgreEngineLogic);

	//QApplication app (argc, argv);
	generat0rX w;
	w.show();
	//return app.exec();
	return app.exec(QtOgre::DisplaySettingsDialog);
}
Any ideas?

Cheerio,
Michael

PS: I have used the Qt Add-in for MSVS 2010 to create the Qt app.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 10:06 pm
by PolyVox
It reads the settings for the dialog from settings.pro. You might need to make sure it can find this file on start up. As an example it could look like this:

Code: Select all

[System]
DefaultWindowOpacity=1.0

[Graphics]
RenderSystem=OpenGL Rendering Subsystem
WindowModes=800x600, 1024x768, 1280x1024, FullScreen
SelectedWindowMode=1
AllowPerfHUD=false
EnableGammaCorrection=false
FSSAFactor=2
EnableVerticalSync=false
I'm not sure if that is the reason for the crash though.

Also, I assume the demo app runs sucessfully?

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 10:44 pm
by mboeni
I actually had to copy/paste the settings into "settings.ini" (settings.pro seems to be ignored).

I now get a selection of resolutions for OpenGL. When clicking OK after choosing one, the app freezes for a few seconds, then dies with an assertion error:

Code: Select all

The thread 'Win32 Thread' (0x14ac) has exited with code 3 (0x3).
The thread 'Win32 Thread' (0x6ac) has exited with code 3 (0x3).
The thread 'Win32 Thread' (0x17c0) has exited with code 3 (0x3).
The thread 'Win32 Thread' (0x11ec) has exited with code 3 (0x3).
The thread 'Win32 Thread' (0x1094) has exited with code 3 (0x3).
The thread 'Win32 Thread' (0x101c) has exited with code 3 (0x3).
The program '[5848] generat0rX.exe: Native' has exited with code 3 (0x3).
By the way: is there a full definition file for "settings.ini"? I have checked the Ogre dirs but haven't found it.

The attached screenshot shows the assertion error i get. Perhaps that helps

Thanks,
Michael

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 10:58 pm
by PolyVox
mboeni wrote:I actually had to copy/paste the settings into "settings.ini" (settings.pro seems to be ignored).
Sorry, that's what I meant.
mboeni wrote:By the way: is there a full definition file for "settings.ini"? I have checked the Ogre dirs but haven't found it.
It's in 'ogreaddons\QtOgreFramework\Demo\settings.ini. It's nothing to do with Ogre (it's passed to a QSettings class in Qt). Actually I think I reworked some of this so the Ogre *.cfg files would work as well. Can't remember if I did this or how far I got, so you'll have to check the code.
mboeni wrote:The attached screenshot shows the assertion error i get. Perhaps that helps
So what happens if you drop into the debugger (probably 'Retry' or 'Wiederholen') and look at the call stack? Where is it crashing?

Also, can you confirm whether the Demo application works?

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:03 pm
by mboeni
I checked the "...\Demo\settings.ini" and its about the same as I have it now. I just thought it's an ogre feature (determining the possible resolutions, etc).

Yes the demo works okay.

Here is the stack trace:

Code: Select all

>	msvcp100d.dll!std::_Debug_message(const wchar_t * message=0x0156d020, const wchar_t * file=0x0156c4c8, unsigned int line=236)  Line 15	C++
 	msvcp100d.dll!std::_Debug_message(const unsigned short * message=0x0156d020, const unsigned short * file=0x0156c4c8, unsigned int line=236)  Line 20 + 0x11 bytes	C++
 	generat0rX.exe!std::_Tree_const_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator*()  Line 236 + 0x15 bytes	C++
 	generat0rX.exe!std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator*()  Line 397	C++
 	generat0rX.exe!std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator->()  Line 402	C++
 	generat0rX.exe!Ogre::MapIteratorWrapper<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> > >,std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > > >::peekNextValue()  Line 288 + 0xb bytes	C++
 	generat0rX.exe!QtOgre::OgreEngineLogic::loadScene(QString filename="media/scenes/test.scene")  Line 206 + 0x31 bytes	C++
 	generat0rX.exe!QtOgre::OgreEngineLogic::initialise()  Line 45	C++
 	generat0rX.exe!QtOgre::Application::initialise()  Line 249 + 0x15 bytes	C++
 	generat0rX.exe!QtOgre::Application::exec(QtOgre::SettingsDialogMode eDialogMode=DisplaySettingsDialog)  Line 343	C++
 	generat0rX.exe!main(int argc=1, char * * argv=0x0126f988)  Line 17 + 0x7 bytes	C++
 	generat0rX.exe!WinMain(HINSTANCE__ * instance=0x01290000, HINSTANCE__ * prevInstance=0x00000000, char * __formal=0x003c2b3a, int cmdShow=1)  Line 131 + 0x12 bytes	C++
 	generat0rX.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes	C
 	generat0rX.exe!WinMainCRTStartup()  Line 371	C


Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:11 pm
by mboeni
Addendum:

commenting out loadScene in the initialize method perhaps helps (different error):

Code: Select all

 	OgreMain_d.dll!01e7f980() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for OgreMain_d.dll]	
 	OgreMain_d.dll!01bf455f() 	
>	generat0rX.exe!QtOgre::OgreEngineLogic::initialise()  Line 45 + 0x51 bytes	C++
 	generat0rX.exe!QtOgre::Application::initialise()  Line 249 + 0x15 bytes	C++
 	generat0rX.exe!QtOgre::Application::exec(QtOgre::SettingsDialogMode eDialogMode=DisplaySettingsDialog)  Line 343	C++
 	generat0rX.exe!main(int argc=1, char * * argv=0x007cf988)  Line 17 + 0x7 bytes	C++
 	generat0rX.exe!WinMain(HINSTANCE__ * instance=0x00c20000, HINSTANCE__ * prevInstance=0x00000000, char * __formal=0x00412b3a, int cmdShow=1)  Line 131 + 0x12 bytes	C++
 	generat0rX.exe!__tmainCRTStartup()  Line 547 + 0x2c bytes	C
 	generat0rX.exe!WinMainCRTStartup()  Line 371	C


Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:17 pm
by PolyVox
Hard to say exactly... it looks like there is some problem setting up the camera in loadScene. The code comments indicate what I'm doing here:

Code: Select all

//The QtOgre DotScene loading code will clear the existing scene except for cameras, as these
//could be used by existing viewports. Therefore we clear and viewports and cameras before
//calling the loading code.
mApplication->ogreRenderWindow()->removeAllViewports();
mSceneManager->destroyAllCameras();
But you probably have to step through in the debugger to see what's going wrong.
mboeni wrote:Yes the demo works okay.
Then you might need to start from that and just make smaller changes at a time.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:21 pm
by mboeni
Hmm, seems that the forum swallowed my last post...

I re-checked whether the demo works and you were right: the version I compiled locally does NOT work, i get the same kind of error:

Code: Select all

>	Demo.exe!std::_Tree_const_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator*()  Line 237 + 0x37 bytes	C++
 	Demo.exe!std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator*()  Line 397	C++
 	Demo.exe!std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > >::operator->()  Line 402	C++
 	Demo.exe!Ogre::MapIteratorWrapper<std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> > >,std::_Tree_iterator<std::_Tree_val<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,Ogre::Camera *,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,Ogre::STLAllocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,Ogre::Camera *>,Ogre::CategorisedAllocPolicy<0> >,0> > > >::peekNextValue()  Line 288 + 0xb bytes	C++
 	Demo.exe!QtOgre::DemoGameLogic::loadScene(QString filename="media/scenes/test.scene")  Line 207 + 0x3d bytes	C++
 	Demo.exe!QtOgre::DemoGameLogic::initialise()  Line 48	C++
 	Demo.exe!QtOgre::Application::initialise()  Line 249 + 0x15 bytes	C++
 	Demo.exe!QtOgre::Application::exec(QtOgre::SettingsDialogMode eDialogMode=DisplaySettingsDialog)  Line 343	C++
 	Demo.exe!main(int argc=1, char * * argv=0x01d94c08)  Line 12 + 0x7 bytes	C++
 	Demo.exe!__tmainCRTStartup()  Line 555 + 0x19 bytes	C
 	Demo.exe!mainCRTStartup()  Line 371	C

Sorry for that - i checked the wrong demo.exe

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:23 pm
by PolyVox
mboeni wrote:Sorry for that - i checked the wrong demo.exe
So which one did you check? Surely you had to build it yourself as the executable isn't in SVN. If you mean it works with my build configuration but not yours then you might needs to check where your files are placed. Or other options. Perhaps your version can't find the test.scene file for example?

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:32 pm
by mboeni
I tested the prebuilt version accidentally. I am compiling the latest version from SVN now.

I just tried to rebuild the framework but that seems pretty messed up
like

Code: Select all

Error	1	error C2039: 'Log' : is not a member of 'Ui'	e:\workspace\cpp_libraries\qtogreframework\qtogre\include\Log.h	21	1	QtOgreStatic
Error	2	error C2499: 'QtOgre::Log' : a class cannot be its own base class	e:\workspace\cpp_libraries\qtogreframework\qtogre\include\Log.h	21	1	QtOgreStatic
Error	3	error C2653: 'Ui' : is not a class or namespace name	E:\workspace\cpp_libraries\QtOgreFramework\QtOgre\include\Log.h	20	1	QtOgreStatic
I'll wipe the whole thing and start from scratch..

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Mon Oct 11, 2010 11:44 pm
by mboeni
I rebuilt the whole thing (with no errors) but am still getting the same problems with Demo and my app...

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Tue Oct 12, 2010 6:42 pm
by PolyVox
Ok, so you've got a clean and unmodified copy of the framework and Demo, and the Demo is still crashing on startup?

Try editiong Demo/Source/main.cpp and replacing 'new DemoGameLogic' with 'new GameLogic'. If it runs it will initialise Ogre and just give you a black screen. They'll be no loading of resources or updating, etc.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Tue Oct 12, 2010 11:01 pm
by mboeni
Yes. And with the change you proposed, the demo works fine.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Wed Oct 13, 2010 10:26 pm
by PolyVox
Right, sorry, I'm not getting enough time to post...
mboeni wrote:Yes. And with the change you proposed, the demo works fine.
And by 'fine', you mean you get the black screen? :-) The point of that test was that apparently Ogre is at least initialising properly so the problem is elsewhere. You should be able to get the same result by changing main.cpp back how it was and then cutting out the content of the initialize(), update(), etc functions in DemoGameLogic. You can then build them up a bit at a time until you work out where the problem is.

Regarding 'loadScene()' - this really provides just very basic .scene loading and I doubt if you'll want to use it in a real application. You can instead just set the scene up in code similar to how the Ogre tutorials do it. But the Demo application relies on it because it expects it to create cameras, certain entities etc. If you do remove this function from the Demo you'll need to make changes elsewhere as well.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Fri Dec 10, 2010 9:29 am
by yaxinhoo
in thermite

i can't find the <cstdint> , replace it with <boost/cstdint.hpp> , it can't work too.

i am using
qt4.6
vs2008
boost1.44
ogre1.7.1

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Fri Dec 10, 2010 7:57 pm
by PolyVox
yaxinhoo wrote:in thermite

i can't find the <cstdint> , replace it with <boost/cstdint.hpp> , it can't work too.

i am using
qt4.6
vs2008
boost1.44
ogre1.7.1
As discussed in the Thermite forums. I'm just posting this message so the question is not left open.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Fri Feb 04, 2011 10:17 pm
by David Wagg
Great work, Polyvox! Tried a couple of unhappy Qt-Ogre crossbreeds already, but your implementation seems to work rather well. There are a few oddities though (I'm using QtOgre rev. 2977, ogre v1-7 tip, Qt 4.7.1, Windows Vista x64):

1) Fog doesn't seem to work. I added the bolded parts to DemoGameLogic.cpp, line 216.
Ogre::Viewport* viewport = mApplication->ogreRenderWindow()->addViewport(mCamera);
viewport->setBackgroundColour(Ogre::ColourValue(0.5f, 0.0f, 0.0f));
mSceneManager->setFog( Ogre::FOG_EXP, Ogre::ColourValue(0.5f, 0.0f, 0.0f), 0.005f );

This doesn't do what I expected - instead of red fog, the skybox is just tinted red, and there's no effect at all on the models. Any ideas why this doesn't work? Basic Tutorial 3 (http://www.ogre3d.org/tikiwiki/Basic+Tu ... =Tutorials) worked for me, so I'm guessing it's something to do with Qt.

2) If I select fullscreen OpenGL then the Qt widgets don't show up on top, and the main menu window doesn't pop up when I press escape. Alt-tabbing out and back in sometimes makes them appear, but not reliably. Fullscreen DirectX is fine. I had similar problems with other Qt-Ogre hybrids, is this a known issue?

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Sat Feb 05, 2011 4:28 pm
by PolyVox
David Wagg wrote:1) Fog doesn't seem to work. I added the bolded parts to DemoGameLogic.cpp, line 216.
Ogre::Viewport* viewport = mApplication->ogreRenderWindow()->addViewport(mCamera);
viewport->setBackgroundColour(Ogre::ColourValue(0.5f, 0.0f, 0.0f));
mSceneManager->setFog( Ogre::FOG_EXP, Ogre::ColourValue(0.5f, 0.0f, 0.0f), 0.005f );
I just tested this and saw the behaviour you described, but actually you just need to increase you exponent. Setting it to 0.05f seemed to work.
David Wagg wrote:2) If I select fullscreen OpenGL then the Qt widgets don't show up on top, and the main menu window doesn't pop up when I press escape. Alt-tabbing out and back in sometimes makes them appear, but not reliably. Fullscreen DirectX is fine. I had similar problems with other Qt-Ogre hybrids, is this a known issue?
Yes, I think this is a problem with Vista (and possibly windows 7) when using OpenGL in fullscreen mode. I forget the exact details but if you google for 'vista opengl problems' you might find something. Actually, I think it was to do with the widgets being partially transparent.. search the QtOgre codebase for 'setWindowOpacity' and try forcing this to 1.0. I'm not sure though...

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Sat Feb 05, 2011 5:59 pm
by David Wagg
PolyVox wrote:you just need to increase you exponent. Setting it to 0.05f seemed to work.
Could've sworn I fiddled with those values, but apparently not :oops: Thanks, fog is working for me now!
PolyVox wrote: Yes, I think this is a problem with Vista (and possibly windows 7) when using OpenGL in fullscreen mode. I forget the exact details but if you google for 'vista opengl problems' you might find something. Actually, I think it was to do with the widgets being partially transparent.. search the QtOgre codebase for 'setWindowOpacity' and try forcing this to 1.0. I'm not sure though...
Playing with setWindowOpacity didn't make any difference. Unfortunately, it's a bit like looking for a needle in a haystack with google. I found a few posts suggesting that Aero is interfering, but disabling Aero did not fix this problem.

This example (http://doc.qt.nokia.com/stable/opengl-overpainting.html) shows Qt playing nicely with OpenGL. Transparent widgets drawn on top of the GL context, works fine in full-screen too. The source code for their QGLWidget is pretty hideous though, I wouldn't want to try to reproduce that with Ogre.

Anyway, I suppose it's not worth worrying about, since it's so easy to switch render systems in Ogre. I'll just use the D3D9 renderer on Windows, OpenGL on other platforms.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Sun Apr 10, 2011 1:51 pm
by uzik
About the licensing, something new occurred that may take care of your concerns:

http://arstechnica.com/open-source/news ... opment.ars

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Sun Apr 10, 2011 3:33 pm
by jacmoe
New?
We knew that since it happened which was in 2009. :)
Ogitor switched to using Qt shortly after that.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Thu Dec 29, 2011 12:38 am
by pwr
Hi!
Have limited experience with different GUI systems when used with Ogre. Found this Qt framework for Ogre and tried it out. It works fine, but I'm a bit concerned about the frame rate of my game that I'm developing. I have tested to use OgreWidget in my project and am noticing that the frame rate drops (around 20-30fps) when widgets are drawn on top of my 3d scene. I've also had this problem with other implementations of OgreWidget that I have tried.

What I'm wondering is how the performance is when comparing the Qt approach with other existing GUI library for Ogre. Is the drop in fps when drawing widgets normal, also when other GUI libs are used?
I hope that this questions isn't already exists in this long thread. If that is the case, I'm sorry that I've missed the answer and reposted the question.
I'm using MacOSX 1.6 and Ogre3d 1.7

BR

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Thu Dec 29, 2011 1:13 am
by PolyVox
I think that the system is indeed slower when drawing Qt widgets on top of the Ogre widget. This may be because it has to syncronise two drawing loops or there may be other reasons. It's also particularly bad if the widgets are transparent - I guess in this case it has to pull the framebuffer back to perform the blending. Actually I'm a bit hazy here as I haven't worked on it for a while (and I'm no longer maintaining this project).

For maximum performance you want to render your widgets as part of the Ogre scene, rather than rendering on top of it. Most game-specifc GUIs will work like this. In theory it's possible to do something similar with Qt (for example see this thread) though it's a bit more complex.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Wed Jan 11, 2012 9:29 am
by praveenaj
Hi,

I'm a newbie to both Qt and Ogre, Can someone please explain me how to get this framework working with a new Qt application? I need to have a Ogre window/panel inside a Qt widget.

Thanks.

Re: QtOgre Application Framework - Now using Qt 4.5

Posted: Wed Jan 11, 2012 11:42 am
by PolyVox
Hi, I got several messages from you but decided to reply to this one to keep the information publicly viewable.

The QtOgre framework is an application (not a library) so you need to build it from source code. The prebuilt binaries serve only as a demo. Are you able to build it from source yet? If so you can start replacing the demo logic with your own code.

But actually it sounds like you are after a widget to embed in an existing application. In this case the framework may not be what you want. It does contain such a widget (QtOgreWidget I think it is called) but you may have to do some work to seperate it from the rest of the framework. You might be better looking on the Ogre wiki as I believe there is a Qt widget example there (or search the forums - it often comes up).

Also, I'm no longer maintaining this project so I can't be sure it still compiles. It was last tested with either Qt 4.5 or 4.6, and probably with Ogre 1.7 though I'm not sure.