Windows, Linux, Mac OS X
Languages Written In:
- User Reviews
OGRE (Object-Oriented Graphics Rendering Engine) is a scene-oriented, flexible 3D engine written in C++ designed to make it easier and more intuitive for developers to produce games and demos utilising 3D hardware. The class library abstracts all the details of using the underlying system libraries like Direct3D and OpenGL and provides an interface based on world objects and other intuitive classes.
- Object-Oriented Design
- Plug-in Architecture
- Save/Load System
- Simple, easy to use OO interface designed to minimise the effort required to render 3D scenes, and to be independent of 3D implementation i.e. Direct3D/OpenGL.
- Flexible plugin architecture allows engine to be extended without recompilation
- Clean, design and full documentation of all engine classes
- Support for ZIP/PK3 for archiving
- Scriptable multipass rendering
- Material LOD
- Supports the complete range of fixed function operations such as multitexture and multipass blending, texture coordinate generation and modification, independent colour and alpha operations for non-programmable hardware
- Support for multiple material techniques
- Transparent objects automatically managed
- Font system: TrueType fonts and precreated textures
- 2D GUI System with Buttons, Lists, Edit boxes, Scrollbars, etc.
- Environment Mapping
- Lens Flares
- Particle System
- Motion Blur
- Particle Systems, including easily extensible emitters and affectors (customisable through plugins). Systems can be defined in text scripts for easy tweaking
- Support for skyboxes, skyplanes and skydomes, very easy to use
- Splines Biquadric Bezier patches for curved surfaces
- Can have an unlimited number of lights in the scene
- Supported through vertex and fragment programs.
- Shadow Mapping
- Shadow Volume
- Techniques supported: modulative stencil, additive stencil, modulative projective
- Multiple stencil shadow optimisations, including vertex program extrusion, smart light and shadow caster culling, integration with mesh LOD, zpass and zfail methods, 2-sided stencilling, scissor region clipping
- Texture shadows fade out at far distance
- Projective texturing automatically links with texture unit to a Frustum instance
- can register external texture sources in order to feed texture data in from another source
- Supports PNG, JPEG, TGA, BMP and DDS image files
- High Level
- Supports vertex and fragment programs (shaders), both low-level programs written in assembler, and high-level programs written in Cg or DirectX9 HLSL, and provides automatic support for many commonly bound constant parameters
- Supports GLSL
- Mesh Loading
- Hardware-accelerated skinning
- Flexible mesh data formats accepted
- Export from many modelling tools including Milkshape3D, 3D Studio Max, Maya, Blender and Wings3D.
- Occlusion Culling
- Highly customisable, flexible scene management, not tied to any single scene type. Use predefined classes for scene organisation if they suit or plug in your own subclass to gain full control over the scene organisation
- Hierarchical scene graph
- Scene querying features
- Inverse Kinematics
- Skeletal Animation
- Animation Blending Skeletal animation, including blending of multiple animations, variable bone weight skinning.
- Basic Physics
- Collision Detection
- Rigid Body
- Controllers allow you to easily organise derived values between objects
- Includes bindings for multiple 3rd party collision / physics systems (ODE, Novodex and Tokamak)
- Scripted material language allows you to maintain material assets outside of your code
- Scriptable multipass rendering
|License Name||Price in $US||Source Code Included?||Additional information|
|OGRE Unlimited License - An undisclosed fee is required, and the licensee continues having access to the source. This would be for people and businesses who would like to be able to modify the OGRE source but without having to make those modifications openly available|
Ok, so this isn't a Game Engine.
That said, it can be in minutes with the ever growing "Free" plug ins mostly/all open source too!
From Physics to sound there will be a plug in somewhere i'm sure.
I am working with ogre & a number of plug ins for Sound & Physics and i have to say,
using all 100% free stuff you can make a top quality game with this, some imagination & skill.
The 2 pics shown don't do much justice to the engines ability in my eyes.
I'm not sure its missing anything a High Quality game doesn't have, Bump/Normal mapping, Stencil shadows, lights..
Its all there...
And its a lot easier than a lot of other Game engines than i have used to set-up & learn & they aren't open source/Free either!
Oh, and the community is very supportive & helpful.
Just make sure you've read the manual & docs before you ask something basic & make yourself look like a noob :)
So, Go on, give it a try, you wont be disappointed!!
5/5 for Features
With these features and pay nothing for it, I couldn't ask for more.
I'm a XSI user so I have to mention that... This is the Only FREE 3D Engine with Proper exporter for XSI 4.x and 5.0!!!!!!
5/5 for Ease of Use
Well, I spent sometime to read the docos and configuring - setting up CodeBlock (I can't afford to buy Microsoft's VC++) and it's dependencies, compiling the source and etc etc etc.
It took quite a while to set up, but it's okay. After all, only through struggle we could find rest :)
5/5 for Stability and Performance
I'll find a way to crash the engine beside my poorly written code.
5/5 for Support
Well written documentations and tutorials, this is a BIG Plus. OGRE has a great learning curve for those who are not familiar with 3d engines, scenegraph, bsp, etc etc etc... but help can be found quickly on the forum or in the docos.
(considering that I've been using other 3d engines with poor documentations and tutorials scaterred all over the forum threads)
To sum up:
It's free, and able to use GCC, and works with sophisticated 3d packages like blender (Free too), maya, 3D studio max and Softimage.
Ogre == sex
There's a reason it's been at the top of the Open Source Engines list, and this particular engine delivers. It has mucho features, and can make nearly any game made with it look great. I also swear that I see the Ogre head in my sleep.
However take heed, as it isn't for the average newbie programmer. It can be difficult to set up, especially if you're used to simple engines such as Irrlicht. I even had to modify the sample project files to suit my needs, but it's worth it now. Also it only supports its own model format, but there are importers/exporters available for various 3D editors.
Other than the initial bump in the road, it's a very great engine. I highly recommend!
This engine is the best !! im developed a MMORPG with this engine and this is the best..!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ammm!!!you can visit my web www.inmedia.cjb.net!! no yet.. the web is in procces!!!lololololol!!! enjoy this great engine!!!!!!!!
Ogre 3D, the best 3D engine ever.
I have been using Ogre for more than 2 months now, and I must say it is very stable, extremely feature rich and very easy to use. It is very easy to learn Ogre because it is very Object Oriented. For example, if you have learnt well about one type of particle emmiter, you have already learnt about 90% of the rest of them. It heavily uses C++'s most important feature, object-oriented programming. I myself have tried other engines like Crystal Space, Panda 3D, Irllicht and Jolt 3D and they either produce too many bugs, have lack of documentation or just don't have the features you need. But, there are so many people using Ogre and contributing to it that if you want some feature to be added, its usually already added by another user. The fact that it is only a rendering engine doesn't make it worse than other engines. In fact, it makes it better because you have the freedom to choose you favourite physics, networking, pathfinding and other libraries that you might need. There's no question in the forum that's left unanswered. Ease of use is one of the things about Ogre that greatly impresses me. Creating an Entity is as simple as calling the function called createEntity(). Ogre also allows you to describe materials, overlays and GUIs in seperate scripts so that your code is not a big mess. Alternatively, if you want to, you can describe them in your code.
Apart from these adventages I have mentioned, there are a million others too. There isn't a better way of appreciating Ogre than using it, so give it a try!
OGRE is an excellent piece of software for learning. It is nicely designed and actively developed. Most engines die off after some time of development. But this doesn't seem to be the case for OGRE. It is probably the best open source graphics engine (not game engine) out there in terms of features and design.
However, OGRE is not designed for games. It is designed for graphics rendering and demo making. If you want to make a game, then I don't recommend using OGRE. Although there exists an engine (RealmForge GDK) that provides the components necessary for making games using OGRE as the rendering component, it is not recommended for serious game developers since each component (Physics, AI, etc) is developed separately and hence, things tend to get sloppy trying to make each component interact with each other.
On the other hand, if you just want to make a cool looking demo, create a simulation, or even just learn how an engine is designed, then OGRE might be a good choice.
As for OGRE as a graphics engine, it is relatively advanced. It tries to support the advanced features of the latest video cards, but at the same time providing backward compatibility with low-end cards, which is a good thing in most cases, although tradeoffs in doing so tend to affect performance.
For beginners, OGRE is relatively hard to set up initially, especially the fact that one would have to recompile the whole engine. Binary-only releases don't exist. OGRE has significant dependencies on 3rd-party libraries (for images, fonts, STL, etc.) in support of the open source concept.
Performance-wise, OGRE is not top-notch. It lacks OS-specific and processor optimizations (MMX, SIMD, 3DNow, etc.), which is hard to find in open source projects anyways. Most commercial engines do support these advanced optimizations, which leads to stellar performance.
The support is limited to forums. Support is excellent though, and you will most of the times get support from the lead developer himself.
If you wanna use Ogre in Linux(OpenGL) - it's not that you looking for. Ogre architecture just incompatible with OpenGL pipeline.
For OpenGL pipeline your program must working like that
Ogre not working like that, so it slow and have CPU lags, becose have blocked for a long time in swap_buffer.
But for Windows(DirectX) Ogre is probable very good.
A mature engine for mature developers
I highly recommend the OGRE engine, but do so with one caveat: it is very much intended for *mature* developers.
By 'mature', I mean that it is absolutely *not* designed for new C++ programmers looking to make their first game.
If the programmer is not familiar with:
- The in's and out's of their compiler's build settings and how to manipulate those settings properly
- The finer side of C++ (single/multiple inheritance, STL, abstract interfaces, templates)
- Design Patterns c/o the Gang-of-Four (patterns like Singleton, Creator, Controller, Dispatcher/Listener, to name a few), and when best to use them
- Intermediate- to Advanced-level graphics structures and algorithms (scenegraphs, octree/BSP culling, intricacies of a graphics pipeline, vertex/pixel shading)
- How to read and understand how a given library functions via an *unfathomably* large amount of documentation (API reference, manual, tutorials, samples) and source code
Then, frankly, this is not the graphics engine you are looking for. Learn them, love them, then come back to OGRE.
OGRE involves a *very* steep learning curve and, while the OGRE team is readily available via their forums (which are extremely active and helpful, I must say) and *gladly* assist new users with problems, they are often forced to recommend a change of engine to programmers who do not demonstrate (at least) a basic knowledge of the items listed above. I will not go so far as to say that it is difficult to use, but using it properly definitely requires more know-how than, say, the Irrlicht engine.
Having said all of that, we game programmers are *so extremely lucky* to have such a powerful, flexible, modern graphics engine available to us under ANY open-source license, let alone the extremely liberal LGPL. The term "object-oriented" is one that is tossed around very haphazardly by some libraries. Offenders claim to be OO, but often stray from their initial design principles as development continues. The first principle of OGRE is that it is not only *completely* object-oriented, but it is also *properly* object-oriented. Its very effective design is a result of the developers' years of experience in the software development industry. OGRE's developers have been doing it *right* from the very beginning. I cannot stress how much I respect and admire the OGRE team for their work. This is a graphics engine of the highest caliber.
If you have the guts to read through lots of documentation, ask a lot of questions, and make use of some of the most advanced techniques in both C++ and graphics programming, you have found your engine. Get to work!
OGRE is the way I choose to go
I've been using Ogre for a few months now.
And what really impressed me at the beginning is the very high quality of the design. The API documentation is at the same level of expectation; although the user guide and the tutorials could be more furnished.
For an open source engine, it's amazing to be able to count on the latest features like GLSL or Cg shaders.
As the engine has lots of features, it takes some times to enter into it for non-professional of the game industry. But once this step is done, it is a pleasure to use all its flexibility.
About performance, I was really amazed when I could first display half million triangles meshes and keeping a frame rate above 100 fps on a standard PC. Now I got used to it. ;-)
The support is very effective with the forum. You can usually expect to have a solution or an advice within 24h.
As a conclusion, Ogre is, for me, definitely the way to go for non-commercial or low budget 3D projects. The only thing missing is a high-end demo to show that it can easily compete with commercial engines.
Ogre has amazing capabilities, and is easy to use. Additionally, the ogre community if fair sized and always quick to provide help when needed. As a senior project Computer Science & Engineering Game Devolpment course at my University our group of 10 students was able to successfully develop two complete games within a 10 week period. This was done completely from scratch. Ogre's ease of use allowed fast development and its awesome features enabled remarkable results. Keep in mind that ogre is not a complete game engine. Support for sound, networking, etc. must be found elsewhere. The use of other libraries with ogre presented, for us, no difficulites whatsoever. Our team spent significant time researching available game engines and Ogre was undoubtedly superior.
Amazing Engine and Community
Reading my review keep in mind I have only had experience with OGRE and another Open-Source engine, Wild Magic (http://www.wild-magic.com/).
Coming from struggling with Wild Magic OGRE is a godsend. The engine is capable of from very pretty eyecandy, and seems too have pretty good performance.
The code is fully OO and very easy to get a grasp on. The design of this engine is so good that when you get a feel for it you can practically guess how to do things you havn't even learned yet.
I think the best feature of this engine however is the great community surrounding it. Very large, very active, and very friendly.
And of course, it is fully Open-Source and Free to use under LGPL (Which means you could use it as the rendering end of a commercial 3D game with no problems).
A++ engine :)
As stated by previous reviews, OGRE is a graphics engine, and a good one. Robust, fast, felixible and with quite a few features. But, you have read that already. So, let me say that although it is a graphics engine, and not a game engine, it still made our pick for creating a game.
Why? Well we took a look at all those other engines and yes physics, AI (so to speak) and networking are included in many... But, ask yourself this. Do they really do what you need? Pretty much unless you are creating a fairly simple game, the answer is going to be no.
So, if you are going to re-write or expand this or that part of a game engine, you might as well simply spend time tacking on tested/completed 3rd party libs to OGRE. A complete game engine does let you prototype out the gate faster. But, in the long haul, I doubt you will lose any time from choosing OGRE as integration is easy in comparison to expanding (hack) quite few of the engines I have seen.
To me the real advantage of some of the other game engines is in the tools / tool chain. That is they have more utilites like editors and such done and ready. But, truthfuly the community around OGRE is slowly and surely filling these gaps. I would not be surprised to see OGRE being comparible to a mid-grade commercial engine in all but cost in a year or so.
In short if you are starting development now, you would be foolish not to give it a look.
Excellent learning tool
When I started becoming interested in programming a 3D engine, I went to all the usual books and websites. My search quickly became frustrating as most of what I found only gave snippets or techniques for doing one thing. I wanted something to teach me how the engine components should interact with each other.
Then I found OGRE. Wow! I could not believe the depth of documentation and pure elegance of the code. I am a professional programmer, and I was embarrased by how sloppy and unstructured my code is compared to Steve Streeting's.
OGRE is loaded with rendering features (this is only a graphics engine). The strong point for me was the fact that all materials and rendering techniques are defined outside of the code in scripts. You can change how an object or group of objects looks with just a few kepresses, and no recompiling. Everything is optimized out the wazoo to give you super performance.
I definitely recommend OGRE to learn how a rendering engine should work, or even just to learn how to masterfully code.
The best 3d engine I've encountered
Ogre3d is the best 3d engine i've ever encountered. It has all features you could possibly want, an active user forum, and has been written very good. It's Fast and reliable and very easy to understand. If you ask a question on the forum The main developer of the engine will most probably answer. Where else do you get such support? I'd say it even beats commercial engines.
Evaluating most free 3D-Engines when our Team went from producing a simple Mod to a full flegded 3D-Game, we tried CS, Nebula and others, but finally stuck with OGRE. This was about one year ago, and I never rued our choice.
Ogre is not only easy too use, it also has all the features one could need, and is always developed further. The c++ code is easy to read and understand and offers greatest flexibility and also performance.
As Kencho said above, the forums and the help on the Ogre homepage exceeds others by far and makes Ogre what it is, a great 3D Engine for everyone.
Good Rendering Engine
As an Open Source 3d Rendering Engine OGRE is pretty good; but I don't see how it can be rated unparalleled quality for its features as a 3D Game Engine.
OGRE is only a Rendering Engine; it has no network support, built in physics (triangle collision detection), support for .x and .3ds files (without conversion), sound, etc. Therefore, it can not really be one of the best 3D Game Engines available.
That said, it is a good 3D Rendering Engine; and if you want to build a game using OGRE as the rendering sub-system it will certainly meet your needs.
Ogre is Wonderful
Ogre is a great rendering engine to use. It is highly customizable, easy to use, and the design is great. It's always easy to find what you're looking for, and if you want to know how something works you always have the source. Excellent job!
I have tried many many engines. From Genesis3D, to crystalspace, even TND. Nothing comes close to the feature list and ease of use of Ogre3D.
I think it is the first commercial quality open-source engine to arrive for quite some time :)