Note: Ogre Mage has been deprecated. It has been superceded by Mage
What is Ogre Mage?
Ogre Mage is game engine framework built around Ogre.
Specifically, Mage includes a number of components necessary for creating a complete
game engine (using Ogre for the graphics component) and provides the "glue code" that
ties all the components together. The other components include physics, audio, game
object management, scripting, and hopefully networking and AI. Mage is designed to be
abstract enough to be used with a variety of game types, although implementations may
be built on top of it to specialize it for a particular game type.
Ogre Mage uses a plug-in architecture like the one in Ogre, so that developers can use
all or parts of the game engine and customize the rest. The only requirement is that
the developer provide a wrapper around the library they want to use so that it matches
the Mage interface. The current implementation includes fmod and OpenAL plugins for the
audio component and an ODE plugin for the physics component.
Note that Ogre Mage API is very unstable right now. Play around with it, modify it,
but don't be surprised if everything is changed frequently and unexpectedly. On a related
note, expect this document to change significantly.
Design Goals
The core goals:
- Clean and simple API
- Reasonably fast
- Little or no modification to Ogre itself
- A robust implementation for audio, physics (including collision detection), and scripting
- A generic interface for supporting most types of games
- A pluggable architecture so developers can customize their own components
- The ability to exclude components
Possible future goals:
- networking and AI components
- implementations of modules specialized for different game types
Motivations
Since I have to develop a game engine either way and I have never attempted
this before, I realized a community-driven approach would give me the greatest
chance of success. My hope is that Ogre Mage will evolve into something as
high-quality as Ogre itself. Also, Ogre is such a great graphics engine, and
it's a shame when people pass it over because it's not a complete game engine.
Ogre Mage is an attempt to alleviate this situation.
License
Ogre Mage is released under the same license as Ogre, the LGPL.
|