OGRE (Object-Oriented Graphics Rendering Engine)

The Sample Applications

http://ogre.sourceforge.net

The Samples

The samples provided show you the kind of thing you can do with OGRE. To be fair, we haven't ourselves done any major demos with it; after all we spend all our time writing the engine! So these demos are just short snippets showing you how quick it is to get an OGRE application up and running with little fuss.

All the samples use a couple of framework classes to make their jobs easier and the code shorter and more about WHAT you're rendering rather than HOW you're doing it. Feel free to reuse the framework there, which consists mainly of a base object called ExampleApplication. This handles all the engine initialisation and all you need to do is subclass it and override the createScene method to provide your own scene. You can optionally override any of the other methods if you wish to have more control over the scene. By default the camera is controllable via the standard freelook and WASD key combinations, but you can change this by replacing or subclassing the ExampleFrameListener class.

How do you find out what all the terms and classes mean? Take a look at the tutorials section for more information, and the API reference after this.

Here's a summary of the examples:

BezierPatchDemonstrates the use of bezier patches for approximating curved surfaces. Displays a single curved surface at a predefined subdivision level.

BSP

Demonstrates a specialisation of the SceneManager class for a very specific kind of scene - the indoor level as used by countless first-person shooter games. Loads Quake3Arena levels.
IMPORTANT NOTE: For copyright reasons no Quake3 data can be distributed with OGRE. You are expected to provide your own level data to use this example - edit the quake3settings.cfg file to specify the location of your pak0.pk3 file and the map you wish to load.

EnvMappingDemonstrates the environment mapping effect which can be applied to texture layers, together with the blending that can be used to combine multiple texture layers. Also now includes a few billboards as flare effects
LightingDemonstrates the use of dynamic coloured lights.
ParticleFXDemonstrates particle system effects, using predefined particle scripts.
SkeletalAnimationDemonstrates skeletal animation where a series of bones are used to animate a mesh (in this case a walking robot)
SkyPlaneShows how a skyplane can be used, i.e. a fixed camera-relative plane which can be used to create a flat sky.
SkyBoxShows how a skybox is used, creating a complete wrap-around sky
SkyDomeDemonstrates the skydome feature, an illusion of a curved dome above the camera displaying the sky.
TransparencyShows what happens when you apply scene-level transparency to an object, i.e. not just blending between texture layers onthe same object by blending new objects with those already in the scene.
TextureFXA demo of a few texture effects (scrolling, scaling, rotating) that can be done with Ogre's 'Controller' architecture, a way of using input values from one object (in this case time) to affect another (in this case texture coordinates) by translating them through a function. This could be as simple as a scale factor, or be a little more complex such as a wave function.

All the examples are controlled as follows:

MouseFreelook

W or Up Arrow

Camera forward

S or Down ArrowCamera backwards
ACamera strafe left
DCamera strafe right
PageUpCamera ascend
PageDownCamera descend
O & PYaw the root scene node (and thus all the movable objects in the scene)
I & KPitch the root scene node (and thus all the movable objects in the scene)
FToggle frame rate stats on/off

Making your own applications

Take a look at the tutorials, this is the best place to start to learn OGRE. Note that you must include the Ogre.material, Ogre.overlay and sample.fontdef in one of your application's resource locations (see the tutorials for more info about resource locations) since these provide core scripts for the system.

 

Back to Readme.html

Copyright © 2002 by The OGRE Team