Productivity
features - Simple, easy to use OO interface designed to minimise the
effort required to render 3D scenes, and to be independent of 3D implementation
e.g. Direct3D/OpenGL/Glide etc.
- Extensible example framework makes getting
your application running is quick and simple
- Common requirements like
render state management, hierarchical culling, dealing with transparency are done
for you automatically saving you valuable time
- Clean, uncluttered design
and full documentation of all engine classes
Platform
& 3D API support - Direct3D and OpenGL support
- Windows (all
major versions), Linux and Mac OSX support
- Builds on Visual C++ 6 (with
STLport), Visual C++.Net (with STLport), Visual C++.Net 2003
- Builds on
gcc 3+ on Linux / Mac OSX
Material / Shader support - Load
textures from PNG, JPEG or TGA files, MipMaps generated automatically, resizes
maps to align with hardware requirements
- Procedural texture coordinate
generation (e.g. environment mapping) and modification (scrolls, warps, rotations)
- Unbounded
number of texture layers with many texture blending effects, animated textures
- Multitexturing
hardware used to best effect automatically, combined with automatic fallback to
mulitpass rendering
- Object transparency and other scene-level blending
effects
- All defineable through text scripts to allow you to set up &
tweak advanced materials without recompiling
Meshes - Flexible
mesh data formats accepted
- Export from Milkshape3D direct to OGRE .mesh
and .skeleton format
- Skeletal animation (including blending of multiple
animations)
- Biquadric Bezier patches for curved surfaces
- Progressive
meshes
Scene Features - 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
- Generic SceneManager hierarchically
culls by bounding volumes
- Example plugin (BspSceneManager) specialises
to allow fast indoor renders, loading Quake3 levels inc. shader script parsing
support
- Hierarchical scene graph; nodes allow objects to be attached to
each other and follow each others movements, articulated structures etc
- Scene
querying features
Special Effects - Particle
Systems, including easily extensible emitters and affectors (customisable through
plugins). Systems can be defined in text scripts for easy tweaking. Automatic
use of particle pooling for maximum performance
- Support for skyboxes,
skyplanes and skydomes, very easy to use
- Billboarding for sprite graphics
- Transparent
objects automatically managed (rendering order & depth buffer settings all
set up for you)
Misc features - Common resource
infrastructure for memory management and loading from archives (ZIP, PK3)
- Flexible
plugin architecture allows engine to be extended without recompilation
- 'Controllers'
allow you to easily organise derived values between objects e.g. changing the
colour of a ship based on shields left
- Debugging memory manager for identifying
memory leaks
- ReferenceAppLayer provides an example of how to combine OGRE
with other libraries, for example ODE for collision & physics
- XMLConverter
to convert efficient runtime binary formats to/from XML for interchange or editing
Exporters - 3D
Studio Max (meshes and animation)
- Milkshape 3D (meshes and animation)
- Blender3D
(meshes)
- Wings3D (meshes)
- VRML97 (meshes)
- Maya (meshes)
|