OGRE (Object-Oriented Graphics Rendering Engine)

Source Distribution README file

http://www.ogre3d.org

Summary

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.

Index Of Contents

What's New?

A summary of the new and altered features in this release.

Features

A summary of OGRE's main features.

Building the core OGRE libraries

This section covers building the libraries and plugins which make up the core OGRE system.

The Samples

Summarises the purpose of each of the samples provided with OGRE and the example application framework used to build them.

Tutorials

A set of tutorials designed to help you write your own OGRE applications.

The OGRE Manual

A descriptive reference to the major parts of the engine such as scripts.

API Reference

The full OGRE API documentation, as generated from the (heavily!) commented source.

Building Your Own Plugins

Advice on how to extend the engine by building plugins.

Frequently Asked Questions

If you're having problems, please consult the FAQ before asking the authors or posting in the forums.

If you are running on Linux, please also see the Linux README which will also assist you in Linux-specific issues. If you are running Mac OSX, read the Mac README.

Contributing

We welcome all contributions to OGRE, be that new plugins, bugfixes, extensions, tutorials, documentation, example applications, artwork or pretty much anything else! If you would like to contribute to the development of OGRE, please read the Contributor License Agreement, and then contact Steve Streeting at steve@stevestreeting.com if you agree with the terms. You can also submit patches against the CVS version, go the the web site and click on the 'Submit a Patch' link.

Keeping Up To Date

The best place to keep up to date with developments on OGRE is the Official Web Site. From there you can download the latest source code and documentation. You can choose between keeping bang up to date with CVS (Concurrent Versioning System) or by just getting the regularly released snapshots.

The changes included in this current version can be viewed on the ChangeLog.

Getting Support

Please use our extensive forums if you need help or think you may have found a bug. Go to the main web site and click on the Forums link.

Licensing

OGRE is distributed as free software under the GNU Lesser General Public License (see License.html). In summary this means that you can use OGRE for any purpose, provided that if you make changes to OGRE itself, you must release the changes back into into the public domain under the LGPL and make it clear where you have made the changes. Your own application can be distributed under any license you like.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA, or go to http://www.gnu.org/copyleft/lesser.txt.

In addition, if you use Ogre it would be nice if you displayed the Ogre logo somewhere in your application (start up or shutdown) for a minimum of 2 seconds. This splash-screen is displayed on the standard Ogre configuration dialog anyway, so if you use that you don't need to do anything extra. The logo is included in the download archive as Examples\Resources\ogrelogo.png.

Some textures distrubuted with Ogre are used with permission of www.The3dStudio.com and may not be re-distributed, sold, or given away except in the form of rendered images, animations, or real time 3D applications when credit is given to www.The3dStudio.com.

The 'Han Solo' TrueType font is © 2000 by Iconian Fonts - Daniel Zadorozny. This font may be freely distributed and is free for all non-commercial uses. This font is e-mailware; that is, if you like it, please e-mail the author at: iconian@aol.com.

Acknowledgements

The authors wish to credit the following for their work which is used in whole or in part in OGRE:

Artwork:

- Matt Anderson at www.The3dStudio.com who kindly gave permission for the use of some textures
- Jonathan Clark at http://www.jonathanclark.com for some Golgotha textures thet were released to the public domain.
- The 'Raptor Assault Gunboat' mesh & texture are © 2002 by Adrian 'cearny' Cearnău.
- The robot andn ninja mesh and animation are by Psionic, kindly made available from the CharacterFX site
- The 'Razor 2' mesh is by Dennis Verbeek
- Skyboxes in cubemapJS.zip are ©Johannes Schlörb, used with permission.

Included as source (modified as appropriate), and credited appropriately in the source files affected:

- Many of the maths/spatial routines are inspired by Dr D.H. Eberley, adapted from the 'free' parts of the Wild Magic engine 0.2 source provided with his book "3D Engine Design" (http://www.wild-magic.com/)
- Quake3 loading routines used a lot of information gleaned from Aftershock and Bart Sekura's ROGL
- Singleton template class is © Scott Bilas 2000 from Game Programming Gems
- Memory manager is based on MMGR © Paul Nettle at Fluid Studios

Source not modified, but linked in as part of the complete OGRE system:

- Compression is courtesy of the zlib compression library © 1995-1998 Jean-loup Gailly and Mark Adler (http://www.gzip.org/zlib)
- JPEG image loading is provided by jpeglib © 1991-1998, Thomas G. Lane & the Independent JPEG Group (http://www.ijg.org)
- PNG image loading comes from libpng © 1998, 1999 Glenn Randers-Pehrson (http://libpng.sourceforge.net)
- Integration with the Python scripting language is provided by the Boost Python library.
- ZIP archive support is © Gilles Vollant 1998 (http://www.winimage.com/zLibDll/unzip.htm)
- SDL is © (too many to list!) (http://www.libsdl.org)
- Freetype2 is © The Freetype Team (http://www.freetype.org)
- ODE is © Russel Smith (http://q12.org/ode/)

Standalone tools used:

- Document generation from C++ source code is by Doxygen © Dimitri van Heesch (http://www.doxygen.org)
- Milkshape3D for modelling & exporting (http://www.milkshape3d.com)

And I'd also like to thank the following just for inspiration, ideas, and pretty much anything else:

- Scott Meyers for his superb 'Effective C++' series
- Everybody who has ever written for Game Developer magazine, but particularly Chris Hecker and Jeff Lander whose work is consistently enlightening
- Michael Abrash for his 'Zen' books which inspired me to try graphics programming in the first place
- Everybody at SourceForge and VA Linux for providing fantastic facilities for developers with modest budgets
- Scott Adams (Dilbert) for providing a humourous distraction when I've had enough for the day
- My wife Marie for putting up with all this!

Copyright © 2003 by The OGRE Team