Video Games

OGRE – Object-Oriented Graphics Rendering Engine

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 applications utilising hardware-accelerated 3D graphics.

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.

Whilst OGRE is not a game engine it can be used to make games. OGRE is simply a top class rendering engine. OGRE can be used to create games, simulations, business applications, anything you want.

OGRE has a very active and vocal community. It has been used in a number of open source games including Rigs of Rods, Shadow Run – Awaken, Trinity Reign, as well as commercial games such as Ankh, Jack Keane, Venetica and Torchlight.

Features include:

  • Extensible example framework makes getting your application running is quick and simple.
  • Common requirements like render state management, spatial culling, dealing with transparency are done for you automatically saving you valuable time.
  • Clean, uncluttered design and full documentation of all engine classes.
  • Proven, stable engine used in several commercial products.
  • Direct3D and OpenGL support.
  • Powerful material declaration language allows you to maintain material assets outside of your code.
  • Supports vertex and fragment programs (shaders), both low-level programs written in assembler, and high-level programs written in Cg, DirectX9 HLSL, or GLSL and provides automatic support for many commonly bound constant parameters like worldview matrices, light state information, object space eye position etc.
  • 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 or for lower cost materials.
  • Multiple pass effects, with pass iteration if required for the closest ‘n’ lights.
  • Support for multiple material techniques means you can design in alternative effects for a wide range of cards and OGRE automatically uses the best one supported.
  • Material LOD support; your materials can reduce in cost as the objects using them get further away.
  • Load textures from PNG, JPEG, TGA, BMP or DDS files, including unusual formats like 1D textures, volumetric textures, cubemaps and compressed textures (DXT/S3TC).
  • Textures can be provided and updated in realtime by plugins, for example a video feed.
  • Easy to use projective texturing support.
  • Sophisticated skeletal animation support:
    • blending of multiple animations with variable weights.
    • variable/multiple bone weight skinning.
    • software and hardware-accelerated skinning pipelines with intelligent buffer sharing.
    • manual bone control.
    • Configurable interpolation modes, accuracy vs speed tradeoffs.
  • Flexible shape animation support:
    • Morph animation for legacy applications where you wish to perform simple linear blends between shape snapshots.
    • Pose animation for modern shape animation, allowing you to blend many poses at variable weights along a timeline, for example expression / mouth shapes to perform facial animation.
    • Both techniques can be implemented in hardware and software depending on hardware support.
  • Animation of SceneNodes for camera paths and similar techniques, using spline interpolation where needed.
  • Generic animation tracks can accept pluggable object adaptors to enable you to animate any parameter of any object over time.
  • 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.
  • Several example plugins demonstrate various ways of handling the scene specific to a particular type of layout (e.g. BSP, Octree).
  • Hierarchical scene graph; nodes allow objects to be attached to each other and follow each others movements, articulated structures etc.
  • Multiple shadow rendering techniques, both modulative and additive techniques, stencil and texture based, each highly configurable and taking full advantage of any hardware acceleration available.
  • Scene querying features.

Support: Manual
Developer: Brian Johnstone, Assaf Raman, Holger Frydrych, Dave Rogers, Noam Gat, Nir Hasson, Steve Streeting
License: MIT License


OGRE is written in C++. Learn C++ with our recommended free books and free tutorials.

Return to Games Engines

Popular series
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
GamesAwesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series.
Artificial intelligence iconMachine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source.
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Linux Around The WorldLinux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments