OGRE  master
Object-Oriented Graphics Rendering Engine
General

Classes

struct  Ogre::AlignedAllocator< T, Alignment >
 STL compatible wrapper for AlignedMemory. More...
 
class  Ogre::AlignedMemory
 Class to provide aligned memory allocate functionality. More...
 
class  Ogre::Any
 Variant type that can hold Any other type. More...
 
struct  Ogre::Box
 Structure used to define a box in a 3-D integer space. More...
 
class  Ogre::Codec
 Abstract class that defines a 'codec'. More...
 
class  Ogre::ColourValue
 Class representing colour. More...
 
class  Ogre::ConfigDialog
 Defines the behaviour of an automatic renderer configuration dialog. More...
 
class  Ogre::ConfigFile
 Class for quickly loading settings from a text file. More...
 
class  Ogre::DefaultWorkQueueBase
 Base for a general purpose task-based background work queue. More...
 
class  Ogre::DynLib
 Resource holding data about a dynamic library. More...
 
class  Ogre::DynLibManager
 Manager for Dynamic-loading Libraries. More...
 
class  Ogre::Exception
 When thrown, provides information about an error that has occurred inside the engine. More...
 
class  Ogre::ExceptionFactory
 Class implementing dispatch methods in order to construct by-value exceptions of a derived type based just on an exception code. More...
 
class  Ogre::FactoryObj< T >
 Abstract factory class. More...
 
class  Ogre::FileNotFoundException
 
struct  Ogre::FrameEvent
 Struct containing information about a frame event. More...
 
class  Ogre::FrameListener
 A interface class defining a listener which can be used to receive notifications of frame events. More...
 
class  Ogre::InternalErrorException
 
class  Ogre::InvalidCallException
 
class  Ogre::InvalidParametersException
 
class  Ogre::InvalidStateException
 
class  Ogre::IOException
 
class  Ogre::ItemIdentityException
 
class  Ogre::Log
 Log class for writing debug/log data to files. More...
 
class  Ogre::LogListener
 
class  Ogre::LogManager
 The log manager handles the creation and retrieval of logs for the application. More...
 
class  Ogre::NameGenerator
 Utility class to generate a sequentially numbered series of names. More...
 
class  Ogre::ParamDictionary
 Class to hold a dictionary of parameters for a single class. More...
 
class  Ogre::ParameterDef
 
class  Ogre::PlatformInformation
 Class which provides the run-time platform information Ogre runs on. More...
 
class  Ogre::Plugin
 Class defining a generic OGRE plugin. More...
 
class  Ogre::Profile
 An individual profile that will be processed by the Profiler. More...
 
struct  Ogre::ProfileFrame
 Represents the total timing information of a profile since profiles can be called more than once each frame. More...
 
struct  Ogre::ProfileHistory
 Represents a history of each profile during the duration of the app. More...
 
class  Ogre::ProfileInstance
 Represents an individual profile call. More...
 
class  Ogre::Profiler
 The profiler allows you to measure the performance of your code. More...
 
class  Ogre::ProfileSessionListener
 ProfileSessionListener should be used to visualize profile results. More...
 
class  Ogre::RenderingAPIException
 
struct  Ogre::RenderWindowDescription
 Render window creation parameters. More...
 
class  Ogre::Root
 The root class of the Ogre system. More...
 
class  Ogre::RuntimeAssertionException
 
class  Ogre::Serializer
 Generic class for serialising data to / from binary stream-based files. More...
 
class  Ogre::SharedPtr< T >
 
class  Ogre::SimpleParamCommand< _Class, Param, getter, setter >
 Generic ParamCommand implementation stores pointers to the class getter and setter functions. More...
 
class  Ogre::SimpleParamCommand< _Class, const String &, getter, setter >
 specialization for strings More...
 
class  Ogre::Singleton< T >
 Template class for creating single-instance global classes. More...
 
class  Ogre::StringConverter
 Class for converting the core Ogre data types to/from Strings. More...
 
class  Ogre::StringInterface
 Class defining the common interface which classes can use to present a reflection-style, self-defining parameter set to callers. More...
 
class  Ogre::StringUtil
 Utility class for manipulating Strings. More...
 
struct  Ogre::TRect< T >
 
class  Ogre::UnimplementedException
 Template struct which creates a distinct type for each exception code. More...
 
class  Ogre::WorkQueue
 Interface to a general purpose task-basedbackground work queue. More...
 

Macros

#define OGRE_EXCEPT(...)   OGRE_EXPAND(OGRE_EXCEPT_CHOOSER(__VA_ARGS__, OGRE_EXCEPT_3, OGRE_EXCEPT_2)(__VA_ARGS__))
 
#define OGRE_EXCEPT_2(code, desc)   Ogre::ExceptionFactory::throwException(code, desc, __FUNCTION__, __FILE__, __LINE__)
 
#define OGRE_EXCEPT_3(code, desc, src)   Ogre::ExceptionFactory::throwException(code, desc, src, __FILE__, __LINE__)
 
#define OGRE_EXCEPT_CHOOSER(arg1, arg2, arg3, arg4, ...)   arg4
 
#define OGRE_EXPAND(x)   x
 

Typedefs

typedef ::std::hash< StringOgre::_StringHash
 
typedef uint32 Ogre::ABGR
 
typedef std::map< String, StringOgre::AliasTextureNamePairList
 Alias / Texture name pair (first = alias, second = texture name) More...
 
typedef uint32 Ogre::ARGB
 
typedef uint32 Ogre::BGRA
 
typedef std::map< String, StringOgre::BinaryOptionList
 
typedef void * Ogre::DYNLIB_HANDLE
 
typedef TRect< float > Ogre::FloatRect
 Structure used to define a rectangle in a 2-D floating point space. More...
 
typedef std::vector< Light * > Ogre::LightList
 
typedef std::map< String, StringOgre::NameValuePairList
 Name / value parameter pair (first = name, second = value) More...
 
typedef std::map< String, ParamCommand *> Ogre::ParamCommandMap
 
typedef std::map< String, ParamDictionaryOgre::ParamDictionaryMap
 
typedef std::vector< StringOgre::ParameterList
 
typedef TRect< RealOgre::RealRect
 Structure used to define a rectangle in a 2-D floating point space, subject to double / single floating point settings. More...
 
typedef TRect< int32Ogre::Rect
 Structure used to define a rectangle in a 2-D integer space. More...
 
typedef std::vector< RenderSystem * > Ogre::RenderSystemList
 
typedef std::vector< RenderWindowDescriptionOgre::RenderWindowDescriptionList
 Render window creation parameters container. More...
 
typedef std::vector< RenderWindow * > Ogre::RenderWindowList
 Render window container. More...
 
typedef uint32 Ogre::RGBA
 
typedef std::map< String, SceneManager * > Ogre::SceneManagerInstanceMap
 Scene manager instances, indexed by instance name. More...
 
typedef std::vector< StringOgre::StringVector
 
typedef SharedPtr< StringVectorOgre::StringVectorPtr
 
typedef int Ogre::TrackVertexColourType
 An enumeration describing which material properties should track the vertex colours. More...
 
typedef std::map< String, bool > Ogre::UnaryOptionList
 

Enumerations

enum  Ogre::ClipResult { Ogre::CLIPPED_NONE = 0, Ogre::CLIPPED_SOME = 1, Ogre::CLIPPED_ALL = 2 }
 Generic result of clipping. More...
 
enum  Ogre::ColourBufferType { Ogre::CBT_BACK = 0x0, Ogre::CBT_BACK_LEFT, Ogre::CBT_BACK_RIGHT }
 Defines the colour buffer types. More...
 
enum  Ogre::CompareFunction : uint8 {
  Ogre::CMPF_ALWAYS_FAIL, Ogre::CMPF_ALWAYS_PASS, Ogre::CMPF_LESS, Ogre::CMPF_LESS_EQUAL,
  Ogre::CMPF_EQUAL, Ogre::CMPF_NOT_EQUAL, Ogre::CMPF_GREATER_EQUAL, Ogre::CMPF_GREATER
}
 Comparison functions used for the depth/stencil buffer operations and others. More...
 
enum  Ogre::CullingMode : uint8 { Ogre::CULL_NONE = 1, Ogre::CULL_CLOCKWISE = 2, Ogre::CULL_ANTICLOCKWISE = 3 }
 Hardware culling modes based on vertex winding. More...
 
enum  Ogre::FilterOptions : uint8 { Ogre::FO_NONE, Ogre::FO_POINT, Ogre::FO_LINEAR, Ogre::FO_ANISOTROPIC }
 Filtering options for textures / mipmaps. More...
 
enum  Ogre::FilterType { Ogre::FT_MIN, Ogre::FT_MAG, Ogre::FT_MIP }
 
enum  Ogre::FogMode : uint8 { Ogre::FOG_NONE, Ogre::FOG_EXP, Ogre::FOG_EXP2, Ogre::FOG_LINEAR }
 Fog modes. More...
 
enum  Ogre::FrameBufferType { Ogre::FBT_COLOUR = 0x1, Ogre::FBT_DEPTH = 0x2, Ogre::FBT_STENCIL = 0x4 }
 Defines the frame buffer types. More...
 
enum  Ogre::InstanceManagerFlags {
  Ogre::IM_USE16BIT = 0x0001, Ogre::IM_VTFBESTFIT = 0x0002, Ogre::IM_VTFBONEMATRIXLOOKUP = 0x0004, Ogre::IM_USEBONEDUALQUATERNIONS = 0x0008,
  Ogre::IM_USEONEWEIGHT = 0x0010, Ogre::IM_FORCEONEWEIGHT = 0x0020, Ogre::IM_USEALL = IM_USE16BIT|IM_VTFBESTFIT|IM_USEONEWEIGHT
}
 Flags for the Instance Manager when calculating ideal number of instances per batch. More...
 
enum  Ogre::LoggingLevel { Ogre::LL_LOW = 1, Ogre::LL_NORMAL = 2, Ogre::LL_BOREME = 3 }
 
enum  Ogre::LogMessageLevel { Ogre::LML_TRIVIAL = 1, Ogre::LML_NORMAL = 2, Ogre::LML_WARNING = 3, Ogre::LML_CRITICAL = 4 }
 The importance of a logged message. More...
 
enum  Ogre::ManualCullingMode : uint8 { Ogre::MANUAL_CULL_NONE = 1, Ogre::MANUAL_CULL_BACK = 2, Ogre::MANUAL_CULL_FRONT = 3 }
 Manual culling modes based on vertex normals. More...
 
enum  Ogre::ParameterType {
  Ogre::PT_BOOL, Ogre::PT_REAL, Ogre::PT_INT, Ogre::PT_UNSIGNED_INT,
  Ogre::PT_SHORT, Ogre::PT_UNSIGNED_SHORT, Ogre::PT_LONG, Ogre::PT_UNSIGNED_LONG,
  Ogre::PT_STRING, Ogre::PT_VECTOR3, Ogre::PT_MATRIX3, Ogre::PT_MATRIX4,
  Ogre::PT_QUATERNION, Ogre::PT_COLOURVALUE
}
 
enum  Ogre::PolygonMode : uint8 { Ogre::PM_POINTS = 1, Ogre::PM_WIREFRAME = 2, Ogre::PM_SOLID = 3 }
 The polygon mode to use when rasterising. More...
 
enum  Ogre::ProfileGroupMask {
  Ogre::OGREPROF_USER_DEFAULT = 0x00000001, Ogre::OGREPROF_ALL = 0xFF000000, Ogre::OGREPROF_GENERAL = 0x80000000, Ogre::OGREPROF_CULLING = 0x40000000,
  Ogre::OGREPROF_RENDERING = 0x20000000
}
 List of reserved profiling masks. More...
 
enum  Ogre::ShadeOptions : uint8 { Ogre::SO_FLAT, Ogre::SO_GOURAUD, Ogre::SO_PHONG }
 Light shading modes. More...
 
enum  Ogre::ShadowTechnique {
  Ogre::SHADOWTYPE_NONE = 0x00, Ogre::SHADOWDETAILTYPE_ADDITIVE = 0x01, Ogre::SHADOWDETAILTYPE_MODULATIVE = 0x02, Ogre::SHADOWDETAILTYPE_INTEGRATED = 0x04,
  Ogre::SHADOWDETAILTYPE_STENCIL = 0x10, Ogre::SHADOWDETAILTYPE_TEXTURE = 0x20, Ogre::SHADOWTYPE_STENCIL_MODULATIVE = SHADOWDETAILTYPE_STENCIL | SHADOWDETAILTYPE_MODULATIVE, Ogre::SHADOWTYPE_STENCIL_ADDITIVE = SHADOWDETAILTYPE_STENCIL | SHADOWDETAILTYPE_ADDITIVE,
  Ogre::SHADOWTYPE_TEXTURE_MODULATIVE = SHADOWDETAILTYPE_TEXTURE | SHADOWDETAILTYPE_MODULATIVE, Ogre::SHADOWTYPE_TEXTURE_ADDITIVE = SHADOWDETAILTYPE_TEXTURE | SHADOWDETAILTYPE_ADDITIVE, Ogre::SHADOWTYPE_TEXTURE_ADDITIVE_INTEGRATED = SHADOWTYPE_TEXTURE_ADDITIVE | SHADOWDETAILTYPE_INTEGRATED, Ogre::SHADOWTYPE_TEXTURE_MODULATIVE_INTEGRATED = SHADOWTYPE_TEXTURE_MODULATIVE | SHADOWDETAILTYPE_INTEGRATED
}
 An enumeration of broad shadow techniques. More...
 
enum  Ogre::SortMode : uint8 { Ogre::SM_DIRECTION, Ogre::SM_DISTANCE }
 Function used compute the camera-distance for sorting objects. More...
 
enum  Ogre::TextureAddressingMode : uint8 { Ogre::TAM_WRAP, Ogre::TAM_MIRROR, Ogre::TAM_CLAMP, Ogre::TAM_BORDER }
 Texture addressing modes - default is TAM_WRAP. More...
 
enum  Ogre::TextureFilterOptions { Ogre::TFO_NONE, Ogre::TFO_BILINEAR, Ogre::TFO_TRILINEAR, Ogre::TFO_ANISOTROPIC }
 High-level filtering options providing shortcuts to settings the minification, magnification and mip filters. More...
 
enum  Ogre::TrackVertexColourEnum {
  Ogre::TVC_NONE = 0x0, Ogre::TVC_AMBIENT = 0x1, Ogre::TVC_DIFFUSE = 0x2, Ogre::TVC_SPECULAR = 0x4,
  Ogre::TVC_EMISSIVE = 0x8
}
 
enum  Ogre::WaveformType {
  Ogre::WFT_SINE, Ogre::WFT_TRIANGLE, Ogre::WFT_SQUARE, Ogre::WFT_SAWTOOTH,
  Ogre::WFT_INVERSE_SAWTOOTH, Ogre::WFT_PWM
}
 Enumerates the wave types usable with the Ogre engine. More...
 

Functions

template<typename ValueType >
ValueType Ogre::any_cast (const Any &operand)
 
template<typename ValueType >
ValueType * Ogre::any_cast (Any *operand)
 
template<typename ValueType >
const ValueType * Ogre::any_cast (const Any *operand)
 
uint32 Ogre::FastHash (const char *data, size_t len, uint32 hashSoFar=0)
 Fast general hashing algorithm. More...
 
int _OgreExport Ogre::findCommandLineOpts (int numargs, char **argv, UnaryOptionList &unaryOptList, BinaryOptionList &binOptList)
 Locate command-line options of the unary form '-blah' and of the binary form '-blah foo', passing back the index of the next non-option. More...
 
template<typename T >
uint32 Ogre::HashCombine (uint32 hashSoFar, const T &data)
 Combine hashes with same style as boost::hash_combine. More...
 
template<typename T >
std::ostream & Ogre::operator<< (std::ostream &o, const TRect< T > &r)
 
String Ogre::to_string (const Quaternion &v)
 
String Ogre::to_string (const ColourValue &v)
 
String Ogre::to_string (const Vector2 &v)
 
String Ogre::to_string (const Vector3 &v)
 
String Ogre::to_string (const Vector4 &v)
 
String Ogre::to_string (const Matrix3 &v)
 
String Ogre::to_string (const Matrix4 &v)
 

Variables

const String Ogre::BLANKSTRING
 Constant blank string, useful for returning by ref where local does not exist. More...
 

Detailed Description

Macro Definition Documentation

◆ OGRE_EXCEPT_3

#define OGRE_EXCEPT_3 (   code,
  desc,
  src 
)    Ogre::ExceptionFactory::throwException(code, desc, src, __FILE__, __LINE__)

◆ OGRE_EXCEPT_2

#define OGRE_EXCEPT_2 (   code,
  desc 
)    Ogre::ExceptionFactory::throwException(code, desc, __FUNCTION__, __FILE__, __LINE__)

◆ OGRE_EXCEPT_CHOOSER

#define OGRE_EXCEPT_CHOOSER (   arg1,
  arg2,
  arg3,
  arg4,
  ... 
)    arg4

◆ OGRE_EXPAND

#define OGRE_EXPAND (   x)    x

◆ OGRE_EXCEPT

Typedef Documentation

◆ RGBA

typedef uint32 Ogre::RGBA

◆ ARGB

typedef uint32 Ogre::ARGB

◆ ABGR

typedef uint32 Ogre::ABGR

◆ BGRA

typedef uint32 Ogre::BGRA

◆ TrackVertexColourType

An enumeration describing which material properties should track the vertex colours.

◆ LightList

typedef std::vector<Light*> Ogre::LightList

◆ UnaryOptionList

typedef std::map<String, bool> Ogre::UnaryOptionList

◆ BinaryOptionList

typedef std::map<String, String> Ogre::BinaryOptionList

◆ NameValuePairList

Name / value parameter pair (first = name, second = value)

◆ AliasTextureNamePairList

Alias / Texture name pair (first = alias, second = texture name)

◆ FloatRect

typedef TRect<float> Ogre::FloatRect

Structure used to define a rectangle in a 2-D floating point space.

◆ RealRect

Structure used to define a rectangle in a 2-D floating point space, subject to double / single floating point settings.

◆ Rect

typedef TRect< int32 > Ogre::Rect

Structure used to define a rectangle in a 2-D integer space.

◆ RenderWindowDescriptionList

Render window creation parameters container.

◆ RenderWindowList

typedef std::vector<RenderWindow*> Ogre::RenderWindowList

Render window container.

◆ DYNLIB_HANDLE

typedef void* Ogre::DYNLIB_HANDLE

◆ RenderSystemList

typedef std::vector<RenderSystem*> Ogre::RenderSystemList

◆ SceneManagerInstanceMap

Scene manager instances, indexed by instance name.

◆ _StringHash

typedef ::std::hash< String > Ogre::_StringHash

◆ ParameterList

typedef std::vector<String> Ogre::ParameterList

◆ ParamCommandMap

typedef std::map<String, ParamCommand* > Ogre::ParamCommandMap

◆ ParamDictionaryMap

◆ StringVector

typedef std::vector<String> Ogre::StringVector

◆ StringVectorPtr

Enumeration Type Documentation

◆ CompareFunction

Comparison functions used for the depth/stencil buffer operations and others.

Enumerator
CMPF_ALWAYS_FAIL 

Never writes a pixel to the render target.

CMPF_ALWAYS_PASS 

Always writes a pixel to the render target.

CMPF_LESS 

Write if (new_Z < existing_Z)

CMPF_LESS_EQUAL 

Write if (new_Z <= existing_Z)

CMPF_EQUAL 

Write if (new_Z == existing_Z)

CMPF_NOT_EQUAL 

Write if (new_Z != existing_Z)

CMPF_GREATER_EQUAL 

Write if (new_Z >= existing_Z)

CMPF_GREATER 

Write if (new_Z >= existing_Z)

◆ TextureFilterOptions

High-level filtering options providing shortcuts to settings the minification, magnification and mip filters.

Enumerator
TFO_NONE 

No filtering or mipmapping is used.

Equal to: min=Ogre::FO_POINT, mag=Ogre::FO_POINT, mip=Ogre::FO_NONE

TFO_BILINEAR 

2x2 box filtering is performed when magnifying or reducing a texture, and a mipmap is picked from the list but no filtering is done between the levels of the mipmaps.

Equal to: min=Ogre::FO_LINEAR, mag=Ogre::FO_LINEAR, mip=Ogre::FO_POINT

TFO_TRILINEAR 

2x2 box filtering is performed when magnifying and reducing a texture, and the closest 2 mipmaps are filtered together.

Equal to: min=Ogre::FO_LINEAR, mag=Ogre::FO_LINEAR, mip=Ogre::FO_LINEAR

TFO_ANISOTROPIC 

This is the same as ’trilinear’, except the filtering algorithm takes account of the slope of the triangle in relation to the camera rather than simply doing a 2x2 pixel filter in all cases.

Equal to: min=Ogre::FO_ANISOTROPIC, max=Ogre::FO_ANISOTROPIC, mip=Ogre::FO_LINEAR

◆ FilterType

Enumerator
FT_MIN 

The filter used when shrinking a texture.

FT_MAG 

The filter used when magnifying a texture.

FT_MIP 

The filter used when determining the mipmap.

◆ FilterOptions

Filtering options for textures / mipmaps.

Enumerator
FO_NONE 

No filtering, used for FT_MIP to turn off mipmapping.

FO_POINT 

Use the closest pixel.

FO_LINEAR 

Average of a 2x2 pixel area, denotes bilinear for MIN and MAG, trilinear for MIP.

FO_ANISOTROPIC 

Similar to FO_LINEAR, but compensates for the angle of the texture plane.

Note that in order for this to make any difference, you must also set the TextureUnitState::setTextureAnisotropy attribute too.

◆ TextureAddressingMode

Texture addressing modes - default is TAM_WRAP.

Enumerator
TAM_WRAP 

Any value beyond 1.0 wraps back to 0.0. Texture is repeated.

TAM_MIRROR 

Texture flips every boundary, meaning texture is mirrored every 1.0 u or v

TAM_CLAMP 

Values beyond 1.0 are clamped to 1.0.

Texture ’streaks’ beyond 1.0 since last line of pixels is used across the rest of the address space. Useful for textures which need exact coverage from 0.0 to 1.0 without the ’fuzzy edge’ wrap gives when combined with filtering.

TAM_BORDER 

Texture coordinates outside the range [0.0, 1.0] are set to the border colour.

◆ ShadeOptions

Light shading modes.

Enumerator
SO_FLAT 

No interpolation takes place. Each face is shaded with a single colour determined from the first vertex in the face.

SO_GOURAUD 

Colour at each vertex is linearly interpolated across the face.

SO_PHONG 

Vertex normals are interpolated across the face, and these are used to determine colour at each pixel. Gives a more natural lighting effect but is more expensive and works better at high levels of tessellation. Not supported on all hardware.

◆ FogMode

Fog modes.

Enumerator
FOG_NONE 

No fog. Duh.

FOG_EXP 

Fog density increases exponentially from the camera (fog = 1/e^(distance * density))

FOG_EXP2 

Fog density increases at the square of FOG_EXP, i.e. even quicker (fog = 1/e^(distance * density)^2)

FOG_LINEAR 

Fog density increases linearly between the start and end distances.

◆ CullingMode

Hardware culling modes based on vertex winding.

This setting applies to how the hardware API culls triangles it is sent.

Enumerator
CULL_NONE 

Hardware never culls triangles and renders everything it receives.

CULL_CLOCKWISE 

Hardware culls triangles whose vertices are listed clockwise in the view (default).

CULL_ANTICLOCKWISE 

Hardware culls triangles whose vertices are listed anticlockwise in the view.

◆ ManualCullingMode

Manual culling modes based on vertex normals.

This setting applies to how the software culls triangles before sending them to the hardware API. This culling mode is used by scene managers which choose to implement it - normally those which deal with large amounts of fixed world geometry which is often planar (software culling movable variable geometry is expensive).

Enumerator
MANUAL_CULL_NONE 

No culling so everything is sent to the hardware.

MANUAL_CULL_BACK 

Cull triangles whose normal is pointing away from the camera (default).

MANUAL_CULL_FRONT 

Cull triangles whose normal is pointing towards the camera.

◆ WaveformType

Enumerates the wave types usable with the Ogre engine.

Enumerator
WFT_SINE 

Standard sine wave which smoothly changes from low to high and back again.

WFT_TRIANGLE 

An angular wave with a constant increase / decrease speed with pointed peaks.

WFT_SQUARE 

Half of the time is spent at the min, half at the max with instant transition between.

WFT_SAWTOOTH 

Gradual steady increase from min to max over the period with an instant return to min at the end.

WFT_INVERSE_SAWTOOTH 

Gradual steady decrease from max to min over the period, with an instant return to max at the end.

WFT_PWM 

Pulse Width Modulation.

Works like WFT_SQUARE, except the high to low transition is controlled by duty cycle. With a duty cycle of 50% (0.5) will give the same output as WFT_SQUARE.

◆ PolygonMode

The polygon mode to use when rasterising.

Enumerator
PM_POINTS 

Only the points of each polygon are rendered.

PM_WIREFRAME 

Polygons are drawn in outline only.

PM_SOLID 

The normal situation - polygons are filled in.

◆ ShadowTechnique

An enumeration of broad shadow techniques.

Enumerator
SHADOWTYPE_NONE 

No shadows.

SHADOWDETAILTYPE_ADDITIVE 

Mask for additive shadows (not for direct use, use SHADOWTYPE_ enum instead)

SHADOWDETAILTYPE_MODULATIVE 

Mask for modulative shadows (not for direct use, use SHADOWTYPE_ enum instead)

SHADOWDETAILTYPE_INTEGRATED 

Mask for integrated shadows (not for direct use, use SHADOWTYPE_ enum instead)

SHADOWDETAILTYPE_STENCIL 

Mask for stencil shadows (not for direct use, use SHADOWTYPE_ enum instead)

SHADOWDETAILTYPE_TEXTURE 

Mask for texture shadows (not for direct use, use SHADOWTYPE_ enum instead)

SHADOWTYPE_STENCIL_MODULATIVE 

Stencil shadow technique which renders all shadow volumes as a modulation after all the non-transparent areas have been rendered.

This technique is considerably less fillrate intensive than the additive stencil shadow approach when there are multiple lights, but is not an accurate model.

SHADOWTYPE_STENCIL_ADDITIVE 

Stencil shadow technique which renders each light as a separate additive pass to the scene.

This technique can be very fillrate intensive because it requires at least 2 passes of the entire scene, more if there are multiple lights. However, it is a more accurate model than the modulative stencil approach and this is especially apparent when using coloured lights or bump mapping.

SHADOWTYPE_TEXTURE_MODULATIVE 

Texture-based shadow technique which involves a monochrome render-to-texture of the shadow caster and a projection of that texture onto the shadow receivers as a modulative pass.

SHADOWTYPE_TEXTURE_ADDITIVE 

Texture-based shadow technique which involves a render-to-texture of the shadow caster and a projection of that texture onto the shadow receivers, built up per light as additive passes.

This technique can be very fillrate intensive because it requires numLights + 2 passes of the entire scene. However, it is a more accurate model than the modulative approach and this is especially apparent when using coloured lights or bump mapping.

SHADOWTYPE_TEXTURE_ADDITIVE_INTEGRATED 

Texture-based shadow technique which involves a render-to-texture of the shadow caster and a projection of that texture on to the shadow receivers, with the usage of those shadow textures completely controlled by the materials of the receivers.

This technique is easily the most flexible of all techniques because the material author is in complete control over how the shadows are combined with regular rendering. It can perform shadows as accurately as SHADOWTYPE_TEXTURE_ADDITIVE but more efficiently because it requires less passes. However it also requires more expertise to use, and in almost all cases, shader capable hardware to really use to the full.

Note
The 'additive' part of this mode means that the colour of the rendered shadow texture is by default plain black. It does not mean it does the adding on your receivers automatically though, how you use that result is up to you.
SHADOWTYPE_TEXTURE_MODULATIVE_INTEGRATED 

Texture-based shadow technique which involves a render-to-texture of the shadow caster and a projection of that texture on to the shadow receivers, with the usage of those shadow textures completely controlled by the materials of the receivers.

This technique is easily the most flexible of all techniques because the material author is in complete control over how the shadows are combined with regular rendering. It can perform shadows as accurately as SHADOWTYPE_TEXTURE_ADDITIVE but more efficiently because it requires less passes. However it also requires more expertise to use, and in almost all cases, shader capable hardware to really use to the full.

Note
The 'modulative' part of this mode means that the colour of the rendered shadow texture is by default the 'shadow colour'. It does not mean it modulates on your receivers automatically though, how you use that result is up to you.

◆ TrackVertexColourEnum

Enumerator
TVC_NONE 
TVC_AMBIENT 
TVC_DIFFUSE 
TVC_SPECULAR 
TVC_EMISSIVE 

◆ SortMode

Function used compute the camera-distance for sorting objects.

Enumerator
SM_DIRECTION 

Sort by direction of the camera.

The distance along the camera view as in cam->getDerivedDirection().dotProduct(diff) Best for PT_ORTHOGRAPHIC

SM_DISTANCE 

Sort by distance from the camera.

The euclidean distance as in diff.squaredLength() Best for PT_PERSPECTIVE

◆ FrameBufferType

Defines the frame buffer types.

Enumerator
FBT_COLOUR 
FBT_DEPTH 
FBT_STENCIL 

◆ ColourBufferType

Defines the colour buffer types.

Enumerator
CBT_BACK 
CBT_BACK_LEFT 
CBT_BACK_RIGHT 

◆ InstanceManagerFlags

Flags for the Instance Manager when calculating ideal number of instances per batch.

Enumerator
IM_USE16BIT 

Forces an amount of instances per batch low enough so that vertices * numInst < 65535 since usually improves performance.

In HW instanced techniques, this flag is ignored

IM_VTFBESTFIT 

The num.

of instances is adjusted so that as few pixels as possible are wasted in the vertex texture

IM_VTFBONEMATRIXLOOKUP 

Use a limited number of skeleton animations shared among all instances.

Update only that limited amount of animations in the vertex texture.

IM_USEBONEDUALQUATERNIONS 
IM_USEONEWEIGHT 

Use one weight per vertex when recommended (i.e.

VTF).

IM_FORCEONEWEIGHT 

All techniques are forced to one weight per vertex.

IM_USEALL 

◆ ClipResult

Generic result of clipping.

Enumerator
CLIPPED_NONE 

Nothing was clipped.

CLIPPED_SOME 

Partially clipped.

CLIPPED_ALL 

Everything was clipped away.

◆ LoggingLevel

Deprecated:
use LogMessageLevel instead
Enumerator
LL_LOW 
LL_NORMAL 
LL_BOREME 

◆ LogMessageLevel

The importance of a logged message.

Enumerator
LML_TRIVIAL 
LML_NORMAL 
LML_WARNING 
LML_CRITICAL 

◆ ProfileGroupMask

List of reserved profiling masks.

Enumerator
OGREPROF_USER_DEFAULT 

User default profile.

OGREPROF_ALL 

All in-built Ogre profiling will match this mask.

OGREPROF_GENERAL 

General processing.

OGREPROF_CULLING 

Culling.

OGREPROF_RENDERING 

Rendering.

◆ ParameterType

Deprecated:
do not use
Enumerator
PT_BOOL 
PT_REAL 
PT_INT 
PT_UNSIGNED_INT 
PT_SHORT 
PT_UNSIGNED_SHORT 
PT_LONG 
PT_UNSIGNED_LONG 
PT_STRING 
PT_VECTOR3 
PT_MATRIX3 
PT_MATRIX4 
PT_QUATERNION 
PT_COLOURVALUE 

Function Documentation

◆ any_cast() [1/3]

template<typename ValueType >
ValueType* Ogre::any_cast ( Any operand)

References Ogre::Any::type().

◆ any_cast() [2/3]

template<typename ValueType >
const ValueType* Ogre::any_cast ( const Any operand)

References Ogre::Any::any_cast.

◆ any_cast() [3/3]

template<typename ValueType >
ValueType Ogre::any_cast ( const Any operand)

References Ogre::Any::any_cast.

◆ FastHash()

uint32 Ogre::FastHash ( const char *  data,
size_t  len,
uint32  hashSoFar = 0 
)
inline

Fast general hashing algorithm.

Referenced by Ogre::HashCombine().

◆ HashCombine()

template<typename T >
uint32 Ogre::HashCombine ( uint32  hashSoFar,
const T &  data 
)

Combine hashes with same style as boost::hash_combine.

References Ogre::FastHash().

◆ operator<<()

◆ findCommandLineOpts()

int _OgreExport Ogre::findCommandLineOpts ( int  numargs,
char **  argv,
UnaryOptionList unaryOptList,
BinaryOptionList binOptList 
)

Locate command-line options of the unary form '-blah' and of the binary form '-blah foo', passing back the index of the next non-option.

Parameters
numargs,argvThe standard parameters passed to the main method
unaryOptListMap of unary options (i.e. those that do not require a parameter). Should be pre-populated with, for example '-e' in the key and false in the value. Options which are found will be set to true on return.
binOptListMap of binary options (i.e. those that require a parameter e.g. '-e afile.txt'). Should be pre-populated with, for example '-e' and the default setting. Options which are found will have the value updated.

Referenced by Ogre::Box::getSize().

◆ to_string() [1/7]

String Ogre::to_string ( const Quaternion v)
inline

◆ to_string() [2/7]

String Ogre::to_string ( const ColourValue v)
inline

◆ to_string() [3/7]

String Ogre::to_string ( const Vector2 v)
inline

◆ to_string() [4/7]

String Ogre::to_string ( const Vector3 v)
inline

◆ to_string() [5/7]

String Ogre::to_string ( const Vector4 v)
inline

◆ to_string() [6/7]

String Ogre::to_string ( const Matrix3 v)
inline

◆ to_string() [7/7]

String Ogre::to_string ( const Matrix4 v)
inline

Variable Documentation

◆ BLANKSTRING