OGRE-Next  4.0.0unstable
Object-Oriented Graphics Rendering Engine
General

Classes

struct  Ogre::_ConfigOption
 Packages the details of a configuration option. More...
 
class  Ogre::AbstractNode
 
class  Ogre::AnimationControllerFunction
 Predefined controller function for dealing with animation. More...
 
class  Ogre::Any
 Variant type that can hold Any other type. More...
 
class  Ogre::AnyNumeric
 Specialised Any class which has built in arithmetic operators, but can hold only types which support operator +,-,* and / . More...
 
class  Ogre::AtomAbstractNode
 This is an abstract node which cannot be broken down further. More...
 
class  Ogre::AtomicObject< T >
 
class  Ogre::AtomicScalar< T >
 
struct  Ogre::Box
 Structure used to define a box in a 3-D integer space. More...
 
class  Ogre::BuiltinScriptTranslatorManager
 This class manages the builtin translators. More...
 
class  Ogre::Codec
 Abstract class that defines a 'codec'. More...
 
class  Ogre::ColourValue
 Class representing colour. More...
 
class  Ogre::CompositorLoadActionTranslator
 
class  Ogre::CompositorNodeTranslator
 
class  Ogre::CompositorPassTranslator
 
class  Ogre::CompositorRenderTargetViewTranslator
 
class  Ogre::CompositorShadowMapRepeatTranslator
 
class  Ogre::CompositorShadowMapTargetTranslator
 
class  Ogre::CompositorShadowMapTargetTypeTranslator
 
class  Ogre::CompositorShadowNodeTranslator
 
class  Ogre::CompositorStoreActionTranslator
 
class  Ogre::CompositorTargetTranslator
 
class  Ogre::CompositorTextureBaseTranslator
 
class  Ogre::CompositorWorkspaceTranslator
 
class  Ogre::ComPtr< T >
 
struct  Ogre::ConcreteNode
 
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::Controller< T >
 Instances of this class 'control' the value of another object in the system. More...
 
class  Ogre::ControllerFunction< T >
 Subclasses of this class are responsible for performing a function on an input value for a Controller. More...
 
class  Ogre::ControllerManager
 Class for managing Controller instances. More...
 
class  Ogre::ControllerValue< T >
 Can either be used as an input or output value. More...
 
class  Ogre::CreateCompositorScriptCompilerEvent
 
class  Ogre::CreateGpuProgramScriptCompilerEvent
 
class  Ogre::CreateGpuSharedParametersScriptCompilerEvent
 
class  Ogre::CreateHighLevelGpuProgramScriptCompilerEvent
 
class  Ogre::CreateMaterialScriptCompilerEvent
 
class  Ogre::CreateParticleSystemScriptCompilerEvent
 
class  Ogre::DefaultWorkQueueBase
 Base for a general purpose request / response style 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::ErrorDialog
 Class for displaying the error dialog if Ogre fails badly. 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
 
class  Ogre::FloatGpuParameterControllerValue
 Predefined controller value for setting a single floating- point value in a constant parameter of a vertex or fragment program. More...
 
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::FrameStats
 All returned values are either in seconds or frames per second. More...
 
class  Ogre::FrameTimeControllerValue
 Predefined controller value for getting the latest frame time. More...
 
class  Ogre::GpuProgramTranslator
 
class  Ogre::HashedVector< T >
 A hashed vector. More...
 
class  Ogre::HlmsTranslator
 
class  Ogre::ImportAbstractNode
 This abstract node represents an import statement. More...
 
class  Ogre::InternalErrorException
 
class  Ogre::InvalidCallException
 
class  Ogre::InvalidParametersException
 
class  Ogre::InvalidStateException
 
class  Ogre::IOException
 
class  Ogre::ItemIdentityException
 
struct  Ogre::LightClosest
 Used as the light list, sorted. More...
 
struct  Ogre::LightListInfo
 Holds all lights in SoA after being culled over all frustums. More...
 
class  Ogre::LinearControllerFunction
 Predefined controller function based on linear function interpolation. More...
 
class  Ogre::Log
 
class  Ogre::LogListener
 
class  Ogre::LogManager
 The log manager handles the creation and retrieval of logs for the application. More...
 
class  Ogre::MaterialTranslator
 
class  Ogre::NameGenerator
 Utility class to generate a sequentially numbered series of names. More...
 
class  Ogre::NoAddRefRelease< T >
 
class  Ogre::ObjectAbstractNode
 This specific abstract node represents a script object. More...
 
class  Ogre::ParamDictionary
 Class to hold a dictionary of parameters for a single class. More...
 
class  Ogre::ParameterDef
 Definition of a parameter supported by a StringInterface class, for introspection. More...
 
class  Ogre::ParticleAffectorTranslator
 
class  Ogre::ParticleAffectorTranslator2
 
class  Ogre::ParticleEmitterTranslator
 
class  Ogre::ParticleEmitterTranslator2
 
class  Ogre::ParticleSystemTranslator
 
class  Ogre::ParticleSystemTranslator2
 
class  Ogre::PassthroughControllerFunction
 Predefined controller function which just passes through the original source directly to dest. More...
 
class  Ogre::PassTranslator
 
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::PreApplyTextureAliasesScriptCompilerEvent
 
class  Ogre::ProcessNameExclusionScriptCompilerEvent
 
class  Ogre::ProcessResourceNameScriptCompilerEvent
 
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::PropertyAbstractNode
 This abstract node represents a script property. More...
 
class  Ogre::RadixSort< TContainer, TContainerValueType, TCompValueType >
 Class for performing a radix sort (fast comparison-less sort based on byte value) on various standard STL containers. More...
 
class  Ogre::RenderingAPIException
 
struct  Ogre::RenderingMetrics
 
class  Ogre::Root
 The root class of the Ogre system. More...
 
class  Ogre::RuntimeAssertionException
 
struct  Ogre::SampleDescription
 Opaque struct that holds effective FSAA (MSAA, CSAA, etc.) mode. More...
 
class  Ogre::ScaleControllerFunction
 Predefined controller function which simply scales an input to an output value. More...
 
class  Ogre::ScriptCompiler
 This is the main class for the compiler. More...
 
class  Ogre::ScriptCompilerEvent
 This struct is a base class for events which can be thrown by the compilers and caught by subscribers. More...
 
class  Ogre::ScriptCompilerListener
 This is a listener for the compiler. More...
 
class  Ogre::ScriptCompilerManager
 Manages threaded compilation of scripts. More...
 
class  Ogre::ScriptLexer
 
class  Ogre::ScriptLoader
 Abstract class defining the interface used by classes which wish to perform script loading to define instances of whatever they manage. More...
 
class  Ogre::ScriptParser
 
struct  Ogre::ScriptToken
 This struct represents a token, which is an ID'd lexeme from the parsing input stream. More...
 
class  Ogre::ScriptTranslator
 This class translates script AST (abstract syntax tree) into Ogre resources. More...
 
class  Ogre::ScriptTranslatorManager
 The ScriptTranslatorManager manages the lifetime and access to script translators. More...
 
class  Ogre::Serializer
 Generic class for serialising data to / from binary stream-based files. More...
 
class  Ogre::SharedParamsTranslator
 
class  Ogre::SharedPtr< T >
 
class  Ogre::Singleton< T >
 Template class for creating single-instance global classes. More...
 
struct  Ogre::SPFMDeleteT
 
struct  Ogre::StencilParams
 
struct  Ogre::StencilStateOp
 
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...
 
class  Ogre::TechniqueTranslator
 
class  Ogre::TexCoordModifierControllerValue
 Predefined controller value for getting / setting a texture coordinate modifications (scales and translates). More...
 
class  Ogre::TextureFrameControllerValue
 Predefined controller value for getting / setting the frame number of a texture layer. More...
 
class  Ogre::TextureSourceTranslator
 
class  Ogre::TextureUnitTranslator
 
class  Ogre::Timer
 Timer class. More...
 
struct  Ogre::TRect< T >
 
class  Ogre::UnimplementedException
 Template struct which creates a distinct type for each exception code. More...
 
class  Ogre::VariableAccessAbstractNode
 This abstract node represents a variable assignment. More...
 
class  Ogre::WaveformControllerFunction
 Predefined controller function based on a waveform. More...
 
class  Ogre::WorkQueue
 Interface to a general purpose request / response style background work queue. More...
 

Macros

#define OGRE_EXCEPT(code, desc, src)    Ogre::ExceptionFactory::throwException( code, code, desc, src, __FILE__, __LINE__ )
 
#define OGRE_EXCEPT_EX(code, num, desc, src)    Ogre::ExceptionFactory::throwException( code, num, desc, src, __FILE__, __LINE__ )
 
#define OGRE_LOG_THRESHOLD   4
 

Typedefs

typedef ::std::hash< _StringBaseOgre::_StringHash
 
typedef uint32 Ogre::ABGR
 
typedef list< AbstractNodePtr >::type Ogre::AbstractNodeList
 
typedef SharedPtr< AbstractNodeListOgre::AbstractNodeListPtr
 
typedef SharedPtr< AbstractNodeOgre::AbstractNodePtr
 
typedef StdMap< String, StringOgre::AliasTextureNamePairList
 Alias / Texture name pair (first = alias, second = texture name) More...
 
typedef uint32 Ogre::ARGB
 
typedef uint32 Ogre::BGRA
 
typedef StdMap< String, StringOgre::BinaryOptionList
 
typedef list< ConcreteNodePtr >::type Ogre::ConcreteNodeList
 
typedef SharedPtr< ConcreteNodeListOgre::ConcreteNodeListPtr
 
typedef SharedPtr< ConcreteNodeOgre::ConcreteNodePtr
 
typedef struct Ogre::_ConfigOption Ogre::ConfigOption
 Packages the details of a configuration option. More...
 
typedef map< String, ConfigOption >::type Ogre::ConfigOptionMap
 
typedef SharedPtr< ControllerFunction< Real > > Ogre::ControllerFunctionRealPtr
 
typedef SharedPtr< ControllerValue< Real > > Ogre::ControllerValueRealPtr
 
typedef TRect< float > Ogre::FloatRect
 Structure used to define a rectangle in a 2-D floating point space. More...
 
typedef FastArray< Light * > Ogre::LightArray
 
typedef FastArray< LightClosestOgre::LightClosestArray
 
typedef HashedVector< LightClosestOgre::LightList
 
typedef StdMap< String, StringOgre::NameValuePairList
 Name / value parameter pair (first = name, second = value) More...
 
typedef map< String, ParamCommand * >::type Ogre::ParamCommandMap
 
typedef vector< ParameterDef >::type Ogre::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< long > Ogre::Rect
 Structure used to define a rectangle in a 2-D integer space. More...
 
typedef vector< RenderSystem * >::type Ogre::RenderSystemList
 
typedef uint32 Ogre::RGBA
 
typedef vector< ScriptToken >::type Ogre::ScriptTokenList
 
typedef SharedPtr< ScriptTokenListOgre::ScriptTokenListPtr
 
typedef vector< String >::type Ogre::StringVector
 
typedef SharedPtr< StringVectorOgre::StringVectorPtr
 
typedef int Ogre::TrackVertexColourType
 An enumeration describing which material properties should track the vertex colours. More...
 
typedef StdMap< String, bool > Ogre::UnaryOptionList
 
typedef StdVector< Window * > Ogre::WindowList
 Render window container. More...
 

Enumerations

enum  {
  Ogre::ID_MATERIAL = 3 , Ogre::ID_VERTEX_PROGRAM , Ogre::ID_GEOMETRY_PROGRAM , Ogre::ID_FRAGMENT_PROGRAM ,
  Ogre::ID_TECHNIQUE , Ogre::ID_PASS , Ogre::ID_TEXTURE_UNIT , Ogre::ID_VERTEX_PROGRAM_REF ,
  Ogre::ID_GEOMETRY_PROGRAM_REF , Ogre::ID_FRAGMENT_PROGRAM_REF , Ogre::ID_SHADOW_CASTER_VERTEX_PROGRAM_REF , Ogre::ID_SHADOW_CASTER_FRAGMENT_PROGRAM_REF ,
  Ogre::ID_SHADOW_CASTER_MATERIAL , Ogre::ID_LOD_VALUES , Ogre::ID_LOD_STRATEGY , Ogre::ID_LOD_DISTANCES ,
  Ogre::ID_RECEIVE_SHADOWS , Ogre::ID_TRANSPARENCY_CASTS_SHADOWS , Ogre::ID_SET_TEXTURE_ALIAS , Ogre::ID_SOURCE ,
  Ogre::ID_SYNTAX , Ogre::ID_DEFAULT_PARAMS , Ogre::ID_PARAM_INDEXED , Ogre::ID_PARAM_NAMED ,
  Ogre::ID_PARAM_INDEXED_AUTO , Ogre::ID_PARAM_NAMED_AUTO , Ogre::ID_SCHEME , Ogre::ID_LOD_INDEX ,
  Ogre::ID_GPU_VENDOR_RULE , Ogre::ID_GPU_DEVICE_RULE , Ogre::ID_INCLUDE , Ogre::ID_EXCLUDE ,
  Ogre::ID_AMBIENT , Ogre::ID_DIFFUSE , Ogre::ID_SPECULAR , Ogre::ID_EMISSIVE ,
  Ogre::ID_VERTEXCOLOUR , Ogre::ID_SCENE_BLEND , Ogre::ID_COLOUR_BLEND , Ogre::ID_ONE ,
  Ogre::ID_ZERO , Ogre::ID_DEST_COLOUR , Ogre::ID_SRC_COLOUR , Ogre::ID_ONE_MINUS_DEST_COLOUR ,
  Ogre::ID_ONE_MINUS_SRC_COLOUR , Ogre::ID_DEST_ALPHA , Ogre::ID_SRC_ALPHA , Ogre::ID_ONE_MINUS_DEST_ALPHA ,
  Ogre::ID_ONE_MINUS_SRC_ALPHA , Ogre::ID_SEPARATE_SCENE_BLEND , Ogre::ID_SCENE_BLEND_OP , Ogre::ID_REVERSE_SUBTRACT ,
  Ogre::ID_MIN , Ogre::ID_MAX , Ogre::ID_SEPARATE_SCENE_BLEND_OP , Ogre::ID_DEPTH_CHECK ,
  Ogre::ID_DEPTH_WRITE , Ogre::ID_DEPTH_FUNC , Ogre::ID_DEPTH_BIAS , Ogre::ID_ITERATION_DEPTH_BIAS ,
  Ogre::ID_ALWAYS_FAIL , Ogre::ID_ALWAYS_PASS , Ogre::ID_LESS_EQUAL , Ogre::ID_LESS ,
  Ogre::ID_EQUAL , Ogre::ID_NOT_EQUAL , Ogre::ID_GREATER_EQUAL , Ogre::ID_GREATER ,
  Ogre::ID_ALPHA_REJECTION , Ogre::ID_ALPHA_TO_COVERAGE , Ogre::ID_LIGHT_SCISSOR , Ogre::ID_LIGHT_CLIP_PLANES ,
  Ogre::ID_CULL_HARDWARE , Ogre::ID_CULL_MODE , Ogre::ID_CLOCKWISE , Ogre::ID_ANTICLOCKWISE ,
  Ogre::ID_SHADING , Ogre::ID_FLAT , Ogre::ID_GOURAUD , Ogre::ID_PHONG ,
  Ogre::ID_POLYGON_MODE , Ogre::ID_SOLID , Ogre::ID_WIREFRAME , Ogre::ID_POINTS ,
  Ogre::ID_POLYGON_MODE_OVERRIDEABLE , Ogre::ID_FOG_OVERRIDE , Ogre::ID_NONE , Ogre::ID_LINEAR ,
  Ogre::ID_EXP , Ogre::ID_EXP2 , Ogre::ID_COLOUR_WRITE , Ogre::ID_CHANNEL_MASK ,
  Ogre::ID_MAX_LIGHTS , Ogre::ID_START_LIGHT , Ogre::ID_ITERATION , Ogre::ID_ONCE ,
  Ogre::ID_ONCE_PER_LIGHT , Ogre::ID_PER_LIGHT , Ogre::ID_PER_N_LIGHTS , Ogre::ID_POINT ,
  Ogre::ID_SPOT , Ogre::ID_DIRECTIONAL , Ogre::ID_LIGHT_MASK , Ogre::ID_POINT_SIZE ,
  Ogre::ID_POINT_SPRITES , Ogre::ID_POINT_SIZE_ATTENUATION , Ogre::ID_POINT_SIZE_MIN , Ogre::ID_POINT_SIZE_MAX ,
  Ogre::ID_TEXTURE_ALIAS , Ogre::ID_TEXTURE , Ogre::ID_1D , Ogre::ID_2D ,
  Ogre::ID_3D , Ogre::ID_CUBIC , Ogre::ID_2DARRAY , Ogre::ID_UNLIMITED ,
  Ogre::ID_ALPHA , Ogre::ID_GAMMA , Ogre::ID_ANIM_TEXTURE , Ogre::ID_CUBIC_TEXTURE ,
  Ogre::ID_SEPARATE_UV , Ogre::ID_COMBINED_UVW , Ogre::ID_TEX_ADDRESS_MODE , Ogre::ID_WRAP ,
  Ogre::ID_CLAMP , Ogre::ID_BORDER , Ogre::ID_MIRROR , Ogre::ID_TEX_BORDER_COLOUR ,
  Ogre::ID_FILTERING , Ogre::ID_BILINEAR , Ogre::ID_TRILINEAR , Ogre::ID_ANISOTROPIC ,
  Ogre::ID_CMPFUNC , Ogre::ID_MAX_ANISOTROPY , Ogre::ID_MIPMAP_BIAS , Ogre::ID_COLOUR_OP ,
  Ogre::ID_REPLACE , Ogre::ID_ADD , Ogre::ID_MODULATE , Ogre::ID_ALPHA_BLEND ,
  Ogre::ID_COLOUR_OP_EX , Ogre::ID_SOURCE1 , Ogre::ID_SOURCE2 , Ogre::ID_MODULATE_X2 ,
  Ogre::ID_MODULATE_X4 , Ogre::ID_ADD_SIGNED , Ogre::ID_ADD_SMOOTH , Ogre::ID_SUBTRACT ,
  Ogre::ID_BLEND_DIFFUSE_COLOUR , Ogre::ID_BLEND_DIFFUSE_ALPHA , Ogre::ID_BLEND_TEXTURE_ALPHA , Ogre::ID_BLEND_CURRENT_ALPHA ,
  Ogre::ID_BLEND_MANUAL , Ogre::ID_DOT_PRODUCT , Ogre::ID_SRC_CURRENT , Ogre::ID_SRC_TEXTURE ,
  Ogre::ID_SRC_DIFFUSE , Ogre::ID_SRC_SPECULAR , Ogre::ID_SRC_MANUAL , Ogre::ID_COLOUR_OP_MULTIPASS_FALLBACK ,
  Ogre::ID_ALPHA_OP_EX , Ogre::ID_ENV_MAP , Ogre::ID_SPHERICAL , Ogre::ID_PLANAR ,
  Ogre::ID_CUBIC_REFLECTION , Ogre::ID_CUBIC_NORMAL , Ogre::ID_SCROLL , Ogre::ID_SCROLL_ANIM ,
  Ogre::ID_ROTATE , Ogre::ID_ROTATE_ANIM , Ogre::ID_SCALE , Ogre::ID_WAVE_XFORM ,
  Ogre::ID_SCROLL_X , Ogre::ID_SCROLL_Y , Ogre::ID_SCALE_X , Ogre::ID_SCALE_Y ,
  Ogre::ID_SINE , Ogre::ID_TRIANGLE , Ogre::ID_SQUARE , Ogre::ID_SAWTOOTH ,
  Ogre::ID_INVERSE_SAWTOOTH , Ogre::ID_TRANSFORM , Ogre::ID_BINDING_TYPE , Ogre::ID_VERTEX ,
  Ogre::ID_FRAGMENT , Ogre::ID_CONTENT_TYPE , Ogre::ID_NAMED , Ogre::ID_SHADOW ,
  Ogre::ID_COMPOSITOR , Ogre::ID_AUTOMATIC_BATCHING , Ogre::ID_TEXTURE_SOURCE , Ogre::ID_SHARED_PARAMS ,
  Ogre::ID_SHARED_PARAM_NAMED , Ogre::ID_SHARED_PARAMS_REF , Ogre::ID_PARTICLE_SYSTEM , Ogre::ID_EMITTER ,
  Ogre::ID_AFFECTOR , Ogre::ID_WORKSPACE , Ogre::ID_ALIAS , Ogre::ID_CONNECT ,
  Ogre::ID_CONNECT_BUFFER , Ogre::ID_CONNECT_OUTPUT , Ogre::ID_CONNECT_EXTERNAL , Ogre::ID_CONNECT_BUFFER_EXTERNAL ,
  Ogre::ID_COMPOSITOR_NODE , Ogre::ID_IN , Ogre::ID_OUT , Ogre::ID_IN_BUFFER ,
  Ogre::ID_OUT_BUFFER , Ogre::ID_CUSTOM_ID , Ogre::ID_RTV , Ogre::ID_RESOLVE ,
  Ogre::ID_MIP , Ogre::ID_RESOLVE_MIP , Ogre::ID_RESOLVE_MIPMAP , Ogre::ID_SLICE ,
  Ogre::ID_RESOLVE_SLICE , Ogre::ID_ALL_LAYERS , Ogre::ID_DEPTH_STENCIL , Ogre::ID_DEPTH_READ_ONLY ,
  Ogre::ID_STENCIL_READ_ONLY , Ogre::ID_BUFFER , Ogre::ID_TARGET_WIDTH , Ogre::ID_TARGET_HEIGHT ,
  Ogre::ID_TARGET_WIDTH_SCALED , Ogre::ID_TARGET_HEIGHT_SCALED , Ogre::ID_TARGET_ORIENTATION_MODE , Ogre::ID_TARGET_FORMAT ,
  Ogre::ID_MSAA , Ogre::ID_MSAA_AUTO , Ogre::ID_EXPLICIT_RESOLVE , Ogre::ID_NOT_TEXTURE ,
  Ogre::ID_REINTERPRETABLE , Ogre::ID_KEEP_CONTENT , Ogre::ID_DEPTH_POOL , Ogre::ID_DEPTH_TEXTURE ,
  Ogre::ID_DEPTH_FORMAT , Ogre::ID_2D_ARRAY , Ogre::ID_CUBEMAP , Ogre::ID_CUBEMAP_ARRAY ,
  Ogre::ID_MIPMAPS , Ogre::ID_NO_AUTOMIPMAPS , Ogre::ID_TARGET , Ogre::ID_TARGET_LEVEL_BARRIER ,
  Ogre::ID_CLEAR , Ogre::ID_STENCIL , Ogre::ID_RENDER_SCENE , Ogre::ID_RENDER_QUAD ,
  Ogre::ID_DEPTH_COPY , Ogre::ID_BIND_UAV , Ogre::ID_LOAD , Ogre::ID_ALL ,
  Ogre::ID_CLEAR_COLOUR , Ogre::ID_CLEAR_COLOUR_REVERSE_DEPTH_AWARE , Ogre::ID_CLEAR_DEPTH , Ogre::ID_CLEAR_STENCIL ,
  Ogre::ID_WARN_IF_RTV_WAS_FLUSHED , Ogre::ID_STORE , Ogre::ID_SKIP_LOAD_STORE_SEMANTICS , Ogre::ID_VIEWPORT ,
  Ogre::ID_NUM_INITIAL , Ogre::ID_FLUSH_COMMAND_BUFFERS , Ogre::ID_IDENTIFIER , Ogre::ID_OVERLAYS ,
  Ogre::ID_EXECUTION_MASK , Ogre::ID_VIEWPORT_MODIFIER_MASK , Ogre::ID_USES_UAV , Ogre::ID_ALLOW_WRITE_AFTER_WRITE ,
  Ogre::ID_EXPOSE , Ogre::ID_SHADOW_MAP_FULL_VIEWPORT , Ogre::ID_PROFILING_ID , Ogre::ID_LOD_BIAS ,
  Ogre::ID_LOD_UPDATE_LIST , Ogre::ID_LOD_CAMERA , Ogre::ID_CULL_REUSE_DATA , Ogre::ID_CULL_CAMERA ,
  Ogre::ID_MATERIAL_SCHEME , Ogre::ID_VISIBILITY_MASK , Ogre::ID_LIGHT_VISIBILITY_MASK , Ogre::ID_SHADOWS_ENABLED ,
  Ogre::ID_CAMERA , Ogre::ID_FIRST_RENDER_QUEUE , Ogre::ID_LAST_RENDER_QUEUE , Ogre::ID_CAMERA_CUBEMAP_REORIENT ,
  Ogre::ID_ENABLE_FORWARDPLUS , Ogre::ID_FLUSH_COMMAND_BUFFERS_AFTER_SHADOW_NODE , Ogre::ID_IS_PREPASS , Ogre::ID_USE_PREPASS ,
  Ogre::ID_GEN_NORMALS_GBUFFER , Ogre::ID_USE_REFRACTIONS , Ogre::ID_UV_BAKING , Ogre::ID_UV_BAKING_OFFSET ,
  Ogre::ID_BAKE_LIGHTING_ONLY , Ogre::ID_INSTANCED_STEREO , Ogre::ID_USE_QUAD , Ogre::ID_QUAD_NORMALS ,
  Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE , Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED , Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED_LH , Ogre::ID_CAMERA_FAR_CORNERS_WORLD_SPACE ,
  Ogre::ID_CAMERA_FAR_CORNERS_WORLD_SPACE_CENTERED , Ogre::ID_CAMERA_DIRECTION , Ogre::ID_INPUT , Ogre::ID_OUTPUT ,
  Ogre::ID_NON_TILERS_ONLY , Ogre::ID_BUFFERS , Ogre::ID_COLOUR , Ogre::ID_DEPTH ,
  Ogre::ID_COLOUR_VALUE , Ogre::ID_DEPTH_VALUE , Ogre::ID_STENCIL_VALUE , Ogre::ID_DISCARD_ONLY ,
  Ogre::ID_CHECK , Ogre::ID_REF_VALUE , Ogre::ID_MASK , Ogre::ID_READ_MASK ,
  Ogre::ID_BOTH , Ogre::ID_FRONT , Ogre::ID_BACK , Ogre::ID_COMP_FUNC ,
  Ogre::ID_FAIL_OP , Ogre::ID_KEEP , Ogre::ID_INCREMENT , Ogre::ID_DECREMENT ,
  Ogre::ID_INCREMENT_WRAP , Ogre::ID_DECREMENT_WRAP , Ogre::ID_INVERT , Ogre::ID_DEPTH_FAIL_OP ,
  Ogre::ID_PASS_OP , Ogre::ID_TWO_SIDED , Ogre::ID_UAV , Ogre::ID_UAV_EXTERNAL ,
  Ogre::ID_UAV_BUFFER , Ogre::ID_STARTING_SLOT , Ogre::ID_KEEP_PREVIOUS_UAV , Ogre::ID_READ ,
  Ogre::ID_WRITE , Ogre::ID_MIPMAP , Ogre::ID_JOB , Ogre::ID_MIPMAP_METHOD ,
  Ogre::ID_API_DEFAULT , Ogre::ID_COMPUTE_HQ , Ogre::ID_KERNEL_RADIUS , Ogre::ID_GAUSS_DEVIATION ,
  Ogre::ID_MIP_RANGE , Ogre::ID_SAMPLES_PER_ITERATION , Ogre::ID_SAMPLES_SINGLE_ITERATION_FALLBACK , Ogre::ID_FORCE_MIPMAP_FALLBACK ,
  Ogre::ID_MODE , Ogre::ID_READ_BACK_AS_TEXTURE , Ogre::ID_SHADOW_NODE , Ogre::ID_NUM_SPLITS ,
  Ogre::ID_NUM_STABLE_SPLITS , Ogre::ID_NORMAL_OFFSET_BIAS , Ogre::ID_CONSTANT_BIAS_SCALE , Ogre::ID_PSSM_SPLIT_PADDING ,
  Ogre::ID_PSSM_SPLIT_BLEND , Ogre::ID_PSSM_SPLIT_FADE , Ogre::ID_PSSM_LAMBDA , Ogre::ID_SHADOW_MAP_TARGET_TYPE ,
  Ogre::ID_SHADOW_MAP_REPEAT , Ogre::ID_SHADOW_MAP , Ogre::ID_UV , Ogre::ID_ARRAY_INDEX ,
  Ogre::ID_FSAA , Ogre::ID_LIGHT , Ogre::ID_SPLIT , Ogre::ID_HLMS ,
  Ogre::ID_TESSELLATION_HULL_PROGRAM , Ogre::ID_TESSELLATION_DOMAIN_PROGRAM , Ogre::ID_COMPUTE_PROGRAM , Ogre::ID_TESSELLATION_HULL_PROGRAM_REF ,
  Ogre::ID_TESSELLATION_DOMAIN_PROGRAM_REF , Ogre::ID_COMPUTE_PROGRAM_REF , Ogre::ID_GEOMETRY , Ogre::ID_TESSELLATION_HULL ,
  Ogre::ID_TESSELLATION_DOMAIN , Ogre::ID_COMPUTE , Ogre::ID_SUBROUTINE , Ogre::ID_END_BUILTIN_IDS
}
 This enum defines the integer ids for keywords this compiler handles. More...
 
enum  {
  Ogre::TID_LBRACKET = 0 , Ogre::TID_RBRACKET , Ogre::TID_COLON , Ogre::TID_VARIABLE ,
  Ogre::TID_WORD , Ogre::TID_QUOTE , Ogre::TID_NEWLINE , Ogre::TID_UNKNOWN ,
  Ogre::TID_END
}
 These codes represent token IDs which are numerical translations of specific lexemes. More...
 
enum  Ogre::AbstractNodeType {
  Ogre::ANT_UNKNOWN , Ogre::ANT_ATOM , Ogre::ANT_OBJECT , Ogre::ANT_PROPERTY ,
  Ogre::ANT_IMPORT , Ogre::ANT_VARIABLE_SET , Ogre::ANT_VARIABLE_ACCESS
}
 This enum holds the types of the possible abstract nodes. More...
 
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 {
  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 ,
  Ogre::NUM_COMPARE_FUNCTIONS
}
 Comparison functions used for the depth/stencil buffer operations and others. More...
 
enum  Ogre::ConcreteNodeType {
  Ogre::CNT_VARIABLE , Ogre::CNT_VARIABLE_ASSIGN , Ogre::CNT_WORD , Ogre::CNT_IMPORT ,
  Ogre::CNT_QUOTE , Ogre::CNT_LBRACE , Ogre::CNT_RBRACE , Ogre::CNT_COLON
}
 These enums hold the types of the concrete parsed nodes. More...
 
enum  Ogre::CullingMode { Ogre::CULL_NONE = 1 , Ogre::CULL_CLOCKWISE = 2 , Ogre::CULL_ANTICLOCKWISE = 3 }
 Hardware culling modes based on vertex winding. More...
 
enum  Ogre::FilterOptions { 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 { 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::IndexType { Ogre::IT_16BIT , Ogre::IT_32BIT }
 
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 }
 The level of detail to which the log will go into. More...
 
enum  Ogre::LogMessageLevel { Ogre::LML_TRIVIAL = 1 , Ogre::LML_NORMAL = 2 , Ogre::LML_CRITICAL = 3 }
 The importance of a logged message. More...
 
enum  Ogre::OperationType {
  Ogre::OT_POINT_LIST = 1 , Ogre::OT_LINE_LIST = 2 , Ogre::OT_LINE_STRIP = 3 , Ogre::OT_TRIANGLE_LIST = 4 ,
  Ogre::OT_TRIANGLE_STRIP = 5 , Ogre::OT_TRIANGLE_FAN = 6 , Ogre::OT_PATCH_1_CONTROL_POINT = 7 , Ogre::OT_PATCH_2_CONTROL_POINT = 8 ,
  Ogre::OT_PATCH_3_CONTROL_POINT = 9 , Ogre::OT_PATCH_4_CONTROL_POINT = 10 , Ogre::OT_PATCH_5_CONTROL_POINT = 11 , Ogre::OT_PATCH_6_CONTROL_POINT = 12 ,
  Ogre::OT_PATCH_7_CONTROL_POINT = 13 , Ogre::OT_PATCH_8_CONTROL_POINT = 14 , Ogre::OT_PATCH_9_CONTROL_POINT = 15 , Ogre::OT_PATCH_10_CONTROL_POINT = 16 ,
  Ogre::OT_PATCH_11_CONTROL_POINT = 17 , Ogre::OT_PATCH_12_CONTROL_POINT = 18 , Ogre::OT_PATCH_13_CONTROL_POINT = 19 , Ogre::OT_PATCH_14_CONTROL_POINT = 20 ,
  Ogre::OT_PATCH_15_CONTROL_POINT = 21 , Ogre::OT_PATCH_16_CONTROL_POINT = 22 , Ogre::OT_PATCH_17_CONTROL_POINT = 23 , Ogre::OT_PATCH_18_CONTROL_POINT = 24 ,
  Ogre::OT_PATCH_19_CONTROL_POINT = 25 , Ogre::OT_PATCH_20_CONTROL_POINT = 26 , Ogre::OT_PATCH_21_CONTROL_POINT = 27 , Ogre::OT_PATCH_22_CONTROL_POINT = 28 ,
  Ogre::OT_PATCH_23_CONTROL_POINT = 29 , Ogre::OT_PATCH_24_CONTROL_POINT = 30 , Ogre::OT_PATCH_25_CONTROL_POINT = 31 , Ogre::OT_PATCH_26_CONTROL_POINT = 32 ,
  Ogre::OT_PATCH_27_CONTROL_POINT = 33 , Ogre::OT_PATCH_28_CONTROL_POINT = 34 , Ogre::OT_PATCH_29_CONTROL_POINT = 35 , Ogre::OT_PATCH_30_CONTROL_POINT = 36 ,
  Ogre::OT_PATCH_31_CONTROL_POINT = 37 , Ogre::OT_PATCH_32_CONTROL_POINT = 38 , Ogre::OT_DETAIL_ADJACENCY_BIT = 1 << 6 , Ogre::OT_LINE_LIST_ADJ = OT_LINE_LIST | OT_DETAIL_ADJACENCY_BIT ,
  Ogre::OT_LINE_STRIP_ADJ = OT_LINE_STRIP | OT_DETAIL_ADJACENCY_BIT , Ogre::OT_TRIANGLE_LIST_ADJ = OT_TRIANGLE_LIST | OT_DETAIL_ADJACENCY_BIT , Ogre::OT_TRIANGLE_STRIP_ADJ = OT_TRIANGLE_STRIP | OT_DETAIL_ADJACENCY_BIT
}
 
enum  Ogre::OrientationMode {
  Ogre::OR_DEGREE_0 = 0 , Ogre::OR_DEGREE_90 = 1 , Ogre::OR_DEGREE_180 = 2 , Ogre::OR_DEGREE_270 = 3 ,
  Ogre::OR_PORTRAIT = OR_DEGREE_0 , Ogre::OR_LANDSCAPERIGHT = OR_DEGREE_90 , Ogre::OR_LANDSCAPELEFT = OR_DEGREE_270
}
 Specifies orientation mode. 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
}
 List of parameter types available. More...
 
enum  Ogre::PolygonMode { Ogre::PM_POINTS = 1 , Ogre::PM_WIREFRAME = 2 , Ogre::PM_SOLID = 3 }
 The polygon mode to use when rasterising. More...
 
enum  Ogre::PrePassMode { Ogre::PrePassNone , Ogre::PrePassCreate , Ogre::PrePassUse }
 
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::SceneMemoryMgrTypes { Ogre::SCENE_DYNAMIC = 0 , Ogre::SCENE_STATIC , Ogre::NUM_SCENE_MEMORY_MANAGER_TYPES }
 The types of NodeMemoryManager & ObjectMemoryManagers. More...
 
enum  Ogre::ShadeOptions { Ogre::SO_FLAT , Ogre::SO_GOURAUD , Ogre::SO_PHONG }
 Light shading modes. More...
 
enum  Ogre::ShaderType {
  Ogre::VertexShader , Ogre::PixelShader , Ogre::GeometryShader , Ogre::HullShader ,
  Ogre::DomainShader , Ogre::NumShaderTypes
}
 
enum  Ogre::SortMode { Ogre::SM_DIRECTION , Ogre::SM_DISTANCE }
 Sort mode for billboard-set and particle-system. More...
 
enum  Ogre::StencilOperation {
  Ogre::SOP_KEEP , Ogre::SOP_ZERO , Ogre::SOP_REPLACE , Ogre::SOP_INCREMENT ,
  Ogre::SOP_DECREMENT , Ogre::SOP_INCREMENT_WRAP , Ogre::SOP_DECREMENT_WRAP , Ogre::SOP_INVERT
}
 Enum describing the various actions which can be taken on the stencil buffer. More...
 
enum  Ogre::StereoModeType { Ogre::SMT_NONE = 0x0 , Ogre::SMT_FRAME_SEQUENTIAL }
 Defines the stereo mode types. 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::VertexPass { Ogre::VpNormal , Ogre::VpShadow , Ogre::NumVertexPass }
 
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

 Ogre::FrameStats::FrameStats ()
 
void Ogre::FrameStats::addSample (const uint64 timeUs)
 Adds a new measured time, in microseconds More...
 
template<typename ValueType >
ValueType * Ogre::any_cast (Any *operand)
 
template<typename ValueType >
ValueType Ogre::any_cast (const Any &operand)
 
template<typename ValueType >
const ValueType * Ogre::any_cast (const Any *operand)
 
uint32 Ogre::FastHash (const char *data, int 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...
 
double Ogre::FrameStats::getAllTimeAverage () const
 Returns the average since the last reset(). More...
 
double Ogre::FrameStats::getAllTimeAverageFps () const
 Same as getAllTimeAverage(), but expressed as frames per second instead of seconds. More...
 
double Ogre::FrameStats::getBestTime () const
 Returns the best frame time in seconds since the last reset(). More...
 
uint64 Ogre::FrameStats::getLastTimeRawMicroseconds () const
 
double Ogre::FrameStats::getLatestTimeSinceLast () const
 Returns latest record of the time since last measurement. More...
 
double Ogre::FrameStats::getLatestTimeSinceLastFps () const
 Same as getLatestTimeSinceLast() but expressed as frames per second instead of seconds. More...
 
double Ogre::FrameStats::getPercentile95th (bool bUseTime) const
 Gets the 95th percentile, since the last reset(). More...
 
double Ogre::FrameStats::getPercentile99th (bool bUseTime) const
 Gets the 99th percentile, since the last reset. See getPercentile95th(). More...
 
double Ogre::FrameStats::getPercentileNth (double percentile, bool bUseTime) const
 Gets the desired percentile, since the last reset. More...
 
double Ogre::FrameStats::getRollingAverage () const
 Returns the rolling average. More...
 
double Ogre::FrameStats::getRollingAverageFps () const
 Same as getRollingAverage(), but expressed as frames per second instead of seconds. More...
 
double Ogre::FrameStats::getWorstTime () const
 Returns the worst frame time in seconds since the last reset(). More...
 
template<typename T >
uint32 Ogre::HashCombine (uint32 hashSoFar, const T &data)
 Combine hashes with same style as boost::hash_combine. More...
 
 Ogre::FrameStats::OGRE_DEPRECATED_VER (4) float getFps() const
 
template<class T >
bool Ogre::operator!= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool Ogre::operator< (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool Ogre::operator<= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool Ogre::operator== (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool Ogre::operator> (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool Ogre::operator>= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
void Ogre::FrameStats::reset (uint64 timeUs)
 
template<class T >
void Ogre::swap (ComPtr< T > &a, ComPtr< T > &b)
 

Variables

const String Ogre::BLANKSTRING
 Constant blank string, useful for returning by ref where local does not exist. More...
 
static const uint8 Ogre::c_allGraphicStagesMask
 
static const uint8 Ogre::c_computeStageMask = 1u << NumShaderTypes
 
const SPFMDeleteT Ogre::SPFM_DELETE_T
 

Detailed Description

Macro Definition Documentation

◆ OGRE_EXCEPT

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

◆ OGRE_EXCEPT_EX

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

◆ OGRE_LOG_THRESHOLD

#define OGRE_LOG_THRESHOLD   4

Typedef Documentation

◆ _StringHash

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

◆ ABGR

typedef uint32 Ogre::ABGR

◆ AbstractNodeList

◆ AbstractNodeListPtr

◆ AbstractNodePtr

◆ AliasTextureNamePairList

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

◆ ARGB

typedef uint32 Ogre::ARGB

◆ BGRA

typedef uint32 Ogre::BGRA

◆ BinaryOptionList

◆ ConcreteNodeList

◆ ConcreteNodeListPtr

◆ ConcreteNodePtr

◆ ConfigOption

Packages the details of a configuration option.

Remarks
Used for RenderSystem::getConfigOptions. If immutable is true, this option must be disabled for modifying.

◆ ConfigOptionMap

◆ ControllerFunctionRealPtr

◆ ControllerValueRealPtr

◆ FloatRect

typedef TRect<float> Ogre::FloatRect

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

◆ LightArray

◆ LightClosestArray

◆ LightList

◆ NameValuePairList

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

◆ ParamCommandMap

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

◆ ParameterList

typedef vector<ParameterDef>::type Ogre::ParameterList

◆ RealRect

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

◆ Rect

typedef TRect<long> Ogre::Rect

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

◆ RenderSystemList

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

◆ RGBA

typedef uint32 Ogre::RGBA

◆ ScriptTokenList

typedef vector<ScriptToken>::type Ogre::ScriptTokenList

◆ ScriptTokenListPtr

◆ StringVector

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

◆ StringVectorPtr

◆ TrackVertexColourType

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

◆ UnaryOptionList

◆ WindowList

Render window container.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

This enum defines the integer ids for keywords this compiler handles.

Enumerator
ID_MATERIAL 
ID_VERTEX_PROGRAM 
ID_GEOMETRY_PROGRAM 
ID_FRAGMENT_PROGRAM 
ID_TECHNIQUE 
ID_PASS 
ID_TEXTURE_UNIT 
ID_VERTEX_PROGRAM_REF 
ID_GEOMETRY_PROGRAM_REF 
ID_FRAGMENT_PROGRAM_REF 
ID_SHADOW_CASTER_VERTEX_PROGRAM_REF 
ID_SHADOW_CASTER_FRAGMENT_PROGRAM_REF 
ID_SHADOW_CASTER_MATERIAL 
ID_LOD_VALUES 
ID_LOD_STRATEGY 
ID_LOD_DISTANCES 
ID_RECEIVE_SHADOWS 
ID_TRANSPARENCY_CASTS_SHADOWS 
ID_SET_TEXTURE_ALIAS 
ID_SOURCE 
ID_SYNTAX 
ID_DEFAULT_PARAMS 
ID_PARAM_INDEXED 
ID_PARAM_NAMED 
ID_PARAM_INDEXED_AUTO 
ID_PARAM_NAMED_AUTO 
ID_SCHEME 
ID_LOD_INDEX 
ID_GPU_VENDOR_RULE 
ID_GPU_DEVICE_RULE 
ID_INCLUDE 
ID_EXCLUDE 
ID_AMBIENT 
ID_DIFFUSE 
ID_SPECULAR 
ID_EMISSIVE 
ID_VERTEXCOLOUR 
ID_SCENE_BLEND 
ID_COLOUR_BLEND 
ID_ONE 
ID_ZERO 
ID_DEST_COLOUR 
ID_SRC_COLOUR 
ID_ONE_MINUS_DEST_COLOUR 
ID_ONE_MINUS_SRC_COLOUR 
ID_DEST_ALPHA 
ID_SRC_ALPHA 
ID_ONE_MINUS_DEST_ALPHA 
ID_ONE_MINUS_SRC_ALPHA 
ID_SEPARATE_SCENE_BLEND 
ID_SCENE_BLEND_OP 
ID_REVERSE_SUBTRACT 
ID_MIN 
ID_MAX 
ID_SEPARATE_SCENE_BLEND_OP 
ID_DEPTH_CHECK 
ID_DEPTH_WRITE 
ID_DEPTH_FUNC 
ID_DEPTH_BIAS 
ID_ITERATION_DEPTH_BIAS 
ID_ALWAYS_FAIL 
ID_ALWAYS_PASS 
ID_LESS_EQUAL 
ID_LESS 
ID_EQUAL 
ID_NOT_EQUAL 
ID_GREATER_EQUAL 
ID_GREATER 
ID_ALPHA_REJECTION 
ID_ALPHA_TO_COVERAGE 
ID_LIGHT_SCISSOR 
ID_LIGHT_CLIP_PLANES 
ID_CULL_HARDWARE 
ID_CULL_MODE 
ID_CLOCKWISE 
ID_ANTICLOCKWISE 
ID_SHADING 
ID_FLAT 
ID_GOURAUD 
ID_PHONG 
ID_POLYGON_MODE 
ID_SOLID 
ID_WIREFRAME 
ID_POINTS 
ID_POLYGON_MODE_OVERRIDEABLE 
ID_FOG_OVERRIDE 
ID_NONE 
ID_LINEAR 
ID_EXP 
ID_EXP2 
ID_COLOUR_WRITE 
ID_CHANNEL_MASK 
ID_MAX_LIGHTS 
ID_START_LIGHT 
ID_ITERATION 
ID_ONCE 
ID_ONCE_PER_LIGHT 
ID_PER_LIGHT 
ID_PER_N_LIGHTS 
ID_POINT 
ID_SPOT 
ID_DIRECTIONAL 
ID_LIGHT_MASK 
ID_POINT_SIZE 
ID_POINT_SPRITES 
ID_POINT_SIZE_ATTENUATION 
ID_POINT_SIZE_MIN 
ID_POINT_SIZE_MAX 
ID_TEXTURE_ALIAS 
ID_TEXTURE 
ID_1D 
ID_2D 
ID_3D 
ID_CUBIC 
ID_2DARRAY 
ID_UNLIMITED 
ID_ALPHA 
ID_GAMMA 
ID_ANIM_TEXTURE 
ID_CUBIC_TEXTURE 
ID_SEPARATE_UV 
ID_COMBINED_UVW 
ID_TEX_ADDRESS_MODE 
ID_WRAP 
ID_CLAMP 
ID_BORDER 
ID_MIRROR 
ID_TEX_BORDER_COLOUR 
ID_FILTERING 
ID_BILINEAR 
ID_TRILINEAR 
ID_ANISOTROPIC 
ID_CMPFUNC 
ID_MAX_ANISOTROPY 
ID_MIPMAP_BIAS 
ID_COLOUR_OP 
ID_REPLACE 
ID_ADD 
ID_MODULATE 
ID_ALPHA_BLEND 
ID_COLOUR_OP_EX 
ID_SOURCE1 
ID_SOURCE2 
ID_MODULATE_X2 
ID_MODULATE_X4 
ID_ADD_SIGNED 
ID_ADD_SMOOTH 
ID_SUBTRACT 
ID_BLEND_DIFFUSE_COLOUR 
ID_BLEND_DIFFUSE_ALPHA 
ID_BLEND_TEXTURE_ALPHA 
ID_BLEND_CURRENT_ALPHA 
ID_BLEND_MANUAL 
ID_DOT_PRODUCT 
ID_SRC_CURRENT 
ID_SRC_TEXTURE 
ID_SRC_DIFFUSE 
ID_SRC_SPECULAR 
ID_SRC_MANUAL 
ID_COLOUR_OP_MULTIPASS_FALLBACK 
ID_ALPHA_OP_EX 
ID_ENV_MAP 
ID_SPHERICAL 
ID_PLANAR 
ID_CUBIC_REFLECTION 
ID_CUBIC_NORMAL 
ID_SCROLL 
ID_SCROLL_ANIM 
ID_ROTATE 
ID_ROTATE_ANIM 
ID_SCALE 
ID_WAVE_XFORM 
ID_SCROLL_X 
ID_SCROLL_Y 
ID_SCALE_X 
ID_SCALE_Y 
ID_SINE 
ID_TRIANGLE 
ID_SQUARE 
ID_SAWTOOTH 
ID_INVERSE_SAWTOOTH 
ID_TRANSFORM 
ID_BINDING_TYPE 
ID_VERTEX 
ID_FRAGMENT 
ID_CONTENT_TYPE 
ID_NAMED 
ID_SHADOW 
ID_COMPOSITOR 
ID_AUTOMATIC_BATCHING 
ID_TEXTURE_SOURCE 
ID_SHARED_PARAMS 
ID_SHARED_PARAM_NAMED 
ID_SHARED_PARAMS_REF 
ID_PARTICLE_SYSTEM 
ID_EMITTER 
ID_AFFECTOR 
ID_WORKSPACE 
ID_ALIAS 
ID_CONNECT 
ID_CONNECT_BUFFER 
ID_CONNECT_OUTPUT 
ID_CONNECT_EXTERNAL 
ID_CONNECT_BUFFER_EXTERNAL 
ID_COMPOSITOR_NODE 
ID_IN 
ID_OUT 
ID_IN_BUFFER 
ID_OUT_BUFFER 
ID_CUSTOM_ID 
ID_RTV 
ID_RESOLVE 
ID_MIP 
ID_RESOLVE_MIP 
ID_RESOLVE_MIPMAP 
ID_SLICE 
ID_RESOLVE_SLICE 
ID_ALL_LAYERS 
ID_DEPTH_STENCIL 
ID_DEPTH_READ_ONLY 
ID_STENCIL_READ_ONLY 
ID_BUFFER 
ID_TARGET_WIDTH 
ID_TARGET_HEIGHT 
ID_TARGET_WIDTH_SCALED 
ID_TARGET_HEIGHT_SCALED 
ID_TARGET_ORIENTATION_MODE 
ID_TARGET_FORMAT 
ID_MSAA 
ID_MSAA_AUTO 
ID_EXPLICIT_RESOLVE 
ID_NOT_TEXTURE 
ID_REINTERPRETABLE 
ID_KEEP_CONTENT 
ID_DEPTH_POOL 
ID_DEPTH_TEXTURE 
ID_DEPTH_FORMAT 
ID_2D_ARRAY 
ID_CUBEMAP 
ID_CUBEMAP_ARRAY 
ID_MIPMAPS 
ID_NO_AUTOMIPMAPS 
ID_TARGET 
ID_TARGET_LEVEL_BARRIER 
ID_CLEAR 
ID_STENCIL 
ID_RENDER_SCENE 
ID_RENDER_QUAD 
ID_DEPTH_COPY 
ID_BIND_UAV 
ID_LOAD 
ID_ALL 
ID_CLEAR_COLOUR 
ID_CLEAR_COLOUR_REVERSE_DEPTH_AWARE 
ID_CLEAR_DEPTH 
ID_CLEAR_STENCIL 
ID_WARN_IF_RTV_WAS_FLUSHED 
ID_STORE 
ID_SKIP_LOAD_STORE_SEMANTICS 
ID_VIEWPORT 
ID_NUM_INITIAL 
ID_FLUSH_COMMAND_BUFFERS 
ID_IDENTIFIER 
ID_OVERLAYS 
ID_EXECUTION_MASK 
ID_VIEWPORT_MODIFIER_MASK 
ID_USES_UAV 
ID_ALLOW_WRITE_AFTER_WRITE 
ID_EXPOSE 
ID_SHADOW_MAP_FULL_VIEWPORT 
ID_PROFILING_ID 
ID_LOD_BIAS 
ID_LOD_UPDATE_LIST 
ID_LOD_CAMERA 
ID_CULL_REUSE_DATA 
ID_CULL_CAMERA 
ID_MATERIAL_SCHEME 
ID_VISIBILITY_MASK 
ID_LIGHT_VISIBILITY_MASK 
ID_SHADOWS_ENABLED 
ID_CAMERA 
ID_FIRST_RENDER_QUEUE 
ID_LAST_RENDER_QUEUE 
ID_CAMERA_CUBEMAP_REORIENT 
ID_ENABLE_FORWARDPLUS 
ID_FLUSH_COMMAND_BUFFERS_AFTER_SHADOW_NODE 
ID_IS_PREPASS 
ID_USE_PREPASS 
ID_GEN_NORMALS_GBUFFER 
ID_USE_REFRACTIONS 
ID_UV_BAKING 
ID_UV_BAKING_OFFSET 
ID_BAKE_LIGHTING_ONLY 
ID_INSTANCED_STEREO 
ID_USE_QUAD 
ID_QUAD_NORMALS 
ID_CAMERA_FAR_CORNERS_VIEW_SPACE 
ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED 
ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED_LH 
ID_CAMERA_FAR_CORNERS_WORLD_SPACE 
ID_CAMERA_FAR_CORNERS_WORLD_SPACE_CENTERED 
ID_CAMERA_DIRECTION 
ID_INPUT 
ID_OUTPUT 
ID_NON_TILERS_ONLY 
ID_BUFFERS 
ID_COLOUR 
ID_DEPTH 
ID_COLOUR_VALUE 
ID_DEPTH_VALUE 
ID_STENCIL_VALUE 
ID_DISCARD_ONLY 
ID_CHECK 
ID_REF_VALUE 
ID_MASK 
ID_READ_MASK 
ID_BOTH 
ID_FRONT 
ID_BACK 
ID_COMP_FUNC 
ID_FAIL_OP 
ID_KEEP 
ID_INCREMENT 
ID_DECREMENT 
ID_INCREMENT_WRAP 
ID_DECREMENT_WRAP 
ID_INVERT 
ID_DEPTH_FAIL_OP 
ID_PASS_OP 
ID_TWO_SIDED 
ID_UAV 
ID_UAV_EXTERNAL 
ID_UAV_BUFFER 
ID_STARTING_SLOT 
ID_KEEP_PREVIOUS_UAV 
ID_READ 
ID_WRITE 
ID_MIPMAP 
ID_JOB 
ID_MIPMAP_METHOD 
ID_API_DEFAULT 
ID_COMPUTE_HQ 
ID_KERNEL_RADIUS 
ID_GAUSS_DEVIATION 
ID_MIP_RANGE 
ID_SAMPLES_PER_ITERATION 
ID_SAMPLES_SINGLE_ITERATION_FALLBACK 
ID_FORCE_MIPMAP_FALLBACK 
ID_MODE 
ID_READ_BACK_AS_TEXTURE 
ID_SHADOW_NODE 
ID_NUM_SPLITS 
ID_NUM_STABLE_SPLITS 
ID_NORMAL_OFFSET_BIAS 
ID_CONSTANT_BIAS_SCALE 
ID_PSSM_SPLIT_PADDING 
ID_PSSM_SPLIT_BLEND 
ID_PSSM_SPLIT_FADE 
ID_PSSM_LAMBDA 
ID_SHADOW_MAP_TARGET_TYPE 
ID_SHADOW_MAP_REPEAT 
ID_SHADOW_MAP 
ID_UV 
ID_ARRAY_INDEX 
ID_FSAA 
ID_LIGHT 
ID_SPLIT 
ID_HLMS 
ID_TESSELLATION_HULL_PROGRAM 

Suport for shader model 5.0.

ID_TESSELLATION_DOMAIN_PROGRAM 
ID_COMPUTE_PROGRAM 
ID_TESSELLATION_HULL_PROGRAM_REF 
ID_TESSELLATION_DOMAIN_PROGRAM_REF 
ID_COMPUTE_PROGRAM_REF 
ID_GEOMETRY 
ID_TESSELLATION_HULL 
ID_TESSELLATION_DOMAIN 
ID_COMPUTE 
ID_SUBROUTINE 
ID_END_BUILTIN_IDS 

◆ anonymous enum

anonymous enum

These codes represent token IDs which are numerical translations of specific lexemes.

Specific compilers using the lexer can register their own token IDs which are given precedence over these built-in ones.

Enumerator
TID_LBRACKET 
TID_RBRACKET 
TID_COLON 
TID_VARIABLE 
TID_WORD 
TID_QUOTE 
TID_NEWLINE 
TID_UNKNOWN 
TID_END 

◆ AbstractNodeType

This enum holds the types of the possible abstract nodes.

Enumerator
ANT_UNKNOWN 
ANT_ATOM 
ANT_OBJECT 
ANT_PROPERTY 
ANT_IMPORT 
ANT_VARIABLE_SET 
ANT_VARIABLE_ACCESS 

◆ ClipResult

Generic result of clipping.

Enumerator
CLIPPED_NONE 

Nothing was clipped.

CLIPPED_SOME 

Partially clipped.

CLIPPED_ALL 

Everything was clipped away.

◆ ColourBufferType

Defines the colour buffer types.

Enumerator
CBT_BACK 
CBT_BACK_LEFT 
CBT_BACK_RIGHT 

◆ CompareFunction

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

Enumerator
CMPF_ALWAYS_FAIL 
CMPF_ALWAYS_PASS 
CMPF_LESS 
CMPF_LESS_EQUAL 
CMPF_EQUAL 
CMPF_NOT_EQUAL 
CMPF_GREATER_EQUAL 
CMPF_GREATER 
NUM_COMPARE_FUNCTIONS 

◆ ConcreteNodeType

These enums hold the types of the concrete parsed nodes.

Enumerator
CNT_VARIABLE 
CNT_VARIABLE_ASSIGN 
CNT_WORD 
CNT_IMPORT 
CNT_QUOTE 
CNT_LBRACE 
CNT_RBRACE 
CNT_COLON 

◆ CullingMode

Hardware culling modes based on vertex winding.

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

A typical way for the rendering engine to cull triangles is based on the 'vertex winding' of triangles. Vertex winding refers to the direction in which the vertices are passed or indexed to in the rendering operation as viewed from the camera, and will wither be clockwise or anticlockwise (that's 'counterclockwise' for you Americans out there ;) The default is CULL_CLOCKWISE i.e. that only triangles whose vertices are passed/indexed in anticlockwise order are rendered - this is a common approach and is used in 3D studio models for example. You can alter this culling mode if you wish but it is not advised unless you know what you are doing.
You may wish to use the CULL_NONE option for mesh data that you cull yourself where the vertex winding is uncertain.
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.

◆ 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.

◆ 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.

◆ 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.

◆ FrameBufferType

Defines the frame buffer types.

Enumerator
FBT_COLOUR 
FBT_DEPTH 
FBT_STENCIL 

◆ IndexType

Enumerator
IT_16BIT 
IT_32BIT 

◆ 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 

◆ LoggingLevel

The level of detail to which the log will go into.

Enumerator
LL_LOW 
LL_NORMAL 
LL_BOREME 

◆ LogMessageLevel

The importance of a logged message.

Enumerator
LML_TRIVIAL 
LML_NORMAL 
LML_CRITICAL 

◆ OperationType

Enumerator
OT_POINT_LIST 

A list of points, 1 vertex per point.

OT_LINE_LIST 

A list of lines, 2 vertices per line.

OT_LINE_STRIP 

A strip of connected lines, 1 vertex per line plus 1 start vertex.

OT_TRIANGLE_LIST 

A list of triangles, 3 vertices per triangle.

OT_TRIANGLE_STRIP 

A strip of triangles, 3 vertices for the first triangle, and 1 per triangle after that.

OT_TRIANGLE_FAN 

A fan of triangles, 3 vertices for the first triangle, and 1 per triangle after that.

OT_PATCH_1_CONTROL_POINT 

Patch control point operations, used with tessellation stages.

OT_PATCH_2_CONTROL_POINT 
OT_PATCH_3_CONTROL_POINT 
OT_PATCH_4_CONTROL_POINT 
OT_PATCH_5_CONTROL_POINT 
OT_PATCH_6_CONTROL_POINT 
OT_PATCH_7_CONTROL_POINT 
OT_PATCH_8_CONTROL_POINT 
OT_PATCH_9_CONTROL_POINT 
OT_PATCH_10_CONTROL_POINT 
OT_PATCH_11_CONTROL_POINT 
OT_PATCH_12_CONTROL_POINT 
OT_PATCH_13_CONTROL_POINT 
OT_PATCH_14_CONTROL_POINT 
OT_PATCH_15_CONTROL_POINT 
OT_PATCH_16_CONTROL_POINT 
OT_PATCH_17_CONTROL_POINT 
OT_PATCH_18_CONTROL_POINT 
OT_PATCH_19_CONTROL_POINT 
OT_PATCH_20_CONTROL_POINT 
OT_PATCH_21_CONTROL_POINT 
OT_PATCH_22_CONTROL_POINT 
OT_PATCH_23_CONTROL_POINT 
OT_PATCH_24_CONTROL_POINT 
OT_PATCH_25_CONTROL_POINT 
OT_PATCH_26_CONTROL_POINT 
OT_PATCH_27_CONTROL_POINT 
OT_PATCH_28_CONTROL_POINT 
OT_PATCH_29_CONTROL_POINT 
OT_PATCH_30_CONTROL_POINT 
OT_PATCH_31_CONTROL_POINT 
OT_PATCH_32_CONTROL_POINT 
OT_DETAIL_ADJACENCY_BIT 

Mark that the index buffer contains adjacency information.

OT_LINE_LIST_ADJ 

like OT_POINT_LIST but with adjacency information for the geometry shader

OT_LINE_STRIP_ADJ 

like OT_LINE_STRIP but with adjacency information for the geometry shader

OT_TRIANGLE_LIST_ADJ 

like OT_TRIANGLE_LIST but with adjacency information for the geometry shader

OT_TRIANGLE_STRIP_ADJ 

like OT_TRIANGLE_STRIP but with adjacency information for the geometry shader

◆ OrientationMode

Specifies orientation mode.

Enumerator
OR_DEGREE_0 
OR_DEGREE_90 

Causes internal resolution to swap width and height.

OR_DEGREE_180 
OR_DEGREE_270 

Causes internal resolution to swap width and height.

OR_PORTRAIT 
OR_LANDSCAPERIGHT 
OR_LANDSCAPELEFT 

◆ ParameterType

List of parameter types available.

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 

◆ PolygonMode

The polygon mode to use when rasterising.

Enumerator
PM_POINTS 

Only points are rendered.

PM_WIREFRAME 

Wireframe models are rendered.

PM_SOLID 

Solid polygons are rendered.

◆ PrePassMode

Enumerator
PrePassNone 

This is a normal pass.

PrePassCreate 

This is a depth pre-pass.

Note: Implementations may write to colour too for hybrid deferred & forward rendering.

PrePassUse 

This pass will be using the results of a previous pre-pass.

◆ 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.

◆ SceneMemoryMgrTypes

The types of NodeMemoryManager & ObjectMemoryManagers.

Remarks
By default all objects are dynamic. Static objects can save a lot of performance on CPU side (and sometimes GPU side, for example with some instancing techniques) by telling the engine they won't be changing often.
What it means for Nodes: Nodes created with SCENE_STATIC won't update their derived position/rotation/scale every frame. This means that modifying (eg) a static node position won't actually take effect until SceneManager::notifyStaticDirty( mySceneNode ) is called or some other similar call.

If the static scene node is child of a dynamic parent node, modifying the dynamic node will not cause the static one to notice the change until explicitly notifying the SceneManager that the child node should be updated.

If a static scene node is child of another static scene node, explicitly notifying the SceneManager of the parent's change automatically causes the child to be updated as well

Having a dynamic node to be child of a static node is perfectly pausible and encouraged, for example a moving pendulum hanging from a static clock. Having a static node being child of a dynamic node doesn't make much sense, and is probably a bug (unless the parent is the root node).

What it means for Entities (and InstancedEntities, etc) Static entities are scheduled for culling and rendering like dynamic ones, but won't update their world AABB bounds (even if their scene node they're attached to changes)

Static entities will update their aabb if user calls SceneManager::notifyStaticDirty( myEntity ) or the static node they're attached to was also flagged as dirty. Note that updating the node's position doesn't flag the node as dirty (it's not implicit) and hence the entity won't be updated either.

Static entities can only be attached to static nodes, and dynamic entities can only be attached to dynamic nodes.

Note that on most cases, changing a single static entity or node (or creating more) can cause a lot of other static objects to be scheduled to update, so don't do it often, and do it all in the same frame. An example is doing it at startup (i.e. during loading time)
Entities & Nodes can switch between dynamic & static at runtime. However InstancedEntities can't. You need to destroy the InstancedEntity and create a new one if you wish to switch (which, by the way, isn't expensive because batches preallocate the instances) InstancedEntities with different SceneMemoryMgrTypes will never share the same batch.
Enumerator
SCENE_DYNAMIC 
SCENE_STATIC 
NUM_SCENE_MEMORY_MANAGER_TYPES 

◆ ShadeOptions

Light shading modes.

DEPRECATED

Enumerator
SO_FLAT 
SO_GOURAUD 
SO_PHONG 

◆ ShaderType

Enumerator
VertexShader 
PixelShader 
GeometryShader 
HullShader 
DomainShader 
NumShaderTypes 

◆ SortMode

Sort mode for billboard-set and particle-system.

Enumerator
SM_DIRECTION 

Sort by direction of the camera.

SM_DISTANCE 

Sort by distance from the camera.

◆ StencilOperation

Enum describing the various actions which can be taken on the stencil buffer.

Enumerator
SOP_KEEP 

Leave the stencil buffer unchanged.

SOP_ZERO 

Set the stencil value to zero.

SOP_REPLACE 

Set the stencil value to the reference value.

SOP_INCREMENT 

Increase the stencil value by 1, clamping at the maximum value.

SOP_DECREMENT 

Decrease the stencil value by 1, clamping at 0.

SOP_INCREMENT_WRAP 

Increase the stencil value by 1, wrapping back to 0 when incrementing the maximum value.

SOP_DECREMENT_WRAP 

Decrease the stencil value by 1, wrapping when decrementing 0.

SOP_INVERT 

Invert the bits of the stencil buffer.

◆ StereoModeType

Defines the stereo mode types.

Enumerator
SMT_NONE 
SMT_FRAME_SEQUENTIAL 

◆ TextureFilterOptions

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

Enumerator
TFO_NONE 

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

TFO_BILINEAR 

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

TFO_TRILINEAR 

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

TFO_ANISOTROPIC 

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

◆ TrackVertexColourEnum

Enumerator
TVC_NONE 
TVC_AMBIENT 
TVC_DIFFUSE 
TVC_SPECULAR 
TVC_EMISSIVE 

◆ VertexPass

Enumerator
VpNormal 
VpShadow 
NumVertexPass 

◆ 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.

Function Documentation

◆ FrameStats()

Ogre::FrameStats::FrameStats ( )
inline

◆ addSample()

void Ogre::FrameStats::addSample ( const uint64  timeUs)
inline

Adds a new measured time, in microseconds

◆ any_cast() [1/3]

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

◆ any_cast() [2/3]

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

◆ any_cast() [3/3]

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

◆ FastHash()

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

Fast general hashing algorithm.

Referenced by Ogre::HashCombine().

◆ 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.

◆ getAllTimeAverage()

double Ogre::FrameStats::getAllTimeAverage ( ) const
inline

Returns the average since the last reset().

This is what you want if you're benchmarking an entire session, and want to know the average of all samples.

Remarks
Multiply by 1000.0 to get the time in milliseconds per frame.
Returns
Average time since the last reset(), in seconds.

◆ getAllTimeAverageFps()

double Ogre::FrameStats::getAllTimeAverageFps ( ) const
inline

Same as getAllTimeAverage(), but expressed as frames per second instead of seconds.

Returns
Average time in FPS.

◆ getBestTime()

double Ogre::FrameStats::getBestTime ( ) const
inline

Returns the best frame time in seconds since the last reset().

Remarks
Multiply by 1000.0 to get the time in milliseconds per frame.
Returns
Best frame time in seconds.

◆ getLastTimeRawMicroseconds()

uint64 Ogre::FrameStats::getLastTimeRawMicroseconds ( ) const
inline

◆ getLatestTimeSinceLast()

double Ogre::FrameStats::getLatestTimeSinceLast ( ) const
inline

Returns latest record of the time since last measurement.

i.e. the time spent between the last two addSample() calls.

This is the same as getRollingAverage() except this value is too noisy.

Remarks
Multiply by 1000.0 to get the time in milliseconds per frame.
Returns
Time in seconds spent between the last two addSample() calls.

◆ getLatestTimeSinceLastFps()

double Ogre::FrameStats::getLatestTimeSinceLastFps ( ) const
inline

Same as getLatestTimeSinceLast() but expressed as frames per second instead of seconds.

◆ getPercentile95th()

double Ogre::FrameStats::getPercentile95th ( bool  bUseTime) const
inline

Gets the 95th percentile, since the last reset().

Remarks
For memory constraint reasons, we track framerates in 0.4 steps. Which means we will report percentiles of 0.4fps, 0.8fps, 1.2fps, ... 60.0, 60.4 and so on.
If the framerate often stays above 409.6 fps, we may not be able to accurately calculate the percentiles.
Multiply by 1000.0 to get the time in milliseconds per frame. Perform 1.0 / getPercentile95th() to get the value in frames per second.
Parameters
bUseTime

When true, we divide the total rendering time in percentiles.

The advantage is that it is more homogeneous and biases towards slow frames. The disadvantage is that slow loading times can skew the results too much.

When false, we divide the total number of samples in percentiles.

The disadvantage is that a slow frame (i.e. spikes) matter less when running at 144hz than when running at 60hz.

See https://www.yosoygames.com.ar/wp/2023/09/youre-calculating-framerate-percentiles-wrong/

Returns
The frametime in seconds at the requested percentile.

◆ getPercentile99th()

double Ogre::FrameStats::getPercentile99th ( bool  bUseTime) const
inline

Gets the 99th percentile, since the last reset. See getPercentile95th().

◆ getPercentileNth()

double Ogre::FrameStats::getPercentileNth ( double  percentile,
bool  bUseTime 
) const
inline

Gets the desired percentile, since the last reset.

See getPercentile95th().

Parameters
percentileValue in range (0; 1)
bUseTimeSee getPercentile95th().
Returns
See getPercentile95th().

◆ getRollingAverage()

double Ogre::FrameStats::getRollingAverage ( ) const
inline

Returns the rolling average.

This is what you want to display for an FPS counter; Since the framerate during the last few seconds are what matter the most.

Remarks
Multiply by 1000.0 to get the time in milliseconds per frame.
Returns
Average time in seconds.

◆ getRollingAverageFps()

double Ogre::FrameStats::getRollingAverageFps ( ) const
inline

Same as getRollingAverage(), but expressed as frames per second instead of seconds.

Returns
Average time in FPS.

◆ getWorstTime()

double Ogre::FrameStats::getWorstTime ( ) const
inline

Returns the worst frame time in seconds since the last reset().

Remarks
Multiply by 1000.0 to get the time in milliseconds per frame.
Returns
Worst frame time in seconds.

◆ HashCombine()

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

Combine hashes with same style as boost::hash_combine.

References Ogre::FastHash().

◆ OGRE_DEPRECATED_VER()

Ogre::FrameStats::OGRE_DEPRECATED_VER ( ) const
inline
Deprecated:
since 4.0 in favour of getLatestTimeSinceLastFps().

◆ operator!=()

template<class T >
bool Ogre::operator!= ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ operator<()

template<class T >
bool Ogre::operator< ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ operator<=()

template<class T >
bool Ogre::operator<= ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ operator==()

template<class T >
bool Ogre::operator== ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ operator>()

template<class T >
bool Ogre::operator> ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ operator>=()

template<class T >
bool Ogre::operator>= ( const ComPtr< T > &  a,
const ComPtr< T > &  b 
)

◆ reset()

void Ogre::FrameStats::reset ( uint64  timeUs)
inline

◆ swap()

template<class T >
void Ogre::swap ( ComPtr< T > &  a,
ComPtr< T > &  b 
)

Variable Documentation

◆ BLANKSTRING

const String Ogre::BLANKSTRING

Constant blank string, useful for returning by ref where local does not exist.

Referenced by Ogre::MetalRenderSystem::validateConfigOptions(), and Ogre::NULLRenderSystem::validateConfigOptions().

◆ c_allGraphicStagesMask

const uint8 Ogre::c_allGraphicStagesMask
static
Initial value:
= ( 1u << VertexShader ) | ( 1u << PixelShader ) |
( 1u << GeometryShader ) | ( 1u << HullShader ) |
( 1u << DomainShader )
@ VertexShader
Definition: OgreCommon.h:412
@ GeometryShader
Definition: OgreCommon.h:414
@ HullShader
Definition: OgreCommon.h:415
@ DomainShader
Definition: OgreCommon.h:416
@ PixelShader
Definition: OgreCommon.h:413

◆ c_computeStageMask

const uint8 Ogre::c_computeStageMask = 1u << NumShaderTypes
static

◆ SPFM_DELETE_T

const SPFMDeleteT Ogre::SPFM_DELETE_T