Irrlicht without GUI

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
Post Reply
Donner
Posts: 87
Joined: Fri May 18, 2007 11:27 am

Irrlicht without GUI

Post by Donner »

Hi,

just the following questions: Would Irrlicht be faster/smaller without GUI?

Is it possible to compile Irrlicht without GUI and to use another GUI to draw Images etc.? Would it have some vantages?

Would it be better to compile Irrlicht as a simple Graphics Engine (without collision detection, gui, xml reader and so on)?

Woldn't it be better to concentrate on the development of the graphics system and to improve it?


I'm really interested in the answers and I hope, this won't start a "flamewar".


D.
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

You can certainly use a different GUI library with Irrlicht. I think CEGUI lib even support Irrlicht officially or something.
And I'd also suggest not to remove anything unless it really is a problem and use the normal release build unchanged.
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

If you're not actually using parts of irrlicht then i don't think there's any performance loss for those bits actually being present in the library.

For example if you don't want to GUI because you don't actually use it in any way then irrlicht just won't run the update functions for the GUI presumably, or would do a very minimal amount of work due to the fact that the GUI has no elements to update/render. Similarly for the XML reader, that's not going affect performance at all if you don't use it.

But i imagine it would shrink the size of the DLL if you could compile it without certain bits, though i don't know by how much, probably not a huge amount so the huge amount of work it would take would be pretty pointless i imagine.

If you're hellbent on trying this out for yourself you could go ahead and remove all references to the stuff you don't want in the engine and then recompile it, it would take a long time and possibly cause a lot of hard to detect bugs but it's very possible. But then you'd basically be stuck with that version of irrlicht forever. It would be very hard to bring your edited version of irrlicht up to date with future releases. You'd either have to find all the changes in the new version and apply them to your edited version or re-edit the new release to get all the crap out of it again. So really it's not the best idea.

But i imagine you were hoping the irrlicht devs would take your idea on board and do it for you. Certainly they're happy to take suggestions and will implement decent ideas i'm sure but i don't think they'll go for this one because it would take a lot of effort and not necessarily reap any rewards for anyone. Plus i'm sure they've considered it before and decided against it, i think it's certainly been suggested before anyway.
Image Image Image
Dorth
Posts: 931
Joined: Sat May 26, 2007 11:03 pm

Post by Dorth »

...
...
...
or comment "#define _IRR_COMPILE_WITH_GUI_" in IrrCompileConfig.h where you can also enable or disable most of Irrlicht.
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

That might work also... :oops:

Clever devs :D
Image Image Image
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

Dorth wrote:...
...
...
or comment "#define _IRR_COMPILE_WITH_GUI_" in IrrCompileConfig.h where you can also enable or disable most of Irrlicht.
LOL..

By the way, because Irrlicht is a DLL doesn't things you don't use aren't linked or something like that?

P.S
@JP: He can also make a patch with his changes and apply on future releases so updates won't be a trouble :wink: .
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
Dorth
Posts: 931
Joined: Sat May 26, 2007 11:03 pm

Post by Dorth »

MasterGod (man, I hate that nick), you are thinking of a static linked library, per opposition to a Dynamic Linked Library. A dll will pack everything in case you need it, since it doesn't know what you'll use.
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

Dorth wrote:MasterGod (man, I hate that nick), you are thinking of a static linked library, per opposition to a Dynamic Linked Library. A dll will pack everything in case you need it, since it doesn't know what you'll use.
Thanks. I did confused the two.

P.S
I thought of it about 8 years ago..But you can just call me M.G 8)
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
Post Reply