Ogre Vs Irrlicht

Started by
11 comments, last by Zahlman 12 years, 5 months ago
So long as both software are free, which one would you give more credits to?
And as I can interpret from their license claims, you can modify anything of it and sell your product made with it without royalty.
Is that right?
Thanks
Jack
Advertisement
1. Irrlicht have a clean design and is very fast but limited to a few types of games.
2. Ogre is harder to learn than both DirectX and OpenGL and the performance is horrible from the object oriented design.

As long as you don't modify the engine, there is no problem with selling the games. If you modify an open source engine, people might ask you for the source code to the modified engine.

So long as both software are free, which one would you give more credits to?
And as I can interpret from their license claims, you can modify anything of it and sell your product made with it without royalty.
Is that right?
Thanks
Jack


Irrlicht is a very good choice for people who need to get something up and running fast, but it doesn't offer any real next-gen features out of the box. It is built in such a way however that users can easily extend the engine (either by modding it or by writing plugins) with next-gen features if they want to, but you really need to know what you're doing
Irrlicht also supports a very wide range of operating systems and hardware platforms, so it's perfectly suited for pc-based games (even for legacy hardware) and mobile games
Personally I use Irrlicht for prototyping and quick demos and implementations besides my own engine, and I would really recommend it

I don't have that much experience with OGRE, so I can't really help you out there, but from my little experience I can tell it's a lot more intimidating to build something with, and the documentation provided is not always that clear
Last time I used OGRE they provided this demo framework for all their tutorials, which was a major pain if you wanted to implement something serious since they never quite gave a clear explanation of writing applications without it, but I don't know if they still do this

EDIT:
About licensing, irrlicht is distributed under the zlib and OGRE under the MIT license, which are both very permissive licenses which allow you to modify the source and distribute it in any way you want, as long as you don't claim you wrote the original software, and as long as you leave the original copyright notice intact

EDIT2:
@Dawoodoz: Irrlicht definitely is not limited to a few certain game types, I'm an active member of the irrlicht forums since 2007 and in that time I've seen a vast amount of different games pass by including racing games, FPSes, RPGs, puzzle games, minecraft clones, etc.
Also I can't really speak about the performance of OGRE since I haven't really tested it that much, but claiming that an object-oriented design is causing bad performance is just ridiculous (irrlicht has an OO-design too you know)

I gets all your texture budgets!


Also I can't really speak about the performance of OGRE since I haven't really tested it that much, but claiming that an object-oriented design is causing bad performance is just ridiculous (irrlicht has an OO-design too you know)


Yes, but Irrlicht do it the right way while Ogre go too far with class inheritance and LUA.

Edit:
Irrlicht have a few classes with names that I can understand while Ogre's classes look like something internal from a file parser.
http://irrlicht.sourceforge.net/docu/annotated.html
http://www.ogre3d.org/docs/api/html/annotated.html
Oh boy it's this thread again...

Anyway, it really comes down to what you are trying to do. A simple game where you don't need many advanced features and want to spend more time on design, go for Irrlicht. It is very stable, and is a full game engine, meaning input, collision, an event loop, etc. It can also be extended with plugins, and you can add next-gen effects with shaders. OGRE is JUST a graphics engine. Nothing more. The examples, however, use OIS for input because they fit well together and are made by the same people. Also, with ogre, there is only one model format it supports, and you have to write a config file for almost everything you can think of. That, however, makes it more maintainable for large projects.

In the field of documentation, both are documented decently, though irrlicht comes with standalone and comprehendable examples, while OGRE's examples use it's own framework/architecture, and some plugin system where all the examples are plugins to the SampleBrowser. Quite confusing if you're just starting out. Also, it has NO tutorials whatsoever about how to get your own application up and running.

All in all, it comes down to what you are making. Irrlicht is easier to learn and handles more things for you, while OGRE is very difficult and is ONLY a rendering engine, but more maintainable and MUCH more powerful.

1. Irrlicht have a clean design and is very fast but limited to a few types of games.
2. Ogre is harder to learn than both DirectX and OpenGL and the performance is horrible from the object oriented design.


Is this supposed to be flamebait?
Anyway, Ogre's performance is certainly not at all horrible and it's easy to learn, too.

API-wise, I don't even see any big differences between Irrlicht and Ogre. Both use a SceneManager and your game's main job will be to add and remove SceneNodes at the appropriate times either way. In Irrlicht you create a rendering device which holds the SceneManager, in Ogre you create the 'Root' class which holds a RenderSystem and the SceneManager (slightly cleaner imho).

What does win me over to Ogre are the high quality Add-Ons: there's a paging terrain renderer, a sky and wheather simulator with volumetric could rendering (SkyX), a very pretty water rendering module (Hydrax) and plugins that integrate Bullet, Newton or ODE.

Check out the game Torchlight on Steam, it uses Ogre. Or Dungeons, which uses Mogre - that is Ogre controlled via a .NET application.
Professional C++ and .NET developer trying to break into indie game development.
Follow my progress: http://blog.nuclex-games.com/ or Twitter - Topics: Ogre3D, Blender, game architecture tips & code snippets.

In the field of documentation, both are documented decently, though irrlicht comes with standalone and comprehendable examples, while OGRE's examples use it's own framework/architecture, and some plugin system where all the examples are plugins to the SampleBrowser. Quite confusing if you're just starting out. Also, it has NO tutorials whatsoever about how to get your own application up and running.

It has, they can be found here.

What's your experience level? What features are you looking for?

[quote name='keelx' timestamp='1318803840' post='4873239']
In the field of documentation, both are documented decently, though irrlicht comes with standalone and comprehendable examples, while OGRE's examples use it's own framework/architecture, and some plugin system where all the examples are plugins to the SampleBrowser. Quite confusing if you're just starting out. Also, it has NO tutorials whatsoever about how to get your own application up and running.

It has, they can be found here.

What's your experience level? What features are you looking for?
[/quote]

Firstoff, I'm not OP.
Most of those tutorials still use the framework. They only have a few tutorials that don't use the framework. But I guess I just never got that far into OGRE.
I needed to make this choice a while back - I wanted to do a top-down game similar to commandos but more fast-paced and using a 3D engine. I took a look at both and settled on Ogre - to be honest, I cannot remember exactly why I chose it over Irrlicht. I think it had something to do with the site, forums and larger array of Ogre games I ran. I don't know. I think the design philosophy of Ogre appealed to me more, because the two do differ quite a bit in that regard.

Anyway, I did not regret that choice. I completed the game engine in about 9 months, and I have to say that I really enjoyed working with Ogre. To set up a simple project, Ogre requires *way* more overhead than Irrlicht - it's much the way that Direct3D compares to OpenGL... you have a load of setup to do before anything is up and running, but once that is done, you are rewarded later.

This comes down to preference and I'm sure Irrlicht is a great tool to use - as for Ogre, well I just want to raise the following points:

  • As has been rightfully said, Ogre is only a rendering engine - you will still need things like GUI, IO (although an adequate one is included with the ogre source), audio, physics (if you choose to use them) and other libraries. Fortunately however, good libraries are available and ogre offers great plugins. But be prepared for having to make a lot of choices and learn a lot of libraries. Or you can always roll your own.
  • To add to the previous point, be aware that Ogre most certainly will not hold your hand with respect to any game logic. Although this means you will have to implement things such as collision detection by hand (and will require some knowledge of graphics, vectors and so on) , it also means that it really frees you to make any kind of game you like!
  • A note on object orientation - Yes, Ogre is built very heavily with OOP in mind. Knowledge of design patterns will therefore come on very handy and your grasp on OOP must be good (although honestly, these days I think a good understand of OOP is almost mandatory). This is what it is. I like it because it keeps things neat and I personally feel that the library is concise and very clear to use once you get used to it. Other people feel that object orientation gets pushed too far and that it is at times unnecessary. I disagree, but if you feel that way, Ogre may annoy you.
  • Finally, and relating to that... I have also been told that Ogre offers poor performance - usually by the kind of people who take immense pride in engines they have written by hand using OpenGL or Direct3D. Stuff and nonsense though - the engine performs well and is highly customisable, at least in my experience. It seems as if the people who *don't* use Ogre say this, which is rather ironic.

Well... there's my Ogre rant. I would go for that, and will personally use Ogre again for future 3D projects.... But I think you'll do well with either choice - I wish you luck :)

[quote name='Mussi' timestamp='1318827112' post='4873320']
[quote name='keelx' timestamp='1318803840' post='4873239']
In the field of documentation, both are documented decently, though irrlicht comes with standalone and comprehendable examples, while OGRE's examples use it's own framework/architecture, and some plugin system where all the examples are plugins to the SampleBrowser. Quite confusing if you're just starting out. Also, it has NO tutorials whatsoever about how to get your own application up and running.

It has, they can be found here.

What's your experience level? What features are you looking for?
[/quote]

Firstoff, I'm not OP.
Most of those tutorials still use the framework. They only have a few tutorials that don't use the framework. But I guess I just never got that far into OGRE.
[/quote]
I'm sorry I wasn't very clear in my post, the questions were aimed at the OP.

This topic is closed to new replies.

Advertisement