What version to choose?

You may be confused which version of Ogre to pick. We have several branches concurrently in active development, although our future is towards 2.1. The information below will help you to find the correct version for your needs:



Why choose it?


  • You need many objects (order of 10 000) per frame.
  • You want the huge performance boost in the above usecase. Your main target is Windows and/or Linux for now.

  • You like bleeding edge.

  • You don’t need the 1st and 3rd party plugins/components that haven’t been ported yet (like CEGUI, ParticleUniverse, Terrain Component, Volume Component, etc). Check the 2.0+ Forum as some of these plugins e.g. ParticleUniverse have been ported by community members.

  • You don’t care about Android support (or anything older than the iPhone 5S) for now and can wait for it.

For more details about the 2.1 state and frequently asked questions, see the Ogre 2.1 FAQ article.


  • You need the 1st and 3rd party plugins/components (CEGUI, ParticleUniverse, Terrain, Volume, etc.)
  • You target  mobile platforms (Android, iOS, WebGL, Windows Phone 8)
  • You only need a moderate about (order of 1000) of objects per frame
  • You want to use a tested version (as in Unit Tests)
  • You like to learn from Wiki code snippets and a lot of existing resources found online.
  • You are already used to Ogre or have a long-standing existing code base.

  • You need broad hardware support including DX9 and OpenGL 2.0 class Hardware


  • You are porting from 1.x to 2.1. Porting first to 2.0 as an intermediary / incremental step has proven to be a successful process. Ogre 2.0 completely rewrote the Compositor System. While Ogre 2.1 added the Hlms (High-level material system) system which heavily changed materials, added Items (which replace v1::Entity for faster performance). Porting first from 1.x to Ogre 2.0 gives a chance to test your system against a part of these changes to get them working correctly and give you more confidence later when porting from 2.0 to 2.1 and test for the remaining differences.

This version is not actively maintained and generally has fallen behind 1.10 and 2.1. For details see here.

Performance / Platforms / Render Systems



Supported OS

Recommended Render System


GPU bound

Windows, Linux, iOS, macOS / OSX

D3D11 or GL3+, Metal on iOS, Metal on macOS, GL3+ on macOS/OSX for old cards (see compatibility mode notes)


GPU bound

High API overhead

Windows, Linux, OS X, iOS, Android, Windows Phone

D3D9 on Windows, OpenGL on *nix, GLES 2 on Mobile


CPU bound

Windows, Linux, OS X, iOS, Android, Windows Phone, HTML5 (Emscripten)

D3D9 on Windows, GL3+ on *nix, GLES 2 on Mobile and HTML5

Material System / Instancing / Documentation / Threading







Physically Based Shading via user-friendly system HLMS (part of Ogre core)


Integrated (no need for Boost). For background resource loading, needs Boost/POCO/TBB/C++11.


Hand-written shaders, RTSS (Real-Time Shading System), Fixed Function Pipeline

Manual, via InstanceManager

For background resource loading, needs Boost/POCO/TBB.


Physically Based Shading (via HLMS Ogre component), Hand-written shaders, RTSS, Fixed Function Pipeline

Manual, via InstanceManager or InstanceGeometry (deprecated)

For background resource loading, needs Boost/POCO/TBB/C++11.