DX10 support & using Irrlict in a normal Windows GUI app

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
d000hg
Posts: 9
Joined: Tue Sep 02, 2008 8:35 pm

DX10 support & using Irrlict in a normal Windows GUI app

Post by d000hg »

In a current project, I am deciding if DX10 is the more suitable choice, based on it's extra shader functionality. Making the project Vista-only is OK.

So the first question is whether Irrlict even supports DX10?

My other question is, is it easy to have an Irrlict 'panel' in a normal Windows application, such as MFC or WinForms? In this project, I'd want 2 or 3 3D views in a dialog, with normal Windows controls and menus. Since the choice between C++/C# is not definite yet on this project, or between DX9/10, do these choices affect how difficult this would be?
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Irrlicht doesn't support DX10 at the moment and i don't think there are any firm plans to support it any time soon.

DX9 basically does pretty much anything you'd want to do as well as DX10 would.

And yes you can use Irrlicht in a normal windows application, you just pass the window handle to createDeviceEx() to create Irrlicht within a pre-created window.
Image Image Image
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

Look in your Irrlicht SDK's examples directory, for example 14.Win32Window.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
d000hg
Posts: 9
Joined: Tue Sep 02, 2008 8:35 pm

Post by d000hg »

Great. In the app I'm looking at, we'd need two or 3 such windows in the main dialog. Would this then require 3 instances of Irrlict, and does Irrlict allow multiple instances on the same monitor? The 3 windwos would be viewing different visualisations of the same data so ideally I don't want each one isolated any more than they have to be.

As for DX10, I believe there are substantial changes, otherwise they wouldn't have to break the whole API and make it Vista only... but other than a cleaner less legacy-constrained architecture I don't know what the changes are, other than support for geometry/tessellation shaders is SM 4.0. I certainly don't need that, but it would be nice to use DX10 for the chance to learn more... however I'm not aware of any engines in the $low-free range which do support it.
Halifax
Posts: 1424
Joined: Sun Apr 29, 2007 10:40 pm
Location: $9D95

Post by Halifax »

d000hg wrote:Great. In the app I'm looking at, we'd need two or 3 such windows in the main dialog. Would this then require 3 instances of Irrlict, and does Irrlict allow multiple instances on the same monitor? The 3 windwos would be viewing different visualisations of the same data so ideally I don't want each one isolated any more than they have to be.

As for DX10, I believe there are substantial changes, otherwise they wouldn't have to break the whole API and make it Vista only... but other than a cleaner less legacy-constrained architecture I don't know what the changes are, other than support for geometry/tessellation shaders is SM 4.0. I certainly don't need that, but it would be nice to use DX10 for the chance to learn more... however I'm not aware of any engines in the $low-free range which do support it.
3Demon (http://3Demon.net) supports a modest set of DX10 functionality, and is basically built upon Irrlicht. The thing is, and you can talk to spintz, it is a b**** to make a generic engine over top of DX10 that fits the Irrlicht paradigm.
TheQuestion = 2B || !2B
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

You can create the three windows in your app (using the windows API or other things) and pass the pointer to the windows as a parameter to endScene(). This will render the scene into that window. This allows to render the same scene in multiple views and on multiple screens.
dlangdev
Posts: 1324
Joined: Tue Aug 07, 2007 7:28 pm
Location: Beaverton OR
Contact:

Re: DX10 support & using Irrlict in a normal Windows GUI

Post by dlangdev »

d000hg wrote:In a current project, I am deciding if DX10 is the more suitable choice, based on it's extra shader functionality. Making the project Vista-only is OK.

So the first question is whether Irrlict even supports DX10?
Irrlicht has no DX10 support, though you may find its highly modified sibling Demon3D by Spintz has DX10 support as I've ran several tests on that codebase.

You may have to relax the DX10 requirement if you want to write code using the Irrlicht API.

Personally (and this is my very personal opinion) if you really need it to be DX10, you may have to look at other DX10 rendering engines out there. Send me a PM if you need more info about that.
Image
d000hg
Posts: 9
Joined: Tue Sep 02, 2008 8:35 pm

Post by d000hg »

hybrid wrote:You can create the three windows in your app (using the windows API or other things) and pass the pointer to the windows as a parameter to endScene(). This will render the scene into that window. This allows to render the same scene in multiple views and on multiple screens.
Sounds simple, thanks.
Post Reply