OGRE Engine
Encyclopedia : O : OG : OGR : OGRE 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.
The engine is licensed under the LGPL and as a result has a very active community. It has been used in some commercial games. It was [Sourceforge's project of the month in March 2005].
1.0.0 "Azathoth" was released in February 2005, the current release in the 1.x.y series is 1.2.0 "Dagon" (March 2006).
Features
Ogre is a scene graph based engine, and with support of a wide variety of scene managers, most notably Octree, BSP and a Paging Landscape scene managers. Other scene managers are being in developement at the moment.
A full overview of the features provided by OGRE can be found [here].
Google Summer of Code 2006
OGRE got 6 slots in google summer of code 2006 to enhance the existing engine and add new features to it, these entries are:Tool for one-step solution for artists
RmOgreExporter (v2), FxOgreExporter
Instancing, Crowd Rendering.
Extending, Demo-ing, and Documenting the Shadow Mapping System
Scene Management
Billboard Clouds
Major version naming
The version branch names, Hastur for 0.15.x, Azathoth for 1.0.x, Dagon for 1.1.x have been named after members of an ancient race of fearsome deities called the Great Old Ones in the mythology of H.P. Lovecraft. More information about the Mythos can be found at the Cthulhu Mythos page. It can be concluded from this that some of the authors are huge H.P. Lovecraft fans. Or that they just think the names sound good. [link]
History
A brief history of OGRE, and its milestones:
- 1999ish
- Sinbad realises that his 'DIMClass' project, a project to make an easy to use object-oriented Direct3D library, has become so abstracted that it really doesn't need to be based on Direct3D any more. Begins planning a more ambitious library which could be API and platform independent.
- 25 February 2000
- Sourceforge project registered, OGRE name coined. No development starts due to other commitments but much pondering occurs.
- October 2000
- Full-on design starts, refactoring of DIMClass begins.
- December 2000
- Major design pieces are in place, main classes like SceneManager, RenderSystem, SceneNode are all identified concepts with CRC cards to call their own
- February 2001
- First platform manager complete (Win32), D3D7 is now the first rendersystem
- February 2001
- OGRE becomes completely dynamically loaded, rendersystems & platform managers as plugins
- 4 March 2001
- First test render of refactored OGRE system
- 30 March 2001
- Started using Doxygen instead of ccdoc to generate API docs
- 1 April 2001
- Made an important design decision to separate the class hierarchies of spatial structures (SceneNode) and scene contents (MovableObject) and join them through attachment to reduce dependencies and improve flexibility
- May 2001
- Entity / SubEntity / Mesh / SubMesh system created
- 13 June 2001
- FrameListener and FrameEvent introduced
- 3 July 2001
- Ogre 0.6 released
- 17 July 2001
- Moved away from 4x4 matrices in nodes to separate position / orientation / scale, and switched to quaternions for all rotations
- September 2001
- Bezier patches and multitexture / multipass blending work
- November 2001
- skyboxes, skydomes and skyplanes
- December 2001
- BSP support finished
- 14 January 2002
- Controllers introduced
- Feb 2002
- cearny joins the core team
- March 2002
- Ogre 0.98b - Material scripts make their first appearance. ROAM landscape engine appears (later dropped in favour of geomipmapping). Billboards. First time STLport is required because of increased STL compliance.
- April 2002
- temas joins the core team
- June 2002
- Ogre 0.99b - Particle systems and misc stuff
- September 2002
- Ogre 0.99d - Linux support, OpenGL renderer, skeletal animation, Milkshape exporter, Codec structures
- October 2002
- janders joins the core team
- October 2002
- Ogre 0.99e - XMLConverter appears, octree scene manager appears, D3D8 renderer, spline animation interpolation, font rendering via Freetype
- December 2002
- Mesh LOD, Geomipmapping terrain, stencil operations
- January 2003
- First release of Blender exporter
- Feb 2003
- Ogre 0.10.0 (version reformatted) - 3DS Max exporter, D3D9 renderer
- Mid 2003
- cearny & janders leave project (inactive)
- June 2003
- Ogre 0.11.0 - SceneQuery added, ODE collision demonstrated in BspCollision, Maya and Wings exporters, lots of small enhancements
- May 2003
- _mental_ joins the core team
- September 2003
- Ogre 0.12.0 - hardware buffer interfaces, vertex declarations, complete geometry system overhaul. First time we branched the codebase into 'maintenance' and 'development' branches
- January 2004
- Ogre 0.13.0 - major material overhaul, vertex & pixel shader support for assembler (D3D & GL), Cg and HLSL, XCode support
- May 2004
- Ogre 0.14.0 - shadows, hardware skinning, projective texturing
- July 2004
- wumpus joins the core team
- October 2004
- Ogre 0.15.0 - binary mesh format made more flexible, GLSL support, Radian/Degree classes,
- November 2004
- SoftImage agree to sponsor the OGRE project and allow free access to XSI SDK.
- February 2005
- Ogre v1.0.0 Final Released - resource system overhaul, hardware pixel buffers, HDR, CEGui, XSI exporter
- March 2005
- Ogre is 'Project of the Month' on Sourceforge
- July 2005
- Jeff 'nfz' Doyle joins the OGRE Team
- March 2006
- Ogre 1.2RC1 "Dagon" is released
- 17 April 2006
- Ogre 1.2RC2 "Dagon" is released
- 07 May 2006
- Ogre 1.2 "Dagon" is officialy released
See also
External links
- [OGRE Project Site]
- [OGRE Wiki]
- [OGRE Forums]
- [What is Ogre?]
- [Engine detail and reviews by users]
- [YAKE, a Game Engine using OGRE]
- [Emma3D, an internet-based media framework using OGRE]
- [Visual3D Architect .NET, Game Engine using OGRE port]
From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.
