OGRE  2.2.4
Object-Oriented Graphics Rendering Engine
Ogre Namespace Reference


This source file is part of OGRE (Object-oriented Graphics Rendering Engine) For the latest info, see http://www.ogre3d.org/ More...

Namespaces

 Assert
 
 CommonTextureTypes
 
 CubemapSide
 
 DefaultMipmapGen
 
 EmitterCommands
 
 GpuPageOutStrategy
 
 GpuResidency
 
 LampConeType
 
 LampHorizType
 
 LoadAction
 
 MsaaPatterns
 
 PbsBrdf
 
 PixelFormatDataTypes
 
 ReadBarrier
 
 ResourceAccess
 
 ResourceLayout
 
 RTShader
 
 SceneFlags
 
 StoreAction
 
 TextureFilter
 
 TextureFlags
 
 TextureSourceType
 
 TextureTypes
 
 v1
 
 VisibilityFlags
 
 Volume
 
 VoxelizerJobSetting
 
 WriteBarrier
 

Classes

struct  _ConfigOption
 Packages the details of a configuration option. More...
 
struct  Aabb
 AoS (array of structures) version of ArrayAabb. More...
 
class  AbsolutePixelCountLodStrategy
 The AbsolutePixelCountLodStrategy class LOD strategy that works like ScreenRatioPixelCountLodStrategy, but in range [-width * height;0] instead of [-1.0;0.0]. More...
 
class  AbstractNode
 
struct  ActiveActorData
 
class  AlignedMemory
 Class to provide aligned memory allocate functionality. More...
 
class  AllocatedObject
 Superclass for all objects that wish to use custom memory allocators when their new / delete operators are called. More...
 
class  AndroidEGLContext
 
class  AndroidEGLSupport
 
class  AndroidEGLWindow
 
class  AndroidLogListener
 
class  Angle
 Wrapper class which identifies a value as the currently default angle type, as defined by Math::setAngleUnit. More...
 
class  AnimableObject
 Defines an interface to classes which have one or more AnimableValue instances to expose. More...
 
class  AnimableValue
 Defines an object property which is animable, i.e. More...
 
class  AnimationControllerFunction
 Predefined controller function for dealing with animation. More...
 
class  Any
 Variant type that can hold Any other type. More...
 
class  AnyNumeric
 Specialised Any class which has built in arithmetic operators, but can hold only types which support operator +,-,* and / . More...
 
class  APKFileSystemArchive
 
class  APKFileSystemArchiveFactory
 
class  APKZipArchiveFactory
 
class  Archive
 Archive-handling class. More...
 
class  ArchiveFactory
 Abstract factory class, archive codec plugins can register concrete subclasses of this. More...
 
class  ArchiveManager
 This class manages the available ArchiveFactory plugins. More...
 
class  ArrayAabb
 Cache-friendly array of Aabb represented as a SoA array. More...
 
struct  ArrayActorPlane
 Actors are defined by a plane and a rectangle that limits that plane. More...
 
class  ArrayMatrix4
 Cache-friendly container of 4x4 matrices represented as a SoA array. More...
 
class  ArrayMatrixAf4x3
 Cache-friendly container of AFFINE 4x4 matrices represented as a SoA array. More...
 
class  ArrayMemoryManager
 Abstract memory manager for managing large chunks of contiguous memory, optimized for SoA (Structure of Arrays) implementations. More...
 
class  ArrayQuaternion
 Cache-friendly array of Quaternion represented as a SoA array. More...
 
class  ArrayRay
 
class  ArraySphere
 Cache-friendly array of Sphere represented as a SoA array. More...
 
class  ArrayVector3
 Cache-friendly array of 3-dimensional represented as a SoA array. More...
 
class  ASTCCodec
 Codec specialized in loading ASTC (ARM Adaptive Scalable Texture Compression) images. More...
 
class  AsyncTextureTicket
 In Ogre 2.2 reading data from GPU back to CPU is asynchronous. More...
 
class  AsyncTicket
 In Ogre 2.0 data structures, reading data from GPU back to CPU is asynchronous. More...
 
class  AtomAbstractNode
 This is an abstract node which cannot be broken down further. More...
 
class  AtomicObject
 
class  AtomicScalar
 
class  AutoParamDataSource
 This utility class is used to hold the information used to generate the matrices and other information required to automatically populate GpuProgramParameters. More...
 
class  AxisAlignedBox
 A 3D box aligned with the x/y/z axes. More...
 
class  AxisAlignedBoxSceneQuery
 Specialises the SceneQuery class for querying within an axis aligned box. More...
 
struct  BackgroundProcessResult
 Encapsulates the result of a background queue request. More...
 
class  Barrier
 A barrier is a synchronization mechanism where multiple threads wait until all of them have reached the barrier sync point before continuing. More...
 
struct  BasicBlock
 
class  Bitwise
 Class for manipulating bit patterns. More...
 
class  Bone
 Class representing a Bone in the join hierarchy of a skeleton. More...
 
class  BoneArrayMemoryManager
 Implementation to create the Transform variables needed by Bones. More...
 
class  BoneMemoryManager
 Wrap-around class that contains multiple ArrayMemoryManager, one per hierarchy depth. More...
 
struct  BoneTransform
 Represents the transform of a single object, arranged in SoA (Structure of Arrays) More...
 
class  BooleanMask4
 
struct  BoundUav
 
struct  Box
 Structure used to define a box in a 3-D integer space. More...
 
class  BufferInterface
 Most (if not all) buffers, can be treated with the same code. More...
 
class  BufferPacked
 
struct  BuildLightListRequest
 
class  BuiltinScriptTranslatorManager
 This class manages the builtin translators. More...
 
struct  BySkeletonDef
 
class  Camera
 A viewpoint from which the scene will be rendered. More...
 
struct  CamerasInProgress
 Struct that holds a number of cameras used in the current rendering pass. More...
 
class  CategorisedAlignAllocPolicy
 
class  CategorisedAllocPolicy
 
struct  CbBase
 
struct  CbDrawCall
 
struct  CbDrawCallIndexed
 
struct  CbDrawCallStrip
 
struct  CbDrawIndexed
 
struct  CbDrawStrip
 
struct  CbIndirectBuffer
 
class  cbitset32
 
This is similar to std::bitset, except waaay less bloat.
More...
 
class  cbitsetN
 
struct  CbLowLevelMaterial
 
struct  CbPipelineStateObject
 
struct  CbSamplers
 
struct  CbShaderBuffer
 
struct  CbSharedDraw
 
struct  CbTexture
 
struct  CbTextures
 
struct  CbVao
 
class  CocoaContext
 
class  CocoaWindow
 
class  Codec
 Abstract class that defines a 'codec'. More...
 
class  ColourValue
 Class representing colour. More...
 
class  CommandBuffer
 Command Buffer implementation. More...
 
class  CompositorLoadActionTranslator
 
class  CompositorManager2
 Main system for managing Render Targets through the use of nodes. More...
 
struct  CompositorNamedBuffer
 
class  CompositorNode
 Compositor nodes are the core subject of compositing. More...
 
class  CompositorNodeDef
 Compositor nodes are the core subject of compositing. More...
 
class  CompositorNodeTranslator
 
class  CompositorPass
 Abstract class for compositor passes. More...
 
class  CompositorPassClear
 Implementation of CompositorPass This implementation will clear the RenderTarget using the parameters from definition (rectangle area, which buffers, what values, etc) More...
 
class  CompositorPassClearDef
 
class  CompositorPassCompute
 Implementation of CompositorPass This implementation will render a fullscreen triangle/quad to the RenderTarget using the parameters from definition (rectangle area, whether triangle or quad pass, whether to include frustum corners, etc) More...
 
class  CompositorPassComputeDef
 
class  CompositorPassDef
 Interface to abstract all types of pass definitions (. More...
 
class  CompositorPassDepthCopy
 Implementation of CompositorPass This implementation will copy one DepthBuffer to another DepthBuffer from two RTs. More...
 
class  CompositorPassDepthCopyDef
 
class  CompositorPassIblSpecular
 Implementation of CompositorPass This implementation will generate IblSpeculars for the specified texture. More...
 
class  CompositorPassIblSpecularDef
 
class  CompositorPassMipmap
 Implementation of CompositorPass This implementation will generate mipmaps for the specified texture. More...
 
class  CompositorPassMipmapDef
 
class  CompositorPassProvider
 Base class that users can derive from in order to implement custom passes for the compositor. More...
 
class  CompositorPassQuad
 Implementation of CompositorPass This implementation will render a fullscreen triangle/quad to the RenderTarget using the parameters from definition (rectangle area, whether triangle or quad pass, whether to include frustum corners, etc) More...
 
class  CompositorPassQuadDef
 
class  CompositorPassScene
 Implementation of CompositorPass This implementation will perform main rendering, selecting several parameters (like viewport's visibility mask, first and last render queue to render) it will render the main scene. More...
 
class  CompositorPassSceneDef
 
class  CompositorPassStencil
 Implementation of CompositorPass This implementation will clear the RenderTarget using the parameters from definition (rectangle area, which buffers, what values, etc) More...
 
class  CompositorPassStencilDef
 
class  CompositorPassTranslator
 
class  CompositorPassUav
 Implementation of CompositorPass This implementation will set UAVs. More...
 
class  CompositorPassUavDef
 
class  CompositorRenderTargetViewTranslator
 
class  CompositorShadowMapRepeatTranslator
 
class  CompositorShadowMapTargetTranslator
 
class  CompositorShadowMapTargetTypeTranslator
 
class  CompositorShadowNode
 Shadow Nodes are special nodes (not to be confused with. More...
 
class  CompositorShadowNodeDef
 Shadow Nodes are special nodes (not to be confused with. More...
 
class  CompositorShadowNodeTranslator
 
class  CompositorStoreActionTranslator
 
class  CompositorTargetDef
 
class  CompositorTargetTranslator
 
struct  CompositorTexture
 
class  CompositorTextureBaseTranslator
 
class  CompositorWorkspace
 A compositor workspace is the main interface to render into an RT, be it a RenderWindow or an RTT (Render Texture Target). More...
 
class  CompositorWorkspaceDef
 CompositorWorkspace. More...
 
class  CompositorWorkspaceListener
 
class  CompositorWorkspaceTranslator
 
class  ComPtr
 
struct  ComputeProperty
 
class  ComputeTools
 
class  ConcentricShadowCamera
 Implements the concentric shadow mapping algorithm. More...
 
struct  ConcreteNode
 
class  ConfigDialog
 Defines the behaviour of an automatic renderer configuration dialog. More...
 
class  ConfigFile
 Class for quickly loading settings from a text file. More...
 
class  ConstBufferPacked
 Represents constant buffers (also known as Uniform Buffers in GL) More...
 
class  ConstBufferPool
 Maintains a pool of buffers grouped by hash ID. More...
 
class  ConstBufferPoolUser
 
class  ConstMapIterator
 Concrete IteratorWrapper for const access to the underlying key-value container. More...
 
struct  ConstMapRange
 Predefined type. More...
 
class  ConstVectorIterator
 Concrete IteratorWrapper for const access to the underlying container. More...
 
struct  ConstVectorRange
 Predefined type. More...
 
class  Controller
 Instances of this class 'control' the value of another object in the system. More...
 
class  ControllerFunction
 Subclasses of this class are responsible for performing a function on an input value for a Controller. More...
 
class  ControllerManager
 Class for managing Controller instances. More...
 
class  ControllerValue
 Can either be used as an input or output value. More...
 
class  ConvexBody
 Holds a solid representation of a convex body. More...
 
class  CPreprocessor
 This is a simplistic C/C++-like preprocessor. More...
 
class  CreateCompositorScriptCompilerEvent
 
class  CreateGpuProgramScriptCompilerEvent
 
class  CreateGpuSharedParametersScriptCompilerEvent
 
class  CreateHighLevelGpuProgramScriptCompilerEvent
 
class  CreateMaterialScriptCompilerEvent
 
class  CreateParticleSystemScriptCompilerEvent
 
class  CubemapProbe
 
struct  CullFrustumRequest
 All variables are read-only for the worker threads. More...
 
class  CustomCompositionPass
 Interface for custom composition passes, allowing custom operations (in addition to the quad, scene and clear operations) in composition passes. More...
 
class  D3D11AmdExtension
 
class  D3D11AsyncTextureTicket
 See AsyncTextureTicket. More...
 
class  D3D11AsyncTicket
 
class  D3D11BufferInterface
 For D3D11, most (if not all) buffers, can be treated with the same code. More...
 
class  D3D11BufferInterfaceBase
 For D3D11, most (if not all) buffers, can be treated with the same code. More...
 
class  D3D11CompatBufferInterface
 In D3D11, const buffers can't be bound by offset. More...
 
class  D3D11ConstBufferPacked
 
class  D3D11DepthBuffer
 
class  D3D11DepthTexture
 
class  D3D11DepthTextureTarget
 
class  D3D11Device
 
class  D3D11DeviceResource
 Represents a Direct3D rendering resource. More...
 
class  D3D11DeviceResourceManager
 Singleton that is used to propagate device state changed notifications. More...
 
class  D3D11Driver
 
class  D3D11DriverList
 
class  D3D11DynamicBuffer
 D3D11 doesn't support mapping the same buffer twice even if the regions don't overlap. More...
 
struct  D3D11FrameBufferDescValue
 
class  D3D11GpuProgramManager
 
class  D3D11HardwareOcclusionQuery
 This is a class that is the DirectX9 implementation of hardware occlusion testing. More...
 
struct  D3D11HlmsPso
 HlmsPso. More...
 
class  D3D11HLSLProgram
 Specialization of HighLevelGpuProgram to provide support for D3D11 High-Level Shader Language (HLSL). More...
 
class  D3D11HLSLProgramFactory
 Factory class for D3D11 HLSL programs. More...
 
class  D3D11Mappings
 
class  D3D11MultiRenderTarget
 
class  D3D11NullTexture
 
class  D3D11NullTextureTarget
 
class  D3D11PixelFormatToShaderType
 
class  D3D11Plugin
 Plugin instance for D3D11 Manager. More...
 
class  D3D11RenderPassDescriptor
 D3D11 will share groups of ID3D11RenderTargetView all D3D11RenderPassDescriptor that share the same RTV setup. More...
 
class  D3D11RenderSystem
 Implementation of DirectX11 as a rendering system. More...
 
class  D3D11RenderTexture
 RenderTexture implementation for D3D11. More...
 
class  D3D11RenderWindowBase
 
class  D3D11RenderWindowSwapChainBased
 
class  D3D11StagingBuffer
 NOTE FOR D3D12 PORTING: The GL3Plus implementation should be used as reference, since it is much lower level than this implementation for D3D11. More...
 
class  D3D11StagingTexture
 
class  D3D11StereoDriverAMD
 Virtual interface of the stereo driver. More...
 
class  D3D11StereoDriverBridge
 Bridge interface from the render system to the stereo driver. More...
 
class  D3D11StereoDriverImpl
 Virtual interface of the stereo driver. More...
 
class  D3D11StereoDriverNVIDIA
 Interface of the NVIDIA stereo driver. More...
 
class  D3D11TexBufferPacked
 
class  D3D11Texture
 
class  D3D11TextureGpu
 
class  D3D11TextureGpuManager
 
class  D3D11TextureGpuRenderTarget
 
class  D3D11TextureGpuWindow
 
class  D3D11TextureManager
 
class  D3D11UavBufferPacked
 
class  D3D11VaoManager
 
class  D3D11VendorExtension
 
struct  D3D11VertexArrayObject
 
struct  D3D11VertexArrayObjectShared
 
class  D3D11VideoMode
 
class  D3D11VideoModeList
 
class  D3D11Window
 
class  D3D11WindowSwapChainBased
 
class  D3D9DepthBuffer
 
class  D3D9Device
 High level interface of Direct3D9 Device. More...
 
class  D3D9DeviceManager
 Device manager interface. More...
 
class  D3D9Driver
 
class  D3D9DriverList
 
class  D3D9GpuFragmentProgram
 Direct3D implementation of low-level fragment programs. More...
 
class  D3D9GpuProgram
 Direct3D implementation of a few things common to low-level vertex & fragment programs. More...
 
class  D3D9GpuProgramManager
 
class  D3D9GpuVertexProgram
 Direct3D implementation of low-level vertex programs. More...
 
class  D3D9HardwareBufferManager
 D3D9HardwareBufferManagerBase as a Singleton. More...
 
class  D3D9HardwareBufferManagerBase
 Implementation of HardwareBufferManager for D3D9. More...
 
class  D3D9HardwareIndexBuffer
 
class  D3D9HardwareOcclusionQuery
 This is a class that is the DirectX9 implementation of hardware occlusion testing. More...
 
class  D3D9HardwarePixelBuffer
 
class  D3D9HardwareVertexBuffer
 Specialisation of HardwareVertexBuffer for D3D9. More...
 
class  D3D9HLSLProgram
 Specialisation of HighLevelGpuProgram to provide support for D3D9 High-Level Shader Language (HLSL). More...
 
class  D3D9HLSLProgramFactory
 Factory class for D3D9 HLSL programs. More...
 
class  D3D9Mappings
 
class  D3D9MultiRenderTarget
 
class  D3D9Plugin
 Plugin instance for D3D9 Manager. More...
 
class  D3D9RenderSystem
 Implementation of DirectX9 as a rendering system. More...
 
class  D3D9RenderTexture
 RenderTexture implementation for D3D9. More...
 
class  D3D9RenderWindow
 
class  D3D9Resource
 Represents a Direct3D rendering resource. More...
 
class  D3D9ResourceManager
 
class  D3D9StereoDriverAMD
 Virtual interface of the stereo driver. More...
 
class  D3D9StereoDriverBridge
 Bridge interface from the render system to the stereo driver. More...
 
class  D3D9StereoDriverImpl
 Virtual interface of the stereo driver. More...
 
class  D3D9StereoDriverNVIDIA
 Interface of the NVIDIA stereo driver. More...
 
class  D3D9Texture
 
class  D3D9TextureManager
 
class  D3D9VertexDeclaration
 Specialisation of VertexDeclaration for D3D9. More...
 
class  D3D9VideoMode
 
class  D3D9VideoModeList
 
class  DataStream
 General purpose class used for encapsulating the reading and writing of data. More...
 
class  DDSCodec
 Codec specialized in loading DDS (Direct Draw Surface) images. More...
 
class  DDSCodec2
 Codec specialized in loading DDS (Direct Draw Surface) images. More...
 
class  Decal
 Decals can have diffuse, normal map, and emissive on top of regular objects. More...
 
class  DecalFactory
 
class  DefaultAxisAlignedBoxSceneQuery
 Default implementation of AxisAlignedBoxSceneQuery. More...
 
class  DefaultIntersectionSceneQuery
 Default implementation of IntersectionSceneQuery. More...
 
class  DefaultPlaneBoundedVolumeListSceneQuery
 Default implementation of PlaneBoundedVolumeListSceneQuery. More...
 
class  DefaultRaySceneQuery
 Default implementation of RaySceneQuery. More...
 
class  DefaultSceneFormatListener
 Default implementation that prevents a SceneNode from being exported if the only attached objects. More...
 
class  DefaultSceneManager
 Default scene manager. More...
 
class  DefaultSceneManagerFactory
 Factory for default scene manager. More...
 
class  DefaultShadowCameraSetup
 Implements default shadow camera setup. More...
 
class  DefaultSphereSceneQuery
 Default implementation of SphereSceneQuery. More...
 
class  DefaultTextureGpuManagerListener
 This is a Default implementation of TextureGpuManagerListener based on heuristics. More...
 
class  DefaultWorkQueue
 Implementation of a general purpose request / response style background work queue. More...
 
class  DefaultWorkQueueBase
 Base for a general purpose request / response style background work queue. More...
 
class  DeflateStream
 Stream which compresses / uncompresses data using the 'deflate' compression algorithm. More...
 
class  Degree
 Wrapper class which indicates a given angle value is in Degrees. More...
 
struct  DepthBuffer
 An abstract class that contains a depth/stencil buffer. More...
 
struct  DescriptorSetSampler
 Descriptor sets describe what samplers should be bound together in one place. More...
 
struct  DescriptorSetTexture
 Descriptor sets describe what textures should be bound together in one place. More...
 
struct  DescriptorSetTexture2
 
struct  DescriptorSetUav
 Descriptor sets describe what uavs should be bound together in one place. More...
 
class  DistanceLodBoxStrategy
 Level of detail strategy based on distance from camera to an object's bounding box. More...
 
class  DistanceLodSphereStrategy
 Level of detail strategy based on distance from camera to an object's bounding sphere. More...
 
class  DistanceLodStrategyBase
 Level of detail strategy based on distance from camera. More...
 
struct  DriverVersion
 DriverVersion is used by RenderSystemCapabilities and both GL and D3D9 to store the version of the current GPU driver. More...
 
class  DualQuaternion
 Implementation of a dual quaternion, i.e. More...
 
class  DynLib
 Resource holding data about a dynamic library. More...
 
class  DynLibManager
 Manager for Dynamic-loading Libraries. More...
 
class  EGLContext
 
class  EGLSupport
 
class  EGLWindow
 
class  EmbeddedZipArchiveFactory
 Specialisation of ZipArchiveFactory for embedded Zip files. More...
 
class  EmscriptenEGLContext
 
class  EmscriptenEGLSupport
 
class  EmscriptenEGLWindow
 
struct  EntityMaterialLodChangedEvent
 Struct containing information about a material LOD change event for entities. More...
 
struct  EntityMeshLodChangedEvent
 Struct containing information about a mesh LOD change event for entities. More...
 
class  ErrorDialog
 Class for displaying the error dialog if Ogre fails badly. More...
 
class  ETCCodec
 Codec specialized in loading ETC (Ericsson Texture Compression) images. More...
 
class  Exception
 When thrown, provides information about an error that has occurred inside the engine. More...
 
class  ExceptionFactory
 Class implementing dispatch methods in order to construct by-value exceptions of a derived type based just on an exception code. More...
 
class  ExternalTextureSource
 IMPORTANT: Plugins must override default dictionary name! Base class that texture plugins derive from. More...
 
class  ExternalTextureSourceManager
 Singleton Class which handles the registering and control of texture plugins. More...
 
class  FactoryObj
 Abstract factory class. More...
 
class  FastArray
 Lightweight implementation of std::vector. More...
 
class  FileHandleDataStream
 Common subclass of DataStream for handling data from C-style file handles. More...
 
struct  FileInfo
 Information about a file/directory within the archive will be returned using a FileInfo struct. More...
 
class  FileNotFoundException
 
class  FileStreamDataStream
 Common subclass of DataStream for handling data from std::basic_istream. More...
 
class  FileSystemArchive
 Specialisation of the Archive class to allow reading of files from filesystem folders / directories. More...
 
class  FileSystemArchiveFactory
 Specialisation of ArchiveFactory for FileSystem files. More...
 
class  FileSystemLayer
 Provides methods to find out where the Ogre config files are stored and where logs and settings files should be written to. More...
 
struct  FilterKernel
 
struct  FilterSeparableKernel
 
struct  float2
 
struct  float4
 
struct  float4x3
 
struct  float4x4
 
class  FloatGpuParameterControllerValue
 Predefined controller value for setting a single floating- point value in a constant parameter of a vertex or fragment program. More...
 
class  FocusedShadowCameraSetup
 Implements the uniform shadow mapping algorithm in focused mode. More...
 
class  Font
 Class representing a font in the system. More...
 
class  FontManager
 Manages Font resources, parsing .fontdef files and generally organising them. More...
 
class  Forward3D
 Forward3D. More...
 
class  ForwardClustered
 Implementation of Clustered Forward Shading. More...
 
class  ForwardPlusBase
 ForwardPlusBase. More...
 
struct  FrameBufferDescKey
 
struct  FrameEvent
 Struct containing information about a frame event. More...
 
class  FrameListener
 A interface class defining a listener which can be used to receive notifications of frame events. More...
 
class  FrameStats
 All return values are either in milliseconds or frames per second; but they're internally stored in microseconds. More...
 
class  FrameTimeControllerValue
 Predefined controller value for getting the latest frame time. More...
 
class  FreeImageCodec
 Codec specialized in images loaded using FreeImage. More...
 
class  FreeImageCodec2
 Codec specialized in images loaded using FreeImage. More...
 
struct  FreeOnDestructor
 Helper class to that will free the pointer on the destructor. More...
 
class  Frustum
 A frustum represents a pyramid, capped at the near and far end which is used to represent either a visible area or a projection area. More...
 
class  GL3PlusAsyncTextureTicket
 See AsyncTextureTicket. More...
 
class  GL3PlusAsyncTicket
 
class  GL3PlusBufferInterface
 For GL3+, most (if not all) buffers, can be treated with the same code. More...
 
class  GL3PlusConstBufferPacked
 
class  GL3PlusContext
 Class that encapsulates an GL context. More...
 
class  GL3PlusDepthBuffer
 
class  GL3PlusDepthTexture
 
class  GL3PlusDepthTextureTarget
 
struct  GL3PlusDescriptorSetTexture2
 
class  GL3PlusDynamicBuffer
 GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap. More...
 
class  GL3PlusFBOManager
 Factory for GL Frame Buffer Objects, and related things. More...
 
class  GL3PlusFBOMultiRenderTarget
 MultiRenderTarget for OpenGL. More...
 
class  GL3PlusFBORenderTexture
 RenderTexture for GL FBO. More...
 
struct  GL3PlusFrameBufferDescValue
 
class  GL3PlusFrameBufferObject
 Frame Buffer Object abstraction. More...
 
class  GL3PlusHardwareOcclusionQuery
 This is a class that is the base class of the query class for hardware occlusion. More...
 
struct  GL3PlusHlmsPso
 HlmsPso. More...
 
class  GL3PlusMappings
 
class  GL3PlusMultiSourceVertexBufferPool
 
class  GL3PlusNullTexture
 
class  GL3PlusNullTextureTarget
 
class  GL3PlusOldVertexArrayObject
 Specialisation of VertexDeclaration for OpenGL Vertex Array Object usage. More...
 
class  GL3PlusPixelFormatToShaderType
 
class  GL3PlusPixelUtil
 Class to do pixel format mapping between GL and OGRE. More...
 
class  GL3PlusPlugin
 Plugin instance for GL3Plus Manager. More...
 
class  GL3PlusRenderPassDescriptor
 GL3+ will share FBO handles between all GL3PlusRenderPassDescriptor that share the same FBO setup. More...
 
class  GL3PlusRenderSystem
 Implementation of GL 3 as a rendering system. More...
 
class  GL3PlusRenderTexture
 Base class for GL Render Textures. More...
 
class  GL3PlusRTTManager
 Manager/factory for RenderTextures. More...
 
class  GL3PlusStagingBuffer
 A staging buffer is a buffer that resides on the GPU and be written to/from both CPU & GPU However the access in both cases is limited. More...
 
class  GL3PlusStagingTexture
 
class  GL3PlusSupport
 
struct  GL3PlusSurfaceDesc
 GL surface descriptor. More...
 
class  GL3PlusTexBufferEmulatedPacked
 
class  GL3PlusTexBufferPacked
 
class  GL3PlusTexture
 
class  GL3PlusTextureGpu
 
class  GL3PlusTextureGpuManager
 
class  GL3PlusTextureGpuRenderTarget
 
class  GL3PlusTextureGpuWindow
 
class  GL3PlusTextureManager
 GL3Plus-specific implementation of a TextureManager. More...
 
class  GL3PlusUavBufferPacked
 
class  GL3PlusVaoManager
 
struct  GL3PlusVertexArrayObject
 
struct  GLAtomicCounterReference
 Structure used to keep track of named atomic counter uniforms in the linked program object. More...
 
class  GLES2AsyncTicket
 
class  GLES2BufferInterface
 For GL3+, most (if not all) buffers, can be treated with the same code. More...
 
class  GLES2ConstBufferPacked
 
class  GLES2Context
 Class that encapsulates an GL context. More...
 
class  GLES2DepthBuffer
 
class  GLES2DepthTexture
 
class  GLES2DepthTextureTarget
 
class  GLES2DynamicBuffer
 GL3+ doesn't support mapping the same buffer twice even if the regions don't overlap. More...
 
class  GLES2FBOManager
 Factory for GL ES 2 Frame Buffer Objects, and related things. More...
 
class  GLES2FBOMultiRenderTarget
 MultiRenderTarget for GL ES 2.x. More...
 
class  GLES2FBORenderTexture
 RenderTexture for GL ES 2 FBO. More...
 
class  GLES2FrameBufferObject
 Frame Buffer Object abstraction. More...
 
class  GLES2GpuProgramManager
 
class  GLES2HardwareOcclusionQuery
 
struct  GLES2HlmsPso
 HlmsPso. More...
 
struct  GLES2HlmsSamplerblock
 A sampler block contains settings that go hand in hand with a texture, and thus are common to many textures. More...
 
class  GLES2MultiSourceVertexBufferPool
 
class  GLES2NullTexture
 
class  GLES2NullTextureTarget
 
class  GLES2OldVertexArrayObject
 Specialisation of VertexDeclaration for OpenGL ES 2 Vertex Array Object usage. More...
 
class  GLES2PixelFormatToShaderType
 
class  GLES2PixelUtil
 Class to do pixel format mapping between GL and OGRE. More...
 
class  GLES2Plugin
 Plugin instance for GL ES 2 Manager. More...
 
class  GLES2RenderSystem
 Implementation of GL ES 2.x as a rendering system. More...
 
class  GLES2RenderTexture
 Base class for GL Render Textures. More...
 
class  GLES2RTTManager
 Manager/factory for RenderTextures. More...
 
class  GLES2StagingBuffer
 A staging buffer is a buffer that resides on the GPU and be written to/from both CPU & GPU However the access in both cases is limited. More...
 
class  GLES2Support
 
struct  GLES2SurfaceDesc
 GL surface descriptor. More...
 
class  GLES2TexBufferEmulatedPacked
 
class  GLES2Texture
 
class  GLES2TextureManager
 GL ES-specific implementation of a TextureManager. More...
 
class  GLES2VaoManager
 
struct  GLES2VertexArrayObject
 
class  GLSLESLinkProgram
 C++ encapsulation of GLSL ES Program Object. More...
 
class  GLSLESLinkProgramManager
 Ogre assumes that there are separate vertex and fragment programs to deal with but GLSL ES has one program object that represents the active vertex and fragment shader objects during a rendering state. More...
 
class  GLSLESProgramCommon
 C++ encapsulation of GLSL ES Program Object. More...
 
class  GLSLESProgramManagerCommon
 Ogre assumes that there are separate programs to deal with but GLSL ES has one program object that represents the active shader objects during a rendering state. More...
 
class  GLSLESProgramPipeline
 Specialisation of GLSLESProgramCommon to provide support for separable programs via the Open GL program pipeline. More...
 
class  GLSLESProgramPipelineManager
 Ogre assumes that there are separate vertex and fragment programs to deal with but GLSL ES has one program pipeline object that represents the active vertex and fragment program objects during a rendering state. More...
 
class  GLSLESShader
 Specialisation of HighLevelGpuProgram to encapsulate shader objects obtained from compiled shaders written in the OpenGL Shader Language (GLSL ES) for OpenGL ES 2.0. More...
 
class  GLSLESShaderFactory
 Factory class for GLSL ES programs. More...
 
class  GLSLMonolithicProgram
 Model of OpenGL program object created using the glLinkProgram method of linking. More...
 
class  GLSLMonolithicProgramManager
 Ogre assumes that there are separate vertex and fragment programs to deal with but GLSL has one program object that represents the active vertex and fragment shader objects during a rendering state. More...
 
class  GLSLProgram
 C++ encapsulation of GLSL program object. More...
 
class  GLSLProgramManager
 Ogre assumes that there are separate programs to deal with but GLSL has one program object that represents the active shader objects during a rendering state. More...
 
class  GLSLSeparableProgram
 Specialisation of GLSLProgram to provide support for separable programs via the OpenGL program pipeline. More...
 
class  GLSLSeparableProgramManager
 Ogre assumes that there are separate vertex and fragment programs to deal with but GLSL has one program pipeline object that represents the active vertex and fragment program objects during a rendering state. More...
 
class  GLSLShader
 Specialisation of HighLevelGpuProgram to encapsulate shader objects obtained from compiled shaders written in the OpenGL Shader Language (GLSL). More...
 
class  GLSLShaderFactory
 Factory class for GLSL shaders. More...
 
class  GLSLShaderManager
 
struct  GLUniformReference
 Structure used to keep track of named uniforms in the linked program object. More...
 
class  GLXContext
 
class  GLXGLSupport
 
class  GLXUtils
 
class  GLXWindow
 
struct  GpuConstantDefinition
 Information about predefined program constants. More...
 
struct  GpuLogicalBufferStruct
 Container struct to allow params to safely & update shared list of logical buffer assignments. More...
 
struct  GpuLogicalIndexUse
 Structure recording the use of a physical buffer by a logical parameter index. More...
 
struct  GpuNamedConstants
 Struct collecting together the information for named constants. More...
 
class  GpuNamedConstantsSerializer
 Simple class for loading / saving GpuNamedConstants. More...
 
class  GpuProgram
 Defines a program which runs on the GPU such as a vertex or fragment program. More...
 
class  GpuProgramManager
 
class  GpuProgramParameters
 Collects together the program parameters used for a GpuProgram. More...
 
class  GpuProgramParameters_AutoConstantEntry
 Structure recording the use of an automatic parameter. More...
 
class  GpuProgramTranslator
 
class  GpuProgramUsage
 This class makes the usage of a vertex and fragment programs (low-level or high-level), with a given set of parameters, explicit. More...
 
class  GpuResource
 
class  GpuSharedParameters
 Definition of container that holds the current bool constants. More...
 
class  GpuSharedParametersUsage
 This class records the usage of a set of shared parameters in a concrete set of GpuProgramParameters. More...
 
struct  GpuTrackedResource
 
class  Grid2DPageStrategy
 Page strategy which loads new pages based on a regular 2D grid. More...
 
class  Grid2DPageStrategyData
 Specialisation of PageStrategyData for Grid2DPageStrategy. More...
 
class  Grid3DPageStrategy
 Page strategy which loads new pages based on a regular 3D grid. More...
 
class  Grid3DPageStrategyData
 Specialisation of PageStrategyData for Grid3DPageStrategy. More...
 
class  GTKGLSupport
 GL support in a GTK window. More...
 
class  GTKWindow
 
class  HardwareOcclusionQuery
 This is a abstract class that that provides the interface for the query class for hardware occlusion. More...
 
class  HashedVector
 A hashed vector. More...
 
class  HiddenAreaMeshVrGenerator
 
struct  HiddenAreaVrSettings
 
class  HighLevelGpuProgram
 Abstract base class representing a high-level program (a vertex or fragment program). More...
 
class  HighLevelGpuProgramFactory
 Interface definition for factories of HighLevelGpuProgram. More...
 
class  HighLevelGpuProgramManager
 This ResourceManager manages high-level vertex and fragment programs. More...
 
class  Hlms
 HLMS stands for "High Level Material System". More...
 
struct  HlmsBasePieces
 
struct  HlmsBaseProp
 These are "default" or "Base" properties common to many implementations and thus defined here. More...
 
struct  HlmsBits
 
struct  HlmsBlendblock
 A blend block contains settings that rarely change, and thus are common to many materials. More...
 
class  HlmsBufferManager
 Managing constant and texture buffers for sending shader parameters is a very similar process to most Hlms implementations using them. More...
 
struct  HlmsCache
 
class  HlmsCompute
 HLMS implementation that handles compute shaders. More...
 
class  HlmsComputeJob
 
struct  HlmsComputePso
 
class  HlmsDatablock
 An hlms datablock contains individual information about a specific material. More...
 
class  HlmsDiskCache
 
This class allows saving the current state of an Hlms to disk: both its compiled shaders
with source and the generated PSOs.
More...
 
class  HlmsJson
 HLMS stands for "High Level Material System". More...
 
class  HlmsJsonCompute
 HLMS stands for "High Level Material System". More...
 
class  HlmsJsonListener
 
class  HlmsJsonPbs
 
class  HlmsJsonUnlit
 
class  HlmsListener
 Listener that can be hooked to an Hlms implementation for extending it with custom code. More...
 
class  HlmsLowLevel
 This is an HLMS implementation that acts as proxy to use the Material system from Ogre 1.9 The older material system is data-driven (thanks to AutoParamDataSource) compared to HLMS where the user needs to write its own implementation in C++ (or modify an exisiting one). More...
 
class  HlmsLowLevelDatablock
 Contains information needed by the UI (2D) for OpenGL ES 2.0. More...
 
struct  HlmsMacroblock
 A macro block contains settings that will rarely change, and thus are common to many materials. More...
 
class  HlmsManager
 HLMS stands for "High Level Material System". More...
 
struct  HlmsPassPso
 IT'S MEMBERS MUST BE KEPT POD (Otherwise HlmsPso needs to be modified). More...
 
class  HlmsPbs
 Physically based shading implementation specfically designed for OpenGL 3+, D3D11 and other RenderSystems which support uniform buffers. More...
 
class  HlmsPbsDatablock
 Contains information needed by PBS (Physically Based Shading) for OpenGL 3+ & D3D11+. More...
 
class  HlmsPbsMobile
 Physically based shading implementation specfically designed for OpenGL ES 2.0 and other RenderSystems which do not support uniform buffers. More...
 
class  HlmsPbsMobileDatablock
 Contains information needed by PBS (Physically Based Shading) for OpenGL ES 2.0. More...
 
struct  HlmsProperty
 
struct  HlmsPso
 Defines a PipelineStateObject as required by Vulkan, Metal & DX12. More...
 
struct  HlmsPsoProp
 
struct  HlmsSamplerblock
 A sampler block contains settings that go hand in hand with a texture, and thus are common to many textures. More...
 
class  HlmsTextureExportListener
 
class  HlmsTextureManager
 HLMS Texture Manager manages textures in the way HLMS expects. More...
 
struct  HlmsTexturePack
 
class  HlmsTranslator
 
class  HlmsUnlit
 Implementation without lighting or skeletal animation specfically designed for OpenGL 3+, D3D11 and other RenderSystems which support uniform buffers. More...
 
class  HlmsUnlitDatablock
 Contains information needed by PBS (Physically Based Shading) for OpenGL 3+ & D3D11+. More...
 
class  HlmsUnlitMobile
 User Interface (2D) implementation specfically designed for OpenGL ES 2.0 and other RenderSystems which do not support uniform buffers. More...
 
class  HlmsUnlitMobileDatablock
 Contains information needed by the UI (2D) for OpenGL ES 2.0. More...
 
class  Id
 Usage: OGRE_NEW SceneNode( Id::generateNewId< Node >() ) More...
 
class  IdObject
 
struct  IdString
 Hashed string. More...
 
class  IesLoader
 
class  IfdProbeVisualizer
 
class  Image
 Class representing an image file. More...
 
class  Image2
 Class representing an image file. More...
 
class  ImageCodec
 Codec specialized in images. More...
 
class  ImageCodec2
 Codec specialized in images. More...
 
class  ImportAbstractNode
 This abstract node represents an import statement. More...
 
class  IndexBufferPacked
 
class  IndirectBufferPacked
 Represents Indirect buffers for storing draw call commands. More...
 
class  InstantRadiosity
 
class  InternalCubemapProbe
 This class is internal and should not be interfaced directly by users. More...
 
class  InternalCubemapProbeFactory
 
class  InternalErrorException
 
class  IntersectionSceneQuery
 Separate SceneQuery class to query for pairs of objects which are possibly intersecting one another. More...
 
class  IntersectionSceneQueryListener
 Alternative listener class for dealing with IntersectionSceneQuery. More...
 
struct  IntersectionSceneQueryResult
 Holds the results of an intersection scene query (pair values). More...
 
class  InvalidCallException
 
class  InvalidParametersException
 
class  InvalidStateException
 
class  IOException
 
class  IrradianceField
 Implements an Irradiance Field with Depth, inspired on DDGI. More...
 
class  IrradianceFieldRaster
 Implements IrradianceField, but generating results via cubemap rasterization. More...
 
struct  IrradianceFieldSettings
 
class  IrradianceVolume
 
struct  isPodLike
 
struct  isPodLike< bool >
 
struct  isPodLike< char >
 
struct  isPodLike< double >
 
struct  isPodLike< float >
 
struct  isPodLike< int >
 
struct  isPodLike< long >
 
struct  isPodLike< short >
 
struct  isPodLike< signed char >
 
struct  isPodLike< std::pair< T, U > >
 
struct  isPodLike< T * >
 
struct  isPodLike< unsigned >
 
struct  isPodLike< unsigned char >
 
struct  isPodLike< unsigned long >
 
struct  isPodLike< unsigned short >
 
class  Item
 Defines an instance of a discrete, movable object based on a Mesh. More...
 
class  ItemFactory
 FItemy object for creating Item instances. More...
 
class  ItemIdentityException
 
class  iterator_range
 Base for an iterator_range. More...
 
class  IteratorWrapper
 Basefunctionality for IteratorWrappers. More...
 
struct  KeyFrameRig
 
struct  KfTransform
 Holds the transform of a KeyFrame (which is part of an animation) More...
 
class  KfTransformArrayMemoryManager
 Implementation to create the KfTransform variables needed by SkeletonTrack SkeletonAnimationDef and. More...
 
class  LayerBlendModeEx
 Class which manages blending of both colour and alpha components. More...
 
class  Light
 Representation of a dynamic light source in the scene. More...
 
struct  LightClosest
 Used as the light list, sorted. More...
 
class  LightFactory
 Factory object for creating Light instances. More...
 
struct  LightListInfo
 Holds all lights in SoA after being culled over all frustums. More...
 
class  LightProfiles
 
class  LightweightMutex
 A lightweight mutex is a synchronization mechanism, very similar to a regular mutex. More...
 
class  LinearControllerFunction
 Predefined controller function based on linear function interpolation. More...
 
struct  LinearResampler
 
struct  LinearResampler_Byte
 
struct  LinearResampler_Float32
 
class  Lod0Stripifier
 
class  LodCollapseCost
 
class  LodCollapseCostCurvature
 
class  LodCollapseCostOutside
 
class  LodCollapseCostProfiler
 
class  LodCollapseCostQuadric
 
class  LodCollapser
 
struct  LodConfig
 
class  LodConfigSerializer
 
struct  LodData
 
struct  LodIndexBuffer
 Thread-safe buffer for storing Hardware index buffer. More...
 
struct  LodInputBuffer
 Data representing all required information from a Mesh. Used by LodInputProviderBuffer. More...
 
class  LodInputProvider
 
class  LodInputProviderBuffer
 
class  LodInputProviderMesh
 
struct  LodLevel
 Structure for automatic Lod configuration. More...
 
class  LodListener
 A interface class defining a listener which can be used to receive notifications of LOD events. More...
 
struct  LodOutputBuffer
 Data representing the output of the Mesh reduction. Used by LodOutputProviderBuffer. More...
 
class  LodOutputProvider
 
class  LodOutputProviderBuffer
 
class  LodOutputProviderCompressedBuffer
 
class  LodOutputProviderCompressedMesh
 
class  LodOutputProviderMesh
 
class  LodOutsideMarker
 This class will mark vertices of a mesh, which are visible from far away (from outside). More...
 
class  LodStrategy
 Strategy for determining level of detail. More...
 
class  LodStrategyManager
 Manager for LOD strategies. More...
 
struct  LodVertexBuffer
 Thread-safe buffer for storing Hardware vertex buffer. More...
 
class  LodWorkQueueInjector
 Injects the output of a request to the mesh in a thread safe way. More...
 
class  LodWorkQueueInjectorListener
 
struct  LodWorkQueueRequest
 
class  LodWorkQueueWorker
 Processes requests. More...
 
class  Log
 
class  LogListener
 
class  LogManager
 The log manager handles the creation and retrieval of logs for the application. More...
 
struct  LowLevelProp
 
class  LwConstString
 
class  LwString
 This is a Light-weight string wrapper around the C string interface. More...
 
class  ManualObject
 
class  ManualObjectFactory
 Factory object for creating ManualObject instances. More...
 
class  ManualResourceLoader
 Interface describing a manual resource loader. More...
 
class  MapIterator
 Concrete IteratorWrapper for nonconst access to the underlying key-value container. More...
 
class  MapIteratorWrapper
 Prepared IteratorWrapper for key-value container. More...
 
struct  MapRange
 Predefined type. More...
 
class  Material
 Class encapsulates rendering properties of an object. More...
 
class  MaterialManager
 Class for managing Material settings for Ogre. More...
 
struct  MaterialScriptProgramDefinition
 Struct for holding a program definition which is in progress. More...
 
class  MaterialSerializer
 Class for serializing Materials to / from a .material script. More...
 
class  MaterialTranslator
 
class  Math
 Class to provide access to common mathematical functions. More...
 
class  MathlibC
 
class  Matrix3
 A 3x3 matrix which can represent rotations around axes. More...
 
class  Matrix4
 Class encapsulating a standard 4x4 homogeneous matrix. More...
 
class  MemoryDataStream
 Common subclass of DataStream for handling data from chunks of memory. More...
 
class  Mesh
 Resource holding data about 3D mesh. More...
 
class  MeshLodGenerator
 
class  MeshManager
 Handles the management of mesh resources. More...
 
class  MeshSerializer
 Class for serialising mesh data to/from an OGRE .mesh file. More...
 
class  MeshSerializerImpl
 Internal implementation of Mesh reading / writing for the latest version of the .mesh format. More...
 
class  MeshSerializerImpl_v2_1_R0
 
class  MeshSerializerImpl_v2_1_R1
 
class  MeshSerializerListener
 
class  MetalAsyncTextureTicket
 See AsyncTextureTicket. More...
 
class  MetalAsyncTicket
 
class  MetalBufferInterface
 For Metal, all buffers can be treated with the same code. More...
 
struct  MetalBufferRegion
 
class  MetalConstBufferPacked
 
class  MetalDepthBuffer
 
class  MetalDepthTexture
 
class  MetalDepthTextureTarget
 
struct  MetalDescriptorSetTexture
 
struct  MetalDevice
 
class  MetalDeviceItem
 
class  MetalDeviceList
 
class  MetalDiscardBuffer
 
class  MetalDiscardBufferManager
 Metal doesn't support "DISCARD" like D3D9/D3D11 (and OpenGL but often it's broken) where we requested to map a write-only buffer and the API would discard the previous contents (thus allowing us to avoid a stall until the GPU is done with the region) More...
 
class  MetalDynamicBuffer
 Metal doesn't "map". More...
 
struct  MetalFrameBufferDescValue
 
class  MetalGpuProgramManager
 
struct  MetalHlmsPso
 HlmsPso More...
 
class  MetalMappings
 
class  MetalMultiRenderTarget
 
class  MetalMultiSourceVertexBufferPool
 
class  MetalNullTexture
 
class  MetalNullTextureTarget
 
class  MetalPixelFormatToShaderType
 
class  MetalPlugin
 Plugin instance for Metal Manager. More...
 
class  MetalProgram
 Specialisation of HighLevelGpuProgram to provide support for Metal Shader Language. More...
 
class  MetalProgramFactory
 Factory class for Metal programs. More...
 
class  MetalRenderPassDescriptor
 
class  MetalRenderSystem
 Implementation of Metal as a rendering system. More...
 
class  MetalRenderTargetCommon
 
class  MetalRenderTexture
 
class  MetalStagingBuffer
 A staging buffer is a buffer that resides on the GPU and be written to/from both CPU & GPU However the access in both cases is limited. More...
 
class  MetalStagingTexture
 
class  MetalTexBufferPacked
 
struct  MetalTexRegion
 
class  MetalTexture
 
class  MetalTextureGpu
 
class  MetalTextureGpuManager
 
class  MetalTextureGpuRenderTarget
 
class  MetalTextureGpuWindow
 
class  MetalTextureManager
 
class  MetalUavBufferPacked
 
class  MetalVaoManager
 
class  MetalWindow
 
class  MovableObject
 Abstract class defining a movable object in a scene. More...
 
class  MovableObjectFactory
 Interface definition for a factory class which produces a certain kind of MovableObject, and can be registered with Root in order to allow all clients to produce new instances of this object, integrated with the standard Ogre processing. More...
 
struct  MovableObjectLodChangedEvent
 Struct containing information about a LOD change event for movable objects. More...
 
class  MovablePlane
 Definition of a Plane that may be attached to a node, and the derived details of it retrieved simply. More...
 
class  MultiRenderTarget
 This class represents a render target that renders to multiple RenderTextures at once. More...
 
class  MultiSourceVertexBufferPool
 Vertex Array Objects do not need to change when: The same (internal) vertex buffer is still bound. More...
 
class  NaClGLContext
 
class  NaClGLSupport
 
class  NaClWindow
 
class  NameGenerator
 Utility class to generate a sequentially numbered series of names. More...
 
struct  NearestResampler
 
class  NoAddRefRelease
 
class  Node
 Class representing a general-purpose node an articulated scene graph. More...
 
class  NodeArrayMemoryManager
 Implementation to create the Transform variables needed by Nodes & SceneNodes. More...
 
class  NodeMemoryManager
 Wrap-around class that contains multiple ArrayMemoryManager, one per hierarchy depth. More...
 
class  NULLAsyncTextureTicket
 See AsyncTextureTicket. More...
 
class  NULLAsyncTicket
 
class  NULLBufferInterface
 For GL3+, most (if not all) buffers, can be treated with the same code. More...
 
class  NULLConstBufferPacked
 
class  NullEntity
 
class  NULLMultiSourceVertexBufferPool
 
class  NULLPixelFormatToShaderType
 
class  NULLPlugin
 Plugin instance for NULL Manager. More...
 
class  NULLRenderSystem
 Implementation of NULL as a rendering system. More...
 
class  NULLRenderTexture
 
class  NULLRenderWindow
 
class  NULLStagingBuffer
 A staging buffer is a buffer that resides on the GPU and be written to/from both CPU & GPU However the access in both cases is limited. More...
 
class  NULLStagingTexture
 
class  NULLTexBufferPacked
 
class  NULLTexture
 
class  NULLTextureGpu
 
class  NULLTextureGpuManager
 
class  NULLTextureGpuRenderTarget
 
class  NULLTextureManager
 
class  NULLUavBufferPacked
 
class  NULLVaoManager
 
struct  NULLVertexArrayObject
 
class  NULLWindow
 
class  NumericSolver
 Provides numeric solvers for Ogre. More...
 
class  ObjCmdBuffer
 
class  ObjectAbstractNode
 This specific abstract node represents a script object. More...
 
struct  ObjectData
 Represents the transform of a single object, arranged in SoA (Structure of Arrays) More...
 
class  ObjectDataArrayMemoryManager
 Implementation to create the ObjectData variables needed by MovableObjects. More...
 
class  ObjectMemoryManager
 Wrap-around class that contains multiple ArrayMemoryManager, one per render queue. More...
 
class  OfflineProfiler
 Simple profiler that will produce a CSV file for offline analysis once dumpProfileResults is called. More...
 
class  OGRE_HLMS_TEXTURE_BASE_CLASS
 This is not a regular header, therefore it has no include guards. More...
 
class  OGREWidget
 
class  OITDCodec
 Codec specialized in loading OITD (Ogre Internal Texture Dump) format. More...
 
class  OptimisedUtil
 Utility class for provides optimised functions. More...
 
class  OSXGL3PlusSupport
 
class  Page
 Page class. More...
 
class  PageContent
 Interface definition for a unit of content within a page. More...
 
class  PageContentCollection
 Definition of the interface for a collection of PageContent instances. More...
 
class  PageContentCollectionFactory
 Define the interface to a factory class that will create subclasses of PageContentCollection. More...
 
class  PageContentFactory
 Define the interface to a factory class that will create subclasses of PageContent. More...
 
class  PagedWorld
 This class represents a collection of pages which make up a world. More...
 
class  PagedWorldSection
 Represents a section of the PagedWorld which uses a given PageStrategy, and which is made up of a generally localised set of Page instances. More...
 
class  PagedWorldSectionFactory
 A factory class for creating types of world section. More...
 
class  PageManager
 The PageManager is the entry point through which you load all PagedWorld instances, and the place where PageStrategy instances and factory classes are registered to customise the paging behaviour. More...
 
class  PageProvider
 Abstract class that can be implemented by the user application to provide a way to retrieve or generate page data from a source of their choosing. More...
 
class  PageStrategy
 Defines the interface to a strategy class which is responsible for deciding when Page instances are requested for addition and removal from the paging system. More...
 
class  PageStrategyData
 Abstract marker class representing the data held against the PagedWorldSection which is specifically used by the PageStrategy. More...
 
class  ParallaxCorrectedCubemap
 
class  ParallaxCorrectedCubemapAuto
 Per-Pixel reflection probes. More...
 
class  ParallaxCorrectedCubemapAutoListener
 
class  ParallaxCorrectedCubemapBase
 
class  ParamCommand
 Abstract class which is command object which gets/sets parameters. More...
 
class  ParamDictionary
 Class to hold a dictionary of parameters for a single class. More...
 
class  ParameterDef
 Definition of a parameter supported by a StringInterface class, for introspection. More...
 
class  Particle
 Class representing a single particle instance. More...
 
class  ParticleAffector
 Abstract class defining the interface to be implemented by particle affectors. More...
 
class  ParticleAffectorFactory
 Abstract class defining the interface to be implemented by creators of ParticleAffector subclasses. More...
 
class  ParticleAffectorTranslator
 
class  ParticleEmitter
 Abstract class defining the interface to be implemented by particle emitters. More...
 
class  ParticleEmitterFactory
 Abstract class defining the interface to be implemented by creators of ParticleEmitter subclasses. More...
 
class  ParticleEmitterTranslator
 
class  ParticleIterator
 Convenience class to make it easy to step through all particles in a ParticleSystem. More...
 
class  ParticleSystem
 Class defining particle system based special effects. More...
 
class  ParticleSystemFactory
 Factory object for creating ParticleSystem instances. More...
 
class  ParticleSystemManager
 Manages particle systems, particle system scripts (templates) and the available emitter & affector factories. More...
 
class  ParticleSystemRenderer
 Abstract class defining the interface required to be implemented by classes which provide rendering capability to ParticleSystem instances. More...
 
class  ParticleSystemRendererFactory
 Abstract class definition of a factory object for ParticleSystemRenderer. More...
 
class  ParticleSystemTranslator
 
class  ParticleVisualData
 Abstract class containing any additional data required to be associated with a particle to perform the required rendering. More...
 
class  Pass
 Class defining a single pass of a Technique (of a Material), i.e. More...
 
class  PassthroughControllerFunction
 Predefined controller function which just passes through the original source directly to dest. More...
 
class  PassTranslator
 
struct  PbsMobileProperty
 
struct  PbsMobileShaderCreationData
 
struct  PbsProperty
 
struct  PbsUvAtlasParams
 
class  PccPerPixelGridPlacement
 Placing multiple PCC probes by hand can be difficult and even error prone. More...
 
class  PixelBox
 
class  PixelCountLodStrategyBase
 Abstract base class for level of detail strategy based on pixel count approximations from bounding sphere projection. More...
 
struct  PixelFormatDescription
 A record that describes a pixel format in detail. More...
 
class  PixelFormatGpuUtils
 The pixel format used for images, textures, and render surfaces. More...
 
class  PixelFormatToShaderType
 
class  PixelUtil
 Some utility functions for packing and unpacking pixel data. More...
 
class  PlanarReflectionActor
 
class  PlanarReflections
 Planar Reflections can be used with both Unlit and PBS, but they're setup differently. More...
 
class  Plane
 Defines a plane in 3D space. More...
 
class  PlaneBoundedVolume
 Represents a convex volume bounded by planes. More...
 
class  PlaneBoundedVolumeListSceneQuery
 Specialises the SceneQuery class for querying within a plane-bounded volume. More...
 
class  PlaneOptimalShadowCameraSetup
 Implements the plane optimal shadow camera algorithm. More...
 
class  PlatformInformation
 Class which provides the run-time platform information Ogre runs on. More...
 
class  Plugin
 Class defining a generic OGRE plugin. More...
 
class  Polygon
 The class represents a polygon in 3D space. More...
 
class  Pool
 Template class describing a simple pool of items. More...
 
class  PreApplyTextureAliasesScriptCompilerEvent
 
class  ProcessNameExclusionScriptCompilerEvent
 
class  ProcessResourceNameScriptCompilerEvent
 
class  Profile
 An individual profile that will be processed by the Profiler. More...
 
struct  ProfiledEdge
 
struct  ProfileFrame
 Represents the total timing information of a profile since profiles can be called more than once each frame. More...
 
struct  ProfileHistory
 Represents a history of each profile during the duration of the app. More...
 
class  ProfileInstance
 Represents an individual profile call. More...
 
class  Profiler
 The profiler allows you to measure the performance of your code. More...
 
class  ProfileSessionListener
 ProfileSessionListener should be used to visualize profile results. More...
 
class  Property
 Property instance with passthrough calls to a given object. More...
 
class  PropertyAbstractNode
 This abstract node represents a script property. More...
 
class  PropertyBase
 Base interface for an instance of a property. More...
 
class  PropertyDef
 Definition of a property of an object. More...
 
class  PropertySet
 Defines a complete set of properties for a single object instance. More...
 
struct  PropertyValue
 A simple structure designed just as a holder of property values between the instances of objects they might target. More...
 
class  PsoCacheHelper
 Utility class to cache PSOs. More...
 
class  PSSMShadowCameraSetup
 Parallel Split Shadow Map (PSSM) shadow camera setup. More...
 
class  PVRTCCodec
 Codec specialized in loading PVRTC (PowerVR) images. More...
 
class  Quaternion
 Implementation of a Quaternion, i.e. More...
 
struct  QueuedRenderable
 
class  RadialDensityMask
 
class  Radian
 Wrapper class which indicates a given angle value is in Radians. More...
 
class  RadixSort
 Class for performing a radix sort (fast comparison-less sort based on byte value) on various standard STL containers. More...
 
struct  RasterParams
 
class  RawSimdUniquePtr
 Similar to std::unique_ptr, but: Uses a custom allocator (OGRE_MALLOC_SIMD) Pointers must be really unique (RESTRICT_ALIAS modifier is used!) To access the pointer, use get(); instead of using this container directly The purpose of this container is to enclose a raw pointer while avoiding breaking the rule of 3 when copying. More...
 
class  Ray
 Representation of a ray in space, i.e. More...
 
class  RaySceneQuery
 Specialises the SceneQuery class for querying along a ray. More...
 
class  RaySceneQueryListener
 Alternative listener class for dealing with RaySceneQuery. More...
 
struct  RaySceneQueryResultEntry
 This struct allows a single comparison of result data no matter what the type. More...
 
class  Rectangle2D
 
class  Rectangle2DFactory
 Factory object for creating Entity instances. More...
 
class  RegionSceneQuery
 Abstract class defining a query which returns single results from a region. More...
 
class  Renderable
 Abstract class defining the interface all renderable objects must implement. More...
 
class  RenderableAnimated
 
class  RenderingAPIException
 
class  RenderObjectListener
 Abstract interface which classes must implement if they wish to receive events from the scene manager when single object is about to be rendered. More...
 
struct  RenderPassColourTarget
 
struct  RenderPassDepthTarget
 
class  RenderPassDescriptor
 
struct  RenderPassStencilTarget
 
struct  RenderPassTargetBase
 
class  RenderQueue
 Enumeration of queue groups, by which the application may group queued renderables so that they are rendered together with events in between. More...
 
class  RenderQueueListener
 Abstract interface which classes must implement if they wish to receive events from the render queue. More...
 
class  RenderSystem
 Defines the functionality of a 3D API. More...
 
class  RenderSystemCapabilities
 singleton class for storing the capabilities of the graphics card. More...
 
class  RenderSystemCapabilitiesManager
 Class for managing RenderSystemCapabilities database for Ogre. More...
 
class  RenderSystemCapabilitiesSerializer
 Class for serializing RenderSystemCapabilities to / from a .rendercaps script. More...
 
class  RenderTarget
 A 'canvas' which can receive the results of a rendering operation. More...
 
struct  RenderTargetEvent
 Struct containing information about a RenderTarget event. More...
 
class  RenderTargetListener
 A interface class defining a listener which can be used to receive notifications of RenderTarget events. More...
 
struct  RenderTargetViewDef
 
struct  RenderTargetViewEntry
 
struct  RenderTargetViewportEvent
 Struct containing information about a RenderTarget Viewport-specific event. More...
 
class  RenderTexture
 This class represents a RenderTarget that renders to a Texture. More...
 
class  RenderWindow
 Manages the target rendering window. More...
 
struct  RenderWindowDescription
 Render window creation parameters. More...
 
class  Resource
 Abstract class representing a loadable resource (e.g. More...
 
class  ResourceBackgroundQueue
 This class is used to perform Resource operations in a background thread. More...
 
class  ResourceGroupListener
 This abstract class defines an interface which is called back during resource group loading to indicate the progress of the load. More...
 
class  ResourceGroupManager
 This singleton class manages the list of resource groups, and notifying the various resource managers of their obligations to load / unload resources in a group. More...
 
class  ResourceLoadingListener
 
class  ResourceManager
 Defines a generic resource handler. More...
 
struct  ResourceTransition
 
class  Root
 The root class of the Ogre system. More...
 
class  RotationalSpline
 This class interpolates orientations (rotations) along a spline using derivatives of quaternions. More...
 
class  RqBits
 
class  RuntimeAssertionException
 
struct  SampleDescription
 Opaque struct that holds effective FSAA (MSAA, CSAA, etc.) mode. More...
 
class  ScaleControllerFunction
 Predefined controller function which simply scales an input to an output value. More...
 
class  SceneFormatBase
 
class  SceneFormatExporter
 
class  SceneFormatImporter
 
class  SceneFormatListener
 Override this listener if you want to filter which objects get exported. More...
 
class  SceneManager
 Manages the organisation and rendering of a 'scene' i.e. More...
 
class  SceneManagerEnumerator
 Enumerates the SceneManager classes available to applications. More...
 
class  SceneManagerFactory
 Class which will create instances of a given SceneManager. More...
 
struct  SceneManagerMetaData
 Structure containing information about a scene manager. More...
 
class  SceneNode
 Class representing a node in the scene graph. More...
 
class  SceneQuery
 A class for performing queries on a scene. More...
 
class  SceneQueryListener
 This optional class allows you to receive per-result callbacks from SceneQuery executions instead of a single set of consolidated results. More...
 
struct  SceneQueryResult
 Holds the results of a scene query. More...
 
class  ScopedLock
 
class  ScreenRatioPixelCountLodStrategy
 The ScreenRatioPixelCountLodStrategy class Implement a strategy which calculates LOD ratios based on coverage in screen ratios in the range [-1.0; 0.0] where -1.0 means the object is covering the whole screen and 0 covering almost nothing in the screen (very tiny). More...
 
class  ScriptCompiler
 This is the main class for the compiler. More...
 
class  ScriptCompilerEvent
 This struct is a base class for events which can be thrown by the compilers and caught by subscribers. More...
 
class  ScriptCompilerListener
 This is a listener for the compiler. More...
 
class  ScriptCompilerManager
 Manages threaded compilation of scripts. More...
 
class  ScriptLexer
 
class  ScriptLoader
 Abstract class defining the interface used by classes which wish to perform script loading to define instances of whatever they manage. More...
 
class  ScriptParser
 
struct  ScriptToken
 This struct represents a token, which is an ID'd lexeme from the parsing input stream. More...
 
class  ScriptTranslator
 This class translates script AST (abstract syntax tree) into Ogre resources. More...
 
class  ScriptTranslatorManager
 The ScriptTranslatorManager manages the lifetime and access to script translators. More...
 
class  SDLGLSupport
 
class  SDLWindow
 
class  Serializer
 Generic class for serialising data to / from binary stream-based files. More...
 
class  ShaderParams
 The purpose of this class is to contain a set of both auto and manual parameters that may apply to multiple shaders; without having the shader to be created first (the drawback of GpuProgramParameters). More...
 
class  ShadowCameraSetup
 This class allows you to plug in new ways to define the camera setup when rendering and projecting shadow textures. More...
 
class  ShadowNodeHelper
 
class  ShadowTextureDefinition
 Local texture definition. More...
 
class  ShadowVolumeExtrudeProgram
 Static class containing source for vertex programs for extruding shadow volumes. More...
 
class  SharedParamsTranslator
 
class  SharedPtr
 Reference-counted shared pointer, used for objects where implicit destruction is required. More...
 
struct  SharedPtrInfo
 
class  SharedPtrInfoDelete
 
class  SharedPtrInfoDeleteT
 
class  SharedPtrInfoFree
 
struct  SharedPtrInfoNone
 
class  SimpleMatrix4
 Simple wrap up to load an AoS matrix 4x4 using SSE. More...
 
class  SimpleMatrixAf4x3
 Simple wrap up to load an AoS matrix 4x3 using SSE. More...
 
class  SimplePageContentCollection
 Specialisation of PageContentCollection which just provides a simple list of PageContent instances. More...
 
class  SimplePageContentCollectionFactory
 Factory class for SimplePageContentCollection. More...
 
class  SimpleSpline
 A very simple spline class which implements the Catmull-Rom class of splines. More...
 
class  Singleton
 Template class for creating single-instance global classes. More...
 
class  SkeletonAnimation
 Represents the instance of a Skeletal animation based on its definition. More...
 
class  SkeletonAnimationDef
 
struct  SkeletonAnimManager
 This is how the Skeleton system works in 2.0: There is one BoneMemoryManager per skeleton. More...
 
class  SkeletonDef
 
class  SkeletonInstance
 Instance of a Skeleton, main external interface for retrieving bone positions and applying animations. More...
 
class  SkeletonManager
 Handles the management of skeleton resources. More...
 
class  SkeletonTrack
 
class  SmallVector
 SmallVector - This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small. More...
 
class  SmallVector< T, 0 >
 Specialize SmallVector at N=0. More...
 
class  SmallVectorBase
 SmallVectorBase - This is all the non-templated stuff common to all SmallVectors. More...
 
class  SmallVectorImpl
 SmallVectorImpl - This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter. More...
 
class  SmallVectorTemplateBase
 SmallVectorTemplateBase<isPodLike = false> - This is where we put method implementations that are designed to work with non-POD-like T's. More...
 
class  SmallVectorTemplateBase< T, true >
 SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's. More...
 
class  SmallVectorTemplateCommon
 
class  Sphere
 A sphere primitive, mostly used for bounds checking. More...
 
class  SphereSceneQuery
 Specialises the SceneQuery class for querying within a sphere. More...
 
class  StackVector
 Compact implementation similar to std::array. More...
 
class  StagingBuffer
 A staging buffer is a buffer that resides on the GPU and be written to/from both CPU & GPU However the access in both cases is limited. More...
 
class  StagingTexture
 A StagingTexture is an intermediate texture that can be read and be written from both CPU & GPU. More...
 
class  StagingTextureBufferImpl
 This implementation can be used by all RenderSystem APIs except D3D11, which is why this implementation is part of OgreMain. More...
 
class  StagingTextureManager
 
class  StaticCache
 Template version of cache based on static array. More...
 
struct  StaticFaceGroup
 Collects a group of static i.e. More...
 
class  STBIImageCodec
 Codec specialized in images loaded using stbi (https://github.com/nothings/stb). More...
 
class  StdList
 
class  StdMap
 
class  StdMultiMap
 
class  StdUnorderedSet
 
class  StdVector
 
struct  StencilParams
 
struct  StencilStateOp
 
class  STLAllocator
 
struct  STLAllocatorBase
 Wrapper class for operating as an STL container allocator. More...
 
struct  STLAllocatorBase< const T >
 
class  StreamSerialiser
 Utility class providing helper methods for reading / writing structured data held in a DataStream. More...
 
class  StringConverter
 Class for converting the core Ogre data types to/from Strings. More...
 
class  StringInterface
 Class defining the common interface which classes can use to present a reflection-style, self-defining parameter set to callers. More...
 
class  StringUtil
 Utility class for manipulating Strings. More...
 
class  SubItem
 Utility class which defines the sub-parts of an Item. More...
 
class  SubMesh
 Defines a part of a complete mesh. More...
 
class  SubStringRef
 
class  TagPoint
 TagPoints are like SceneNodes, that can be children of a Bone. More...
 
class  Technique
 Class representing an approach to rendering this particular Material. More...
 
class  TechniqueTranslator
 
class  Terrain
 The main containing class for a chunk of terrain. More...
 
class  TerrainAutoUpdateLod
 Terrain automatic LOD loading. More...
 
class  TerrainAutoUpdateLodByDistance
 Class implementing TerrainAutoUpdateLod interface. More...
 
class  TerrainAutoUpdateLodFactory
 
class  TerrainGlobalOptions
 Options class which just stores default options for the terrain. More...
 
class  TerrainGroup
 Helper class to assist you in managing multiple terrain instances that are connected to each other. More...
 
class  TerrainLayerBlendMap
 Class exposing an interface to a blend map for a given layer. More...
 
struct  TerrainLayerDeclaration
 The definition of the information each layer will contain in this terrain. More...
 
struct  TerrainLayerSampler
 Description of a sampler that will be used with each layer. More...
 
struct  TerrainLayerSamplerElement
 Information about one element of a sampler / texture within a layer. More...
 
class  TerrainLodManager
 Terrain LOD data manager. More...
 
class  TerrainMaterialGenerator
 Class that provides functionality to generate materials for use with a terrain. More...
 
class  TerrainMaterialGeneratorA
 A TerrainMaterialGenerator which can cope with normal mapped, specular mapped terrain. More...
 
class  TerrainPagedWorldSection
 A world section which includes paged terrain. More...
 
class  TerrainPaging
 This class is the 'core' class for paging terrain, that will integrate with the larger paging system and provide the appropriate utility classes required. More...
 
class  TerrainQuadTreeNode
 A node in a quad tree used to store a patch of terrain. More...
 
class  TexBufferPacked
 Represents Texture buffers (also known as tbuffers in D3D11) More...
 
class  TexCoordModifierControllerValue
 Predefined controller value for getting / setting a texture coordinate modifications (scales and translates). More...
 
class  Texture
 Abstract class representing a Texture resource. More...
 
class  TextureAnimationControllerValue
 Predefined controller value for getting / setting a texture coordinate modifications (scales and translates). More...
 
struct  TextureBox
 For cubemaps, the face is in sliceStart, (see CubemapSide::CubemapSide) For cubemap arrays, the cubemaps are addressed as sliceStart * 6. More...
 
class  TextureDefinitionBase
 Centralized class for dealing with declarations of textures in Node & Workspace definitions. More...
 
class  TextureFrameControllerValue
 Predefined controller value for getting / setting the frame number of a texture layer. More...
 
class  TextureGpu
 
class  TextureGpuListener
 
class  TextureGpuManager
 This class manages all textures (i.e. More...
 
class  TextureGpuManagerListener
 
class  TextureManager
 Class for loading & managing textures. More...
 
struct  TexturePool
 
class  TextureSourceTranslator
 
class  TextureUnitState
 Class representing the state of a single texture unit during a Pass of a Technique, of a Material. More...
 
class  TextureUnitTranslator
 
class  ThreadHandle
 
class  ThreadLocalPtr
 
class  Threads
 
class  Timer
 Timer class. More...
 
struct  Transform
 Represents the transform of a single object, arranged in SoA (Structure of Arrays) More...
 
struct  TRect
 
struct  type4
 
class  UavBufferPacked
 Represents UAV buffers (also known as SSBOs in OpenGL) Uav buffers are supported in DX10/DX10.1 hardware (with up to date drivers). More...
 
struct  uint4
 
class  UnifiedHighLevelGpuProgram
 Specialisation of HighLevelGpuProgram which just delegates its implementation to one other high level program, allowing a single program definition to represent one supported program from a number of options. More...
 
class  UnifiedHighLevelGpuProgramFactory
 Factory class for Unified programs. More...
 
class  UniformScalableTask
 A uniform task is a highly parallelizable task that can be divided in many threads where all threads take near the same amount of time to perform. More...
 
class  UnimplementedException
 Template struct which creates a distinct type for each exception code. More...
 
struct  UnlitMobileProp
 
struct  UnlitProperty
 
struct  UpdateLodRequest
 
struct  UpdateTransformRequest
 
class  UserObjectBindings
 Class that provides convenient interface to establish a linkage between custom user application objects and Ogre core classes. More...
 
class  VaoManager
 
class  VariableAccessAbstractNode
 This abstract node represents a variable assignment. More...
 
class  VctLighting
 
class  VctMaterial
 
class  VctVoxelizer
 The voxelizer consists in several stages. More...
 
class  Vector2
 Standard 2-dimensional vector. More...
 
class  Vector3
 Standard 3-dimensional vector. More...
 
class  Vector4
 4-dimensional homogeneous vector. More...
 
class  VectorIterator
 Concrete IteratorWrapper for nonconst access to the underlying container. More...
 
class  VectorIteratorWrapper
 Prepared IteratorWrapper for container like std::vector. More...
 
struct  VectorRange
 Predefined type. More...
 
struct  VectorSet
 VectorSet is basically a helper to use a vector as a small set container. More...
 
struct  VertexArrayObject
 Vertex array objects (Vaos) are immutable objects that describe a combination of vertex buffers and index buffer with a given operation type. More...
 
struct  VertexBoneAssignment
 Records the assignment of a single vertex to a single bone with the corresponding weight. More...
 
class  VertexBufferDownloadHelper
 Ogre currently does not support deinterleaved vertex buffers. More...
 
class  VertexBufferPacked
 
struct  VertexElement2
 
struct  VertexElementSemanticFull
 
class  VertexShadowMapHelper
 
struct  ViewPoint
 Structure for holding a position & orientation pair. More...
 
class  Viewport
 An abstraction of a viewport, i.e. More...
 
struct  VoxelizerBucket
 
class  VoxelVisualizer
 
struct  VrData
 
class  WaitableEvent
 A WaitableEvent is useful in the scenario of a singler consumer, multiple producers The consumer will wait until any of the producers wake it up to consume the work. More...
 
class  WaveformControllerFunction
 Predefined controller function based on a waveform. More...
 
class  Win32Context
 
class  Win32EGLContext
 
class  Win32EGLSupport
 
class  Win32EGLWindow
 
class  Win32GLSupport
 
class  Win32Window
 
class  Window
 
class  WindowEventListener
 
class  WindowEventUtilities
 
class  WireAabb
 Helper class to display the Aabb of a MovableObject as lines. More...
 
class  WireAabbFactory
 Factory object for creating WireAabb instances. More...
 
class  WorkQueue
 Interface to a general purpose request / response style background work queue. More...
 
class  X11EGLContext
 
class  X11EGLSupport
 
class  X11EGLWindow
 
class  ZipArchive
 Specialisation of the Archive class to allow reading of files from a zip format source archive. More...
 
class  ZipArchiveFactory
 Specialisation of ArchiveFactory for Zip files. More...
 
class  ZipDataStream
 Specialisation of DataStream to handle streaming data from zip archives. More...
 

Typedefs

typedef std::string _StringBase
 
typedef stdext::hash_compare< _StringBase, std::less< _StringBase > > _StringHash
 
typedef std::basic_stringstream< char, std::char_traits< char >, std::allocator< char > > _StringStreamBase
 
typedef uint32 ABGR
 
typedef ScriptingAllocatedObject AbstractNodeAlloc
 
typedef list< AbstractNodePtr >::type AbstractNodeList
 
typedef SharedPtr< AbstractNodeListAbstractNodeListPtr
 
typedef SharedPtr< AbstractNodeAbstractNodePtr
 
typedef vector< SkeletonAnimation * >::type ActiveAnimationsVec
 
typedef StdMap< String, StringAliasTextureNamePairList
 Alias / Texture name pair (first = alias, second = texture name) More...
 
typedef AnimationAllocatedObject AnimableAlloc
 
typedef SharedPtr< AnimableValueAnimableValuePtr
 
typedef AnimationAllocatedObject AnimationAlloc
 
typedef AllocatedObject< AnimationAllocPolicyAnimationAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_ANIMATIONAnimationAllocPolicy
 
typedef GeneralAllocatedObject ArchiveAlloc
 
typedef vector< Archive * >::type ArchiveVec
 
typedef uint32 ARGB
 
typedef uint32 ArrayInt
 
typedef bool ArrayMaskI
 
typedef bool ArrayMaskR
 
typedef Radian ArrayRadian
 
typedef Real ArrayReal
 
typedef SharedPtr< AsyncTicketAsyncTicketPtr
 
typedef WorkQueue::RequestID BackgroundProcessTicket
 Identifier of a background process. More...
 
typedef GeometryAllocatedObject BatchedGeometryAlloc
 
typedef uint32 BGRA
 
typedef StdMap< String, StringBinaryOptionList
 
typedef map< SkeletonInstance *, BoneVec >::type BonesPerSkeletonInstance
 
typedef vector< Bone * >::type BoneVec
 
typedef RenderSysAllocatedObject BufferAlloc
 
typedef GeometryAllocatedObject BufferPackedAlloc
 
typedef StdUnorderedSet< BufferPacked * > BufferPackedSet
 
typedef StdVector< BufferPacked * > BufferPackedVec
 
typedef vector< uint32 >::type ChannelMappings
 
typedef void(* CleanupRoutines) (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
typedef GeneralAllocatedObject CodecAlloc
 
typedef TextureGpuCompositorChannel
 A channel in the compositor transports textures between nodes. More...
 
typedef vector< CompositorChannel >::type CompositorChannelVec
 
typedef ResourceAllocatedObject CompositorInstAlloc
 
typedef vector< CompositorNamedBuffer >::type CompositorNamedBufferVec
 
typedef vector< CompositorNode * >::type CompositorNodeVec
 
typedef vector< CompositorPassDef * >::type CompositorPassDefVec
 
typedef vector< CompositorPass * >::type CompositorPassVec
 
typedef vector< CompositorShadowNode * >::type CompositorShadowNodeVec
 
typedef vector< CompositorTargetDef >::type CompositorTargetDefVec
 
typedef vector< CompositorTexture >::type CompositorTextureVec
 
typedef vector< CompositorWorkspaceListener * >::type CompositorWorkspaceListenerVec
 
typedef list< ConcreteNodePtr >::type ConcreteNodeList
 
typedef SharedPtr< ConcreteNodeListConcreteNodeListPtr
 
typedef SharedPtr< ConcreteNodeConcreteNodePtr
 
typedef GeneralAllocatedObject ConfigAlloc
 
typedef struct Ogre::_ConfigOption ConfigOption
 Packages the details of a configuration option. More...
 
typedef map< String, ConfigOption >::type ConfigOptionMap
 
typedef vector< const Image * >::type ConstImagePtrList
 
typedef GeneralAllocatedObject ControllerAlloc
 
typedef SharedPtr< ControllerFunction< Real > > ControllerFunctionRealPtr
 
typedef SharedPtr< ControllerValue< Real > > ControllerValueRealPtr
 
typedef vector< CubemapProbe * >::type CubemapProbeVec
 
typedef map< FrameBufferDescKey, D3D11FrameBufferDescValue >::type D3D11FrameBufferDescMap
 
typedef SharedPtr< D3D11HLSLProgramD3D11HLSLProgramPtr
 
typedef SharedPtr< D3D9GpuProgramD3D9GpuProgramPtr
 
typedef SharedPtr< D3D9HLSLProgramD3D9HLSLProgramPtr
 
typedef SharedPtr< D3D9TextureD3D9TexturePtr
 
typedef StdList< DataStreamPtrDataStreamList
 List of DataStream items. More...
 
typedef SharedPtr< DataStreamListDataStreamListPtr
 Shared pointer to list of DataStream items. More...
 
typedef SharedPtr< DataStreamDataStreamPtr
 
typedef GeometryAllocatedObject DebugGeomAlloc
 
typedef map< uint16, TextureGpuVec >::type DepthBufferMap2
 
typedef map< TextureGpu *, uint16 >::type DepthBufferRefMap
 
typedef DistanceLodBoxStrategy DistanceLodStrategy
 Backward compatible name for Distance_Box strategy. More...
 
typedef vector< double >::type DoubleConstantList
 Definition of container that holds the current double constants. More...
 
typedef GeneralAllocatedObject DynLibAlloc
 
typedef GeometryAllocatedObject EdgeDataAlloc
 
typedef GeneralAllocatedObject FactoryAlloc
 
typedef vector< FileInfo >::type FileInfoList
 
typedef SharedPtr< FileInfoListFileInfoListPtr
 
typedef GeneralAllocatedObject FileSystemLayerAlloc
 
typedef FastArray< TextureFilter::FilterBase * > FilterBaseArray
 
typedef vector< float >::type FloatConstantList
 Definition of container that holds the current float constants. More...
 
typedef TRect< float > FloatRect
 Structure used to define a rectangle in a 2-D floating point space. More...
 
typedef SharedPtr< FontFontPtr
 
typedef vector< Frustum * >::type FrustumVec
 
typedef SceneObjAllocatedObject FXAlloc
 
typedef AllocatedObject< GeneralAllocPolicyGeneralAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_GENERALGeneralAllocPolicy
 
typedef AllocatedObject< GeometryAllocPolicyGeometryAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_GEOMETRYGeometryAllocPolicy
 
typedef map< FrameBufferDescKey, GL3PlusFrameBufferDescValue >::type GL3PlusFrameBufferDescMap
 
typedef vector< GL3PlusTexturePtr >::type GL3PlusTexturePtrList
 
typedef GLAtomicCounterReferenceList::iterator GLAtomicCounterReferenceIterator
 
typedef vector< GLAtomicCounterReference >::type GLAtomicCounterReferenceList
 
typedef GLCounterBufferList::iterator GLCounterBufferIterator
 
typedef vector< v1::HardwareCounterBufferSharedPtr >::type GLCounterBufferList
 
typedef SharedPtr< GLES2TextureGLES2TexturePtr
 
typedef SharedPtr< GLSLShaderGLSLShaderPtr
 
typedef GLUniformBufferList::iterator GLUniformBufferIterator
 
typedef vector< v1::HardwareUniformBufferSharedPtr >::type GLUniformBufferList
 
typedef GLUniformReferenceList::iterator GLUniformReferenceIterator
 
typedef vector< GLUniformReference >::type GLUniformReferenceList
 
typedef ConstMapIterator< GpuConstantDefinitionMapGpuConstantDefinitionIterator
 
typedef map< String, GpuConstantDefinition >::type GpuConstantDefinitionMap
 
typedef SharedPtr< GpuLogicalBufferStructGpuLogicalBufferStructPtr
 
typedef map< size_t, GpuLogicalIndexUse >::type GpuLogicalIndexUseMap
 
typedef SharedPtr< GpuNamedConstantsGpuNamedConstantsPtr
 
typedef RenderSysAllocatedObject GpuParamsAlloc
 
typedef SharedPtr< GpuProgramParametersGpuProgramParametersSharedPtr
 
typedef SharedPtr< GpuProgramGpuProgramPtr
 
typedef SharedPtr< GpuSharedParametersGpuSharedParametersPtr
 
typedef SharedPtr< HighLevelGpuProgramHighLevelGpuProgramPtr
 
typedef ResourceSimdAllocObject HlmsAlloc
 
typedef vector< HlmsCache * >::type HlmsCacheVec
 
typedef vector< std::pair< IdString, String > >::type HlmsParamVec
 
typedef vector< HlmsProperty >::type HlmsPropertyVec
 
typedef StdVector< IdStringIdStringVec
 
typedef Ogre::uint32 IdType
 Big projects with lots, lots of units for very long periods of time (MMORPGs?) may want to define this to 64-bit. More...
 
typedef GeneralAllocatedObject ImageAlloc
 
typedef void() ImageBlur2D(uint8 *_tmpPtr, uint8 *_srcDstPtr, int32 width, int32 height, int32 bytesPerRow, const uint8 kernel[5], const int8 kernelStart, const int8 kernelEnd)
 Range is [kernelStart; kernelEnd]. More...
 
typedef void() ImageDownsampler2D(uint8 *dstPtr, uint8 const *srcPtr, int32 dstWidth, int32 dstHeight, int32 dstBytesPerRow, int32 srcWidth, int32 srcBytesPerRow, const uint8 kernel[5][5], const int8 kernelStartX, const int8 kernelEndX, const int8 kernelStartY, const int8 kernelEndY)
 Range is [kernelStart; kernelEnd]. More...
 
typedef void() ImageDownsamplerCube(uint8 *dstPtr, uint8 const **srcPtr, int32 dstWidth, int32 dstHeight, int32 dstBytesPerRow, int32 srcWidth, int32 srcHeight, int32 srcBytesPerRow, const uint8 kernel[5][5], const int8 kernelStartX, const int8 kernelEndX, const int8 kernelStartY, const int8 kernelEndY, uint8 currentFace)
 
typedef vector< Image * >::type ImagePtrList
 
typedef GeometryAllocatedObject IndexDataAlloc
 
typedef short int16
 
typedef int int32
 
typedef long long int64
 
typedef signed char int8
 
typedef vector< int >::type IntConstantList
 Definition of container that holds the current int constants. More...
 
typedef vector< KeyFrameRig >::type KeyFrameRigVec
 
typedef vector< KeyFrameRigVec::const_iterator >::type KnownKeyFramesVec
 
typedef FastArray< Light * > LightArray
 
typedef FastArray< LightClosestLightClosestArray
 
typedef HashedVector< LightClosestLightList
 
typedef SceneCtlAllocatedObject LodAlloc
 
typedef SharedPtr< LodCollapseCostLodCollapseCostPtr
 
typedef SharedPtr< LodCollapserLodCollapserPtr
 
typedef SharedPtr< LodDataLodDataPtr
 
typedef SharedPtr< LodInputProviderLodInputProviderPtr
 
typedef SharedPtr< LodOutputProviderLodOutputProviderPtr
 
typedef vector< ProfiledEdge >::type LodProfile
 
typedef GeneralAllocatedObject LogAlloc
 
typedef SharedPtr< MaterialMaterialPtr
 
typedef MathlibC Mathlib
 
typedef SharedPtr< MemoryDataStreamMemoryDataStreamPtr
 
typedef vector< char * >::type MemoryPoolVec
 
typedef GeneralAllocatedObject MeshLodAlloc
 
typedef SharedPtr< MeshMeshPtr
 
typedef vector< MetalDiscardBuffer * >::type MetalDiscardBufferVec
 
typedef map< FrameBufferDescKey, MetalFrameBufferDescValue >::type MetalFrameBufferDescMap
 
typedef vector< byte >::type MicroCode
 
typedef SceneObjAllocatedObject MovableAlloc
 
typedef StdMap< String, StringNameValuePairList
 Name / value parameter pair (first = name, second = value) More...
 
typedef SceneCtlAllocatedObject NodeAlloc
 
typedef SceneObjAllocatedObject OverlayAlloc
 
typedef HlmsUnlitMobileDatablock OverlayUnlitDatablock
 
typedef GeneralAllocatedObject PageAlloc
 
typedef uint32 PageID
 Identifier for a page. More...
 
typedef map< String, ParamCommand *>::type ParamCommandMap
 
typedef vector< ParameterDef >::type ParameterList
 
typedef ResourceAllocatedObject PassAlloc
 
typedef GeometryAllocatedObject PatchAlloc
 
typedef map< IdString, String >::type PiecesMap
 
typedef AbsolutePixelCountLodStrategy PixelCountLodStrategy
 Backward compatible name for Distance_Box strategy. More...
 
typedef vector< PixelFormat >::type PixelFormatList
 
typedef vector< PlaneBoundedVolume >::type PlaneBoundedVolumeList
 
typedef StdVector< PlanePlaneList
 
typedef GeneralAllocatedObject PluginAlloc
 
typedef double PreciseReal
 Real type for numeric solvers. More...
 
typedef GeneralAllocatedObject ProfilerAlloc
 
typedef GeometryAllocatedObject ProgMeshAlloc
 
typedef GeneralAllocatedObject PropertyAlloc
 
typedef map< String, PropertyDef >::type PropertyDefMap
 Map from property name to shared definition. More...
 
typedef map< String, PropertyValue >::type PropertyValueMap
 Defines a transferable map of properties using wrapped value types (Ogre::Any) More...
 
typedef vector< RaySceneQueryResultEntry >::type RaySceneQueryResult
 
typedef float Real
 Software floating point type. More...
 
typedef uint32 RealAsUint
 
typedef TRect< RealRealRect
 Structure used to define a rectangle in a 2-D floating point space, subject to double / single floating point settings. More...
 
typedef TRect< long > Rect
 Structure used to define a rectangle in a 2-D integer space. More...
 
typedef FastArray< Renderable * > RenderableArray
 
typedef SceneCtlAllocatedObject RenderQueueAlloc
 
typedef RenderSysAllocatedObject RenderSysAlloc
 
typedef AllocatedObject< RenderSysAllocPolicyRenderSysAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_RENDERSYSRenderSysAllocPolicy
 
typedef vector< RenderSystem * >::type RenderSystemList
 
typedef vector< RenderTargetViewEntry >::type RenderTargetViewEntryVec
 
typedef vector< RenderWindowDescription >::type RenderWindowDescriptionList
 Render window creation parameters container. More...
 
typedef StdMap< GpuTrackedResource *, ResourceAccess::ResourceAccessResourceAccessMap
 
typedef ResourceAllocatedObject ResourceAlloc
 
typedef AllocatedObject< ResourceAllocPolicyResourceAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_RESOURCEResourceAllocPolicy
 
typedef unsigned long long int ResourceHandle
 
typedef StdMap< GpuTrackedResource *, ResourceLayout::LayoutResourceLayoutMap
 
typedef SharedPtr< ResourceResourcePtr
 
typedef AllocatedObject< ResourceSimdAllocPolicyResourceSimdAllocObject
 
typedef CategorisedAlignAllocPolicy< Ogre::MEMCATEGORY_RESOURCEResourceSimdAllocPolicy
 
typedef uint32 RGBA
 
typedef GeneralAllocatedObject RootAlloc
 
typedef GeneralAllocatedObject RTShaderSystemAlloc
 
typedef AllocatedObject< SceneCtlAlignPolicySceneCtlAlignedObject
 
typedef CategorisedAlignAllocPolicy< Ogre::MEMCATEGORY_SCENE_CONTROLSceneCtlAlignPolicy
 
typedef AllocatedObject< SceneCtlAllocPolicySceneCtlAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_SCENE_CONTROLSceneCtlAllocPolicy
 
typedef SceneCtlAlignedObject SceneMgtAlignedAlloc
 
typedef SceneCtlAllocatedObject SceneMgtAlloc
 
typedef AllocatedObject< SceneObjAllocPolicySceneObjAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_SCENE_OBJECTSSceneObjAllocPolicy
 
typedef list< SceneQueryMovableObjectPair >::type SceneQueryMovableIntersectionList
 
typedef std::pair< MovableObject *, MovableObject * > SceneQueryMovableObjectPair
 
typedef std::pair< MovableObject *, SceneQuery::WorldFragment * > SceneQueryMovableObjectWorldFragmentPair
 
typedef list< SceneQueryMovableObjectWorldFragmentPair >::type SceneQueryMovableWorldFragmentIntersectionList
 
typedef list< MovableObject * >::type SceneQueryResultMovableList
 
typedef list< SceneQuery::WorldFragment * >::type SceneQueryResultWorldFragmentList
 
typedef uint16 SceneTypeMask
 Bitmask containing scene types. More...
 
typedef ScriptingAllocatedObject ScriptCompilerAlloc
 
typedef AllocatedObject< ScriptingAllocPolicyScriptingAllocatedObject
 
typedef CategorisedAllocPolicy< Ogre::MEMCATEGORY_SCRIPTINGScriptingAllocPolicy
 
typedef vector< ScriptToken >::type ScriptTokenList
 
typedef SharedPtr< ScriptTokenListScriptTokenListPtr
 
typedef ScriptingAllocatedObject ScriptTranslatorAlloc
 
typedef GeneralAllocatedObject SerializerAlloc
 
typedef SharedPtr< ShadowCameraSetupShadowCameraSetupPtr
 
typedef SceneCtlAllocatedObject ShadowDataAlloc
 
typedef map< GpuSharedParametersPtr, v1::HardwareUniformBufferSharedPtr >::type SharedParamsBufferMap
 
typedef map< VertexBufferPacked *, VertexBufferPacked * >::type SharedVertexBufferMap
 When cloning Vaos, some vertex buffers are used multiple times for LOD'ing purposes (only the IndexBuffer changes). More...
 
typedef vector< SkeletonAnimationDef >::type SkeletonAnimationDefVec
 
typedef vector< SkeletonAnimation >::type SkeletonAnimationVec
 
typedef SharedPtr< SkeletonDefSkeletonDefPtr
 
typedef vector< SkeletonTrack >::type SkeletonTrackVec
 
typedef GeometryAllocatedObject StagingBufferAlloc
 
typedef vector< StagingBuffer * >::type StagingBufferVec
 
typedef vector< StagingTexture * >::type StagingTextureVec
 
typedef GeneralAllocatedObject StereoDriverAlloc
 
typedef GeneralAllocatedObject StreamAlloc
 
typedef _StringBase String
 
typedef _StringStreamBase StringStream
 
typedef StringStream stringstream
 
typedef vector< String >::type StringVector
 
typedef SharedPtr< StringVectorStringVectorPtr
 
typedef SceneObjAllocatedObject SubEntityAlloc
 
typedef ResourceAllocatedObject SubMeshAlloc
 
typedef ResourceAllocatedObject TechniqueAlloc
 
typedef GeneralAllocatedObject TerrainAlloc
 
typedef vector< TerrainLayerBlendMap * >::type TerrainLayerBlendMapList
 
typedef vector< TerrainLayerSamplerElement >::type TerrainLayerSamplerElementList
 
typedef vector< TerrainLayerSampler >::type TerrainLayerSamplerList
 
typedef SharedPtr< TerrainMaterialGeneratorTerrainMaterialGeneratorPtr
 
typedef set< TextureGpu * >::type TextureGpuSet
 
typedef vector< TextureGpu * >::type TextureGpuVec
 
typedef list< TexturePool >::type TexturePoolList
 
typedef vector< TexturePtr >::type TexturePtrList
 
typedef ResourceAllocatedObject TextureUnitStateAlloc
 
typedef void *(OGRE_THREAD_CALL_CONVENTIONTHREAD_ENTRY_POINT) (void *lpThreadParameter)
 
typedef SharedPtr< ThreadHandleThreadHandlePtr
 
typedef StdVector< ThreadHandlePtrThreadHandleVec
 
typedef GeneralAllocatedObject TimerAlloc
 
typedef pthread_key_t TlsHandle
 
typedef int TrackVertexColourType
 An enumeration describing which material properties should track the vertex colours. More...
 
typedef FastArray< BoneTransformTransformArray
 
typedef vector< UavBufferPacked * >::type UavBufferPackedVec
 
typedef unsigned char uchar
 In order to avoid finger-aches :) More...
 
typedef unsigned int uint
 
typedef unsigned short uint16
 
typedef unsigned int uint32
 
typedef unsigned long long uint64
 
typedef unsigned char uint8
 
typedef unsigned long ulong
 
typedef StdMap< String, bool > UnaryOptionList
 
typedef vector< uint >::type UnsignedIntConstantList
 Definition of container that holds the current uint constants. More...
 
typedef unsigned short ushort
 
typedef GeneralAllocatedObject UtilityAlloc
 
typedef GeometryAllocatedObject VertexArrayObjectAlloc
 
typedef FastArray< VertexArrayObject * > VertexArrayObjectArray
 
typedef unordered_set< VertexArrayObject * >::type VertexArrayObjectSet
 
typedef vector< VertexBufferPacked * >::type VertexBufferPackedVec
 
typedef GeometryAllocatedObject VertexDataAlloc
 
typedef vector< VertexElement2 >::type VertexElement2Vec
 
typedef vector< VertexElement2Vec >::type VertexElement2VecVec
 
typedef FastArray< VertexElementSemanticFullVertexElementSemanticFullArray
 
typedef RenderSysAllocatedObject ViewportAlloc
 
typedef FastArray< MovableObject::MovableObjectArrayVisibleObjectsPerRq
 
typedef FastArray< VisibleObjectsPerRqVisibleObjectsPerThreadArray
 
typedef StdVector< Window * > WindowList
 Render window container. More...
 

Enumerations

enum  {
  ID_MATERIAL = 3, 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_COORD_SET, 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_FORMAT,
  ID_NO_GAMMA, ID_NO_FSAA, ID_MSAA, ID_MSAA_AUTO,
  ID_EXPLICIT_RESOLVE, ID_REINTERPRETABLE, 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_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_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_SAMPLES_PER_ITERATION, ID_SAMPLES_SINGLE_ITERATION_FALLBACK,
  ID_FORCE_MIPMAP_FALLBACK, ID_READ_BACK_AS_TEXTURE, ID_SHADOW_NODE, ID_NUM_SPLITS,
  ID_NUM_STABLE_SPLITS, 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_RT_SHADER_SYSTEM, ID_TESSELLATION_HULL_PROGRAM,
  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
}
 This enum defines the integer ids for keywords this compiler handles. More...
 
enum  {
  TID_LBRACKET = 0, TID_RBRACKET, TID_COLON, TID_VARIABLE,
  TID_WORD, TID_QUOTE, TID_NEWLINE, TID_UNKNOWN,
  TID_END
}
 These codes represent token IDs which are numerical translations of specific lexemes. More...
 
enum  AbstractNodeType {
  ANT_UNKNOWN, ANT_ATOM, ANT_OBJECT, ANT_PROPERTY,
  ANT_IMPORT, ANT_VARIABLE_SET, ANT_VARIABLE_ACCESS
}
 This enum holds the types of the possible abstract nodes. More...
 
enum  BaseConstantType {
  BCT_FLOAT = 1, BCT_INT = 2, BCT_DOUBLE = 3, BCT_UINT = 4,
  BCT_BOOL = 5, BCT_SAMPLER = 6, BCT_SUBROUTINE = 7, BCT_UNKNOWN = 99
}
 
enum  BufferBindFlags {
  BB_FLAG_VERTEX = 1u << BP_TYPE_VERTEX, BB_FLAG_INDEX = 1u << BP_TYPE_INDEX, BB_FLAG_CONST = 1u << BP_TYPE_CONST, BB_FLAG_TEX = 1u << BP_TYPE_TEX,
  BB_FLAG_UAV = 1u << BP_TYPE_UAV, BB_FLAG_INDIRECT = 1u << BP_TYPE_INDIRECT
}
 
enum  BufferPackedTypes {
  BP_TYPE_VERTEX, BP_TYPE_INDEX, BP_TYPE_CONST, BP_TYPE_TEX,
  BP_TYPE_UAV, BP_TYPE_INDIRECT, NUM_BUFFER_PACKED_TYPES
}
 
enum  BufferType {
  BT_IMMUTABLE, BT_DEFAULT, BT_DYNAMIC_DEFAULT, BT_DYNAMIC_PERSISTENT,
  BT_DYNAMIC_PERSISTENT_COHERENT
}
 
enum  Capabilities {
  RSC_AUTOMIPMAP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 0), RSC_BLENDING = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 1), RSC_ANISOTROPY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 2), RSC_DOT3 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 3),
  RSC_CUBEMAPPING = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 4), RSC_HWSTENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 5), RSC_VBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 7), RSC_32BIT_INDEX = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 8),
  RSC_VERTEX_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 9), RSC_FRAGMENT_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 10), RSC_TEXTURE_SIGNED_INT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 11), RSC_TWO_SIDED_STENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 12),
  RSC_STENCIL_WRAP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 13), RSC_HWOCCLUSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 14), RSC_USER_CLIP_PLANES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 15), RSC_VERTEX_FORMAT_UBYTE4 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 16),
  RSC_INFINITE_FAR_PLANE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 17), RSC_HWRENDER_TO_TEXTURE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 18), RSC_TEXTURE_FLOAT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 19), RSC_NON_POWER_OF_2_TEXTURES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 20),
  RSC_TEXTURE_3D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 21), RSC_POINT_SPRITES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 22), RSC_POINT_EXTENDED_PARAMETERS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 23), RSC_VERTEX_TEXTURE_FETCH = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 24),
  RSC_MIPMAP_LOD_BIAS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 25), RSC_GEOMETRY_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 26), RSC_HWRENDER_TO_VERTEX_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 27), RSC_TEXTURE_COMPRESSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 0),
  RSC_TEXTURE_COMPRESSION_DXT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 1), RSC_TEXTURE_COMPRESSION_VTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 2), RSC_TEXTURE_COMPRESSION_PVRTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 3), RSC_TEXTURE_COMPRESSION_ATC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 4),
  RSC_TEXTURE_COMPRESSION_ETC1 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 5), RSC_TEXTURE_COMPRESSION_ETC2 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 6), RSC_TEXTURE_COMPRESSION_BC4_BC5 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 7), RSC_TEXTURE_COMPRESSION_BC6H_BC7 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 8),
  RSC_FIXED_FUNCTION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 9), RSC_MRT_DIFFERENT_BIT_DEPTHS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 10), RSC_ALPHA_TO_COVERAGE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 11), RSC_HW_GAMMA = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 12),
  RSC_RTT_SEPARATE_DEPTHBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 13), RSC_RTT_MAIN_DEPTHBUFFER_ATTACHABLE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 14), RSC_RTT_DEPTHBUFFER_RESOLUTION_LESSEQUAL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 15), RSC_VERTEX_BUFFER_INSTANCE_DATA = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 16),
  RSC_CAN_GET_COMPILED_SHADER_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 17), RSC_SHADER_SUBROUTINE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 18), RSC_HWRENDER_TO_TEXTURE_3D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 19), RSC_TEXTURE_1D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 20),
  RSC_TESSELLATION_HULL_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 21), RSC_TESSELLATION_DOMAIN_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 22), RSC_COMPUTE_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 23), RSC_HWOCCLUSION_ASYNCHRONOUS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 24),
  RSC_ATOMIC_COUNTERS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 25), RSC_READ_BACK_AS_TEXTURE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 26), RSC_EXPLICIT_FSAA_RESOLVE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 27), RSC_COMPLETE_TEXTURE_BINDING = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 0),
  RSC_TEXTURE_2D_ARRAY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 1), RSC_TEXTURE_CUBE_MAP_ARRAY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 2), RSC_TEXTURE_GATHER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 3), RSC_UAV = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 4),
  RSC_EXPLICIT_API = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 5), RSC_SEPARATE_SAMPLERS_FROM_TEXTURES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 6), RSC_MSAA_2D_ARRAY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 7), RSC_IS_TILER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 8),
  RSC_TILER_CAN_CLEAR_STENCIL_REGION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 9), RSC_CONST_BUFFER_SLOTS_IN_SHADER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 10), RSC_TEXTURE_COMPRESSION_ASTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 11), RSC_STORE_AND_MULTISAMPLE_RESOLVE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_3, 12),
  RSC_PERSTAGECONSTANT = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 0), RSC_TYPED_UAV_LOADS = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 1), RSC_VP_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 2), RSC_GL1_5_NOVBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 1),
  RSC_FBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 2), RSC_FBO_ARB = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 3), RSC_FBO_ATI = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 4), RSC_PBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 5),
  RSC_GL1_5_NOHWOCCLUSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 6), RSC_POINT_EXTENDED_PARAMETERS_ARB = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 7), RSC_POINT_EXTENDED_PARAMETERS_EXT = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 8), RSC_SEPARATE_SHADER_OBJECTS = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 9),
  RSC_VAO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 10)
}
 Enum describing the different hardware capabilities we want to check for OGRE_CAPS_VALUE(a, b) defines each capability. More...
 
enum  CapabilitiesCategory {
  CAPS_CATEGORY_COMMON = 0, CAPS_CATEGORY_COMMON_2 = 1, CAPS_CATEGORY_COMMON_3 = 2, CAPS_CATEGORY_D3D9 = 3,
  CAPS_CATEGORY_GL = 4, CAPS_CATEGORY_METAL = 5, CAPS_CATEGORY_COUNT = 6
}
 Enumerates the categories of capabilities. More...
 
enum  CbType {
  CB_INVALID, CB_SET_VAO, CB_SET_INDIRECT_BUFFER, CB_DRAW_CALL_INDEXED_EMULATED_NO_BASE_INSTANCE,
  CB_DRAW_CALL_INDEXED_EMULATED, CB_DRAW_CALL_INDEXED, CB_DRAW_CALL_STRIP_EMULATED_NO_BASE_INSTANCE, CB_DRAW_CALL_STRIP_EMULATED,
  CB_DRAW_CALL_STRIP, CB_SET_CONSTANT_BUFFER_VS, CB_SET_CONSTANT_BUFFER_PS, CB_SET_CONSTANT_BUFFER_GS,
  CB_SET_CONSTANT_BUFFER_HS, CB_SET_CONSTANT_BUFFER_DS, CB_SET_CONSTANT_BUFFER_CS, CB_SET_CONSTANT_BUFFER_INVALID,
  CB_SET_TEXTURE_BUFFER_VS, CB_SET_TEXTURE_BUFFER_PS, CB_SET_TEXTURE_BUFFER_GS, CB_SET_TEXTURE_BUFFER_HS,
  CB_SET_TEXTURE_BUFFER_DS, CB_SET_TEXTURE_BUFFER_CS, CB_SET_TEXTURE_BUFFER_INVALID, CB_SET_PSO,
  CB_SET_TEXTURE, CB_SET_TEXTURES, CB_SET_SAMPLERS, CB_START_V1_LEGACY_RENDERING,
  CB_SET_V1_RENDER_OP, CB_DRAW_V1_INDEXED_NO_BASE_INSTANCE, CB_DRAW_V1_INDEXED, CB_DRAW_V1_STRIP_NO_BASE_INSTANCE,
  CB_DRAW_V1_STRIP, CB_LOW_LEVEL_MATERIAL, MAX_COMMAND_BUFFER
}
 
enum  ClipResult { CLIPPED_NONE = 0, CLIPPED_SOME = 1, CLIPPED_ALL = 2 }
 Generic result of clipping. More...
 
enum  ColourBufferType { CBT_BACK = 0x0, CBT_BACK_LEFT, CBT_BACK_RIGHT }
 Defines the colour buffer types. More...
 
enum  CompareFunction {
  CMPF_ALWAYS_FAIL, CMPF_ALWAYS_PASS, CMPF_LESS, CMPF_LESS_EQUAL,
  CMPF_EQUAL, CMPF_NOT_EQUAL, CMPF_GREATER_EQUAL, CMPF_GREATER,
  NUM_COMPARE_FUNCTIONS
}
 Comparison functions used for the depth/stencil buffer operations and others. More...
 
enum  CompositorPassType {
  PASS_INVALID = 0, PASS_SCENE, PASS_QUAD, PASS_CLEAR,
  PASS_STENCIL, PASS_RESOLVE, PASS_DEPTHCOPY, PASS_UAV,
  PASS_MIPMAP, PASS_IBL_SPECULAR, PASS_COMPUTE, PASS_CUSTOM
}
 
enum  ConcreteNodeType {
  CNT_VARIABLE, CNT_VARIABLE_ASSIGN, CNT_WORD, CNT_IMPORT,
  CNT_QUOTE, CNT_LBRACE, CNT_RBRACE, CNT_COLON
}
 These enums hold the types of the concrete parsed nodes. More...
 
enum  CullingMode { CULL_NONE = 1, CULL_CLOCKWISE = 2, CULL_ANTICLOCKWISE = 3 }
 Hardware culling modes based on vertex winding. More...
 
enum  D3D9ResourceCreationPolicy { RCP_CREATE_ON_ACTIVE_DEVICE, RCP_CREATE_ON_ALL_DEVICES }
 
enum  eTexturePlayMode { TextureEffectPause = 0, TextureEffectPlay_ASAP = 1, TextureEffectPlay_Looping = 2 }
 Enum for type of texture play mode. More...
 
enum  FaceGroupType { FGT_FACE_LIST, FGT_PATCH, FGT_UNKNOWN }
 A type of face group, i.e. More...
 
enum  FilterOptions { FO_NONE, FO_POINT, FO_LINEAR, FO_ANISOTROPIC }
 Filtering options for textures / mipmaps. More...
 
enum  FilterType { FT_MIN, FT_MAG, FT_MIP }
 
enum  FogMode { FOG_NONE, FOG_EXP, FOG_EXP2, FOG_LINEAR }
 Fog modes. More...
 
enum  FontType { FT_TRUETYPE = 1, FT_IMAGE = 2 }
 Enumerates the types of Font usable in the engine. More...
 
enum  FrameBufferType { FBT_COLOUR = 0x1, FBT_DEPTH = 0x2, FBT_STENCIL = 0x4 }
 Defines the frame buffer types. More...
 
enum  FrustrumExtentsType { FET_PROJ_PLANE_POS, FET_TAN_HALF_ANGLES }
 Specify how the frustrum extents are represented. More...
 
enum  FrustumPlane {
  FRUSTUM_PLANE_NEAR = 0, FRUSTUM_PLANE_FAR = 1, FRUSTUM_PLANE_LEFT = 2, FRUSTUM_PLANE_RIGHT = 3,
  FRUSTUM_PLANE_TOP = 4, FRUSTUM_PLANE_BOTTOM = 5
}
 Worldspace clipping planes. More...
 
enum  GpuConstantType {
  GCT_FLOAT1 = 1, GCT_FLOAT2 = 2, GCT_FLOAT3 = 3, GCT_FLOAT4 = 4,
  GCT_SAMPLER1D = 5, GCT_SAMPLER2D = 6, GCT_SAMPLER3D = 7, GCT_SAMPLERCUBE = 8,
  GCT_SAMPLERRECT = 9, GCT_SAMPLER1DSHADOW = 10, GCT_SAMPLER2DSHADOW = 11, GCT_SAMPLER2DARRAY = 12,
  GCT_MATRIX_2X2 = 13, GCT_MATRIX_2X3 = 14, GCT_MATRIX_2X4 = 15, GCT_MATRIX_3X2 = 16,
  GCT_MATRIX_3X3 = 17, GCT_MATRIX_3X4 = 18, GCT_MATRIX_4X2 = 19, GCT_MATRIX_4X3 = 20,
  GCT_MATRIX_4X4 = 21, GCT_INT1 = 22, GCT_INT2 = 23, GCT_INT3 = 24,
  GCT_INT4 = 25, GCT_SUBROUTINE = 26, GCT_DOUBLE1 = 27, GCT_DOUBLE2 = 28,
  GCT_DOUBLE3 = 29, GCT_DOUBLE4 = 30, GCT_MATRIX_DOUBLE_2X2 = 31, GCT_MATRIX_DOUBLE_2X3 = 32,
  GCT_MATRIX_DOUBLE_2X4 = 33, GCT_MATRIX_DOUBLE_3X2 = 34, GCT_MATRIX_DOUBLE_3X3 = 35, GCT_MATRIX_DOUBLE_3X4 = 36,
  GCT_MATRIX_DOUBLE_4X2 = 37, GCT_MATRIX_DOUBLE_4X3 = 38, GCT_MATRIX_DOUBLE_4X4 = 39, GCT_UINT1 = 40,
  GCT_UINT2 = 41, GCT_UINT3 = 42, GCT_UINT4 = 43, GCT_BOOL1 = 44,
  GCT_BOOL2 = 45, GCT_BOOL3 = 46, GCT_BOOL4 = 47, GCT_SAMPLER_WRAPPER1D = 48,
  GCT_SAMPLER_WRAPPER2D = 49, GCT_SAMPLER_WRAPPER3D = 50, GCT_SAMPLER_WRAPPERCUBE = 51, GCT_SAMPLER_STATE = 52,
  GCT_SAMPLERCUBE_ARRAY = 53, GCT_UNKNOWN = 99
}
 Enumeration of the types of constant we may encounter in programs. More...
 
enum  GpuParamVariability {
  GPV_GLOBAL = 1, GPV_PER_OBJECT = 2, GPV_LIGHTS = 4, GPV_PASS_ITERATION_NUMBER = 8,
  GPV_ALL = 0xFFFF
}
 The variability of a GPU parameter, as derived from auto-params targeting it. More...
 
enum  GpuProgramType {
  GPT_VERTEX_PROGRAM, GPT_FRAGMENT_PROGRAM, GPT_GEOMETRY_PROGRAM, GPT_HULL_PROGRAM,
  GPT_DOMAIN_PROGRAM, GPT_COMPUTE_PROGRAM
}
 Enumerates the types of programs which can run on the GPU. More...
 
enum  GPUVendor {
  GPU_UNKNOWN = 0, GPU_NVIDIA = 1, GPU_AMD = 2, GPU_INTEL = 3,
  GPU_S3 = 4, GPU_MATROX = 5, GPU_3DLABS = 6, GPU_SIS = 7,
  GPU_IMAGINATION_TECHNOLOGIES = 8, GPU_APPLE = 9, GPU_NOKIA = 10, GPU_MS_SOFTWARE = 11,
  GPU_MS_WARP = 12, GPU_ARM = 13, GPU_QUALCOMM = 14, GPU_MOZILLA = 15,
  GPU_WEBKIT = 16, GPU_VENDOR_COUNT = 17
}
 Enumeration of GPU vendors. More...
 
enum  Grid2DMode { G2D_X_Z = 0, G2D_X_Y = 1, G2D_Y_Z = 2 }
 The 2D grid mode. More...
 
enum  HlmsBasicBlock { BLOCK_MACRO, BLOCK_BLEND, BLOCK_SAMPLER, NUM_BASIC_BLOCKS }
 
enum  HlmsTypes {
  HLMS_LOW_LEVEL, HLMS_PBS, HLMS_TOON, HLMS_UNLIT,
  HLMS_USER0, HLMS_USER1, HLMS_USER2, HLMS_USER3,
  HLMS_MAX = 8, HLMS_COMPUTE
}
 Up to 8 different HLMS generator types are allowed. More...
 
enum  ImageFlags { IF_COMPRESSED = 0x00000001, IF_CUBEMAP = 0x00000002, IF_3D_TEXTURE = 0x00000004 }
 
enum  InstanceManagerFlags {
  IM_USE16BIT = 0x0001, IM_VTFBESTFIT = 0x0002, IM_VTFBONEMATRIXLOOKUP = 0x0004, IM_USEBONEDUALQUATERNIONS = 0x0008,
  IM_USEONEWEIGHT = 0x0010, IM_FORCEONEWEIGHT = 0x0020, IM_USEALL = IM_USE16BIT|IM_VTFBESTFIT|IM_USEONEWEIGHT
}
 Flags for the Instance Manager when calculating ideal number of instances per batch. More...
 
enum  LayerBlendOperation { LBO_REPLACE, LBO_ADD, LBO_MODULATE, LBO_ALPHA_BLEND }
 List of valid texture blending operations, for use with TextureUnitState::setColourOperation. More...
 
enum  LayerBlendOperationEx {
  LBX_SOURCE1, LBX_SOURCE2, LBX_MODULATE, LBX_MODULATE_X2,
  LBX_MODULATE_X4, LBX_ADD, LBX_ADD_SIGNED, LBX_ADD_SMOOTH,
  LBX_SUBTRACT, LBX_BLEND_DIFFUSE_ALPHA, LBX_BLEND_TEXTURE_ALPHA, LBX_BLEND_CURRENT_ALPHA,
  LBX_BLEND_MANUAL, LBX_DOTPRODUCT, LBX_BLEND_DIFFUSE_COLOUR
}
 Expert list of valid texture blending operations, for use with TextureUnitState::setColourOperationEx and TextureUnitState::setAlphaOperation, and internally in the LayerBlendModeEx class. More...
 
enum  LayerBlendSource {
  LBS_CURRENT, LBS_TEXTURE, LBS_DIFFUSE, LBS_SPECULAR,
  LBS_MANUAL
}
 List of valid sources of values for blending operations used in TextureUnitState::setColourOperation and TextureUnitState::setAlphaOperation, and internally in the LayerBlendModeEx class. More...
 
enum  LayerBlendType { LBT_COLOUR, LBT_ALPHA }
 Type of texture blend mode. More...
 
enum  LoggingLevel { LL_LOW = 1, LL_NORMAL = 2, LL_BOREME = 3 }
 The level of detail to which the log will go into. More...
 
enum  LogMessageLevel { LML_TRIVIAL = 1, LML_NORMAL = 2, LML_CRITICAL = 3 }
 The importance of a logged message. More...
 
enum  MappingState { MS_UNMAPPED, MS_MAPPED, NUM_MAPPING_STATE }
 
enum  MemoryCategory {
  MEMCATEGORY_GENERAL = 0, MEMCATEGORY_GEOMETRY = 1, MEMCATEGORY_ANIMATION = 2, MEMCATEGORY_SCENE_CONTROL = 3,
  MEMCATEGORY_SCENE_OBJECTS = 4, MEMCATEGORY_RESOURCE = 5, MEMCATEGORY_SCRIPTING = 6, MEMCATEGORY_RENDERSYS = 7,
  MEMCATEGORY_COUNT = 8
}
 A set of categories that indicate the purpose of a chunk of memory being allocated. More...
 
enum  MeshChunkID {
  M_HEADER = 0x1000, M_MESH = 0x3000, M_SUBMESH = 0x4000, M_SUBMESH_TEXTURE_ALIAS = 0x4200,
  M_SUBMESH_LOD = 0x4300, M_SUBMESH_LOD_OPERATION = 0x4310, M_SUBMESH_INDEX_BUFFFER = 0x4320, M_SUBMESH_M_GEOMETRY = 0x4330,
  M_SUBMESH_M_GEOMETRY_VERTEX_DECLARATION = 0x4331, M_SUBMESH_M_GEOMETRY_VERTEX_BUFFER = 0x4332, M_SUBMESH_M_GEOMETRY_EXTERNAL_SOURCE = 0x4340, M_MESH_SKELETON_LINK = 0x6000,
  M_MESH_BOUNDS = 0x9000, M_SUBMESH_NAME_TABLE = 0xA000, M_SUBMESH_NAME_TABLE_ELEMENT = 0xA100, M_EDGE_LISTS = 0xB000,
  M_EDGE_LIST_LOD = 0xB100, M_EDGE_GROUP = 0xB110, M_POSES = 0xC000, M_POSE = 0xC100,
  M_POSE_VERTEX = 0xC111, M_ANIMATIONS = 0xD000, M_ANIMATION = 0xD100, M_ANIMATION_BASEINFO = 0xD105,
  M_ANIMATION_TRACK = 0xD110, M_ANIMATION_MORPH_KEYFRAME = 0xD111, M_ANIMATION_POSE_KEYFRAME = 0xD112, M_ANIMATION_POSE_REF = 0xD113,
  M_SUBMESH_OPERATION = 0x4010, M_SUBMESH_BONE_ASSIGNMENT = 0x4100, M_GEOMETRY = 0x5000, M_GEOMETRY_VERTEX_DECLARATION = 0x5100,
  M_GEOMETRY_VERTEX_ELEMENT = 0x5110, M_GEOMETRY_VERTEX_BUFFER = 0x5200, M_GEOMETRY_VERTEX_BUFFER_DATA = 0x5210, M_MESH_BONE_ASSIGNMENT = 0x7000,
  M_MESH_LOD_LEVEL = 0x8000, M_MESH_LOD_USAGE = 0x8100, M_MESH_LOD_MANUAL = 0x8110, M_MESH_LOD_GENERATED = 0x8120,
  M_TABLE_EXTREMES = 0xE000, M_GEOMETRY_NORMALS = 0x5100, M_GEOMETRY_COLOURS = 0x5200, M_GEOMETRY_TEXCOORDS = 0x5300
}
 Definition of the OGRE .mesh file format. More...
 
enum  MeshVersion { MESH_VERSION_LATEST, MESH_VERSION_2_1, MESH_VERSION_LEGACY }
 Mesh compatibility versions Naming convention: MeshSerializer_v2.1 R0 LEGACYV1. More...
 
enum  OperationType {
  OT_POINT_LIST = 1, OT_LINE_LIST = 2, OT_LINE_STRIP = 3, OT_TRIANGLE_LIST = 4,
  OT_TRIANGLE_STRIP = 5, OT_TRIANGLE_FAN = 6, OT_PATCH_1_CONTROL_POINT = 7, OT_PATCH_2_CONTROL_POINT = 8,
  OT_PATCH_3_CONTROL_POINT = 9, OT_PATCH_4_CONTROL_POINT = 10, OT_PATCH_5_CONTROL_POINT = 11, OT_PATCH_6_CONTROL_POINT = 12,
  OT_PATCH_7_CONTROL_POINT = 13, OT_PATCH_8_CONTROL_POINT = 14, OT_PATCH_9_CONTROL_POINT = 15, OT_PATCH_10_CONTROL_POINT = 16,
  OT_PATCH_11_CONTROL_POINT = 17, OT_PATCH_12_CONTROL_POINT = 18, OT_PATCH_13_CONTROL_POINT = 19, OT_PATCH_14_CONTROL_POINT = 20,
  OT_PATCH_15_CONTROL_POINT = 21, OT_PATCH_16_CONTROL_POINT = 22, OT_PATCH_17_CONTROL_POINT = 23, OT_PATCH_18_CONTROL_POINT = 24,
  OT_PATCH_19_CONTROL_POINT = 25, OT_PATCH_20_CONTROL_POINT = 26, OT_PATCH_21_CONTROL_POINT = 27, OT_PATCH_22_CONTROL_POINT = 28,
  OT_PATCH_23_CONTROL_POINT = 29, OT_PATCH_24_CONTROL_POINT = 30, OT_PATCH_25_CONTROL_POINT = 31, OT_PATCH_26_CONTROL_POINT = 32,
  OT_PATCH_27_CONTROL_POINT = 33, OT_PATCH_28_CONTROL_POINT = 34, OT_PATCH_29_CONTROL_POINT = 35, OT_PATCH_30_CONTROL_POINT = 36,
  OT_PATCH_31_CONTROL_POINT = 37, OT_PATCH_32_CONTROL_POINT = 38
}
 
enum  OrientationMode {
  OR_DEGREE_0 = 0, OR_DEGREE_90 = 1, OR_DEGREE_180 = 2, OR_DEGREE_270 = 3,
  OR_PORTRAIT = OR_DEGREE_0, OR_LANDSCAPERIGHT = OR_DEGREE_90, OR_LANDSCAPELEFT = OR_DEGREE_270
}
 Specifies orientation mode. More...
 
enum  ParameterType {
  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
}
 List of parameter types available. More...
 
enum  PbsBlendModes {
  PBSM_BLEND_NORMAL_NON_PREMUL, PBSM_BLEND_NORMAL_PREMUL, PBSM_BLEND_ADD, PBSM_BLEND_SUBTRACT,
  PBSM_BLEND_MULTIPLY, PBSM_BLEND_MULTIPLY2X, PBSM_BLEND_SCREEN, PBSM_BLEND_OVERLAY,
  PBSM_BLEND_LIGHTEN, PBSM_BLEND_DARKEN, PBSM_BLEND_GRAIN_EXTRACT, PBSM_BLEND_GRAIN_MERGE,
  PBSM_BLEND_DIFFERENCE, NUM_PBSM_BLEND_MODES
}
 
enum  PbsMobileBlendModes {
  PBSM_BLEND_NORMAL_NON_PREMUL, PBSM_BLEND_NORMAL_PREMUL, PBSM_BLEND_ADD, PBSM_BLEND_SUBTRACT,
  PBSM_BLEND_MULTIPLY, PBSM_BLEND_MULTIPLY2X, PBSM_BLEND_SCREEN, PBSM_BLEND_OVERLAY,
  PBSM_BLEND_LIGHTEN, PBSM_BLEND_DARKEN, PBSM_BLEND_GRAIN_EXTRACT, PBSM_BLEND_GRAIN_MERGE,
  PBSM_BLEND_DIFFERENCE, NUM_PBSM_BLEND_MODES
}
 
enum  PbsMobileTextureTypes {
  PBSM_DIFFUSE, PBSM_NORMAL, PBSM_SPECULAR, PBSM_ROUGHNESS,
  PBSM_DETAIL_WEIGHT, PBSM_DETAIL0, PBSM_DETAIL1, PBSM_DETAIL2,
  PBSM_DETAIL3, PBSM_DETAIL0_NM, PBSM_DETAIL1_NM, PBSM_DETAIL2_NM,
  PBSM_DETAIL3_NM, PBSM_REFLECTION, NUM_PBSM_SOURCES = PBSM_REFLECTION, NUM_PBSM_TEXTURE_TYPES
}
 
enum  PbsTextureTypes {
  PBSM_DIFFUSE, PBSM_NORMAL, PBSM_SPECULAR, PBSM_METALLIC = PBSM_SPECULAR,
  PBSM_ROUGHNESS, PBSM_DETAIL_WEIGHT, PBSM_DETAIL0, PBSM_DETAIL1,
  PBSM_DETAIL2, PBSM_DETAIL3, PBSM_DETAIL0_NM, PBSM_DETAIL1_NM,
  PBSM_DETAIL2_NM, PBSM_DETAIL3_NM, PBSM_EMISSIVE, PBSM_REFLECTION,
  NUM_PBSM_SOURCES = PBSM_REFLECTION, NUM_PBSM_TEXTURE_TYPES
}
 
enum  PixelComponentType {
  PCT_BYTE = 0, PCT_SHORT = 1, PCT_FLOAT16 = 2, PCT_FLOAT32 = 3,
  PCT_SINT = 4, PCT_UINT = 5, PCT_COUNT = 6
}
 Pixel component format. More...
 
enum  PixelFormat {
  PF_UNKNOWN = 0, PF_L8 = 1, PF_BYTE_L = PF_L8, PF_L16 = 2,
  PF_SHORT_L = PF_L16, PF_A8 = 3, PF_BYTE_A = PF_A8, PF_A4L4 = 4,
  PF_BYTE_LA = 5, PF_R5G6B5 = 6, PF_B5G6R5 = 7, PF_R3G3B2 = 31,
  PF_A4R4G4B4 = 8, PF_A1R5G5B5 = 9, PF_R8G8B8 = 10, PF_B8G8R8 = 11,
  PF_A8R8G8B8 = 12, PF_A8B8G8R8 = 13, PF_B8G8R8A8 = 14, PF_R8G8B8A8 = 28,
  PF_X8R8G8B8 = 26, PF_X8B8G8R8 = 27, PF_BYTE_RGB = PF_R8G8B8, PF_BYTE_BGR = PF_B8G8R8,
  PF_BYTE_BGRA = PF_B8G8R8A8, PF_BYTE_RGBA = PF_R8G8B8A8, PF_A2R10G10B10 = 15, PF_A2B10G10R10 = 16,
  PF_DXT1 = 17, PF_DXT2 = 18, PF_DXT3 = 19, PF_DXT4 = 20,
  PF_DXT5 = 21, PF_FLOAT16_R = 32, PF_FLOAT16_RGB = 22, PF_FLOAT16_RGBA = 23,
  PF_FLOAT32_R = 33, PF_FLOAT32_RGB = 24, PF_FLOAT32_RGBA = 25, PF_FLOAT16_GR = 35,
  PF_FLOAT32_GR = 36, PF_DEPTH_DEPRECATED = 29, PF_SHORT_RGBA = 30, PF_SHORT_GR = 34,
  PF_SHORT_RGB = 37, PF_PVRTC_RGB2 = 38, PF_PVRTC_RGBA2 = 39, PF_PVRTC_RGB4 = 40,
  PF_PVRTC_RGBA4 = 41, PF_PVRTC2_2BPP = 42, PF_PVRTC2_4BPP = 43, PF_R11G11B10_FLOAT = 44,
  PF_R8_UINT = 45, PF_R8G8_UINT = 46, PF_R8G8B8_UINT = 47, PF_R8G8B8A8_UINT = 48,
  PF_R16_UINT = 49, PF_R16G16_UINT = 50, PF_R16G16B16_UINT = 51, PF_R16G16B16A16_UINT = 52,
  PF_R32_UINT = 53, PF_R32G32_UINT = 54, PF_R32G32B32_UINT = 55, PF_R32G32B32A32_UINT = 56,
  PF_R8_SINT = 57, PF_R8G8_SINT = 58, PF_R8G8B8_SINT = 59, PF_R8G8B8A8_SINT = 60,
  PF_R16_SINT = 61, PF_R16G16_SINT = 62, PF_R16G16B16_SINT = 63, PF_R16G16B16A16_SINT = 64,
  PF_R32_SINT = 65, PF_R32G32_SINT = 66, PF_R32G32B32_SINT = 67, PF_R32G32B32A32_SINT = 68,
  PF_R9G9B9E5_SHAREDEXP = 69, PF_BC4_UNORM = 70, PF_BC4_SNORM = 71, PF_BC5_UNORM = 72,
  PF_BC5_SNORM = 73, PF_BC6H_UF16 = 74, PF_BC6H_SF16 = 75, PF_BC7_UNORM = 76,
  PF_BC7_UNORM_SRGB = 77, PF_R8 = 78, PF_RG8 = 79, PF_R8_SNORM = 80,
  PF_R8G8_SNORM = 81, PF_R8G8B8_SNORM = 82, PF_R8G8B8A8_SNORM = 83, PF_R16_SNORM = 84,
  PF_R16G16_SNORM = 85, PF_R16G16B16_SNORM = 86, PF_R16G16B16A16_SNORM = 87, PF_ETC1_RGB8 = 88,
  PF_ETC2_RGB8 = 89, PF_ETC2_RGBA8 = 90, PF_ETC2_RGB8A1 = 91, PF_ATC_RGB = 92,
  PF_ATC_RGBA_EXPLICIT_ALPHA = 93, PF_ATC_RGBA_INTERPOLATED_ALPHA = 94, PF_ASTC_RGBA_4X4_LDR = 95, PF_ASTC_RGBA_5X4_LDR = 96,
  PF_ASTC_RGBA_5X5_LDR = 97, PF_ASTC_RGBA_6X5_LDR = 98, PF_ASTC_RGBA_6X6_LDR = 99, PF_ASTC_RGBA_8X5_LDR = 100,
  PF_ASTC_RGBA_8X6_LDR = 101, PF_ASTC_RGBA_8X8_LDR = 102, PF_ASTC_RGBA_10X5_LDR = 103, PF_ASTC_RGBA_10X6_LDR = 104,
  PF_ASTC_RGBA_10X8_LDR = 105, PF_ASTC_RGBA_10X10_LDR = 106, PF_ASTC_RGBA_12X10_LDR = 107, PF_ASTC_RGBA_12X12_LDR = 108,
  PF_ASTC_SRGB8A8_4X4_LDR = 109, PF_ASTC_SRGB8A8_5X4_LDR = 110, PF_ASTC_SRGB8A8_5X5_LDR = 111, PF_ASTC_SRGB8A8_6X5_LDR = 112,
  PF_ASTC_SRGB8A8_6X6_LDR = 113, PF_ASTC_SRGB8A8_8X5_LDR = 114, PF_ASTC_SRGB8A8_8X6_LDR = 115, PF_ASTC_SRGB8A8_8X8_LDR = 116,
  PF_ASTC_SRGB8A8_10X5_LDR = 117, PF_ASTC_SRGB8A8_10X6_LDR = 118, PF_ASTC_SRGB8A8_10X8_LDR = 119, PF_ASTC_SRGB8A8_10X10_LDR = 120,
  PF_ASTC_SRGB8A8_12X10_LDR = 121, PF_ASTC_SRGB8A8_12X12_LDR = 122, PF_D24_UNORM_S8_UINT = 123, PF_D24_UNORM_X8 = 124,
  PF_X24_S8_UINT = 125, PF_D24_UNORM = 126, PF_D16_UNORM = 127, PF_D32_FLOAT = 128,
  PF_D32_FLOAT_X24_S8_UINT = 129, PF_D32_FLOAT_X24_X8 = 130, PF_X32_X24_S8_UINT = 131, PF_NULL = 132,
  PF_COUNT = 133
}
 The pixel format used for images, textures, and render surfaces. More...
 
enum  PixelFormatFlags {
  PFF_HASALPHA = 0x00000001, PFF_COMPRESSED = 0x00000002, PFF_FLOAT = 0x00000004, PFF_DEPTH = 0x00000008,
  PFF_NATIVEENDIAN = 0x00000010, PFF_LUMINANCE = 0x00000020, PFF_INTEGER = 0x00000040, PFF_SIGNED = 0x00000080
}
 Flags defining some on/off properties of pixel formats. More...
 
enum  PixelFormatGpu {
  PFG_UNKNOWN, PFG_NULL, PFG_RGBA32_FLOAT, PFG_RGBA32_UINT,
  PFG_RGBA32_SINT, PFG_RGB32_FLOAT, PFG_RGB32_UINT, PFG_RGB32_SINT,
  PFG_RGBA16_FLOAT, PFG_RGBA16_UNORM, PFG_RGBA16_UINT, PFG_RGBA16_SNORM,
  PFG_RGBA16_SINT, PFG_RG32_FLOAT, PFG_RG32_UINT, PFG_RG32_SINT,
  PFG_D32_FLOAT_S8X24_UINT, PFG_R10G10B10A2_UNORM, PFG_R10G10B10A2_UINT, PFG_R11G11B10_FLOAT,
  PFG_RGBA8_UNORM, PFG_RGBA8_UNORM_SRGB, PFG_RGBA8_UINT, PFG_RGBA8_SNORM,
  PFG_RGBA8_SINT, PFG_RG16_FLOAT, PFG_RG16_UNORM, PFG_RG16_UINT,
  PFG_RG16_SNORM, PFG_RG16_SINT, PFG_D32_FLOAT, PFG_R32_FLOAT,
  PFG_R32_UINT, PFG_R32_SINT, PFG_D24_UNORM, PFG_D24_UNORM_S8_UINT,
  PFG_RG8_UNORM, PFG_RG8_UINT, PFG_RG8_SNORM, PFG_RG8_SINT,
  PFG_R16_FLOAT, PFG_D16_UNORM, PFG_R16_UNORM, PFG_R16_UINT,
  PFG_R16_SNORM, PFG_R16_SINT, PFG_R8_UNORM, PFG_R8_UINT,
  PFG_R8_SNORM, PFG_R8_SINT, PFG_A8_UNORM, PFG_R1_UNORM,
  PFG_R9G9B9E5_SHAREDEXP, PFG_R8G8_B8G8_UNORM, PFG_G8R8_G8B8_UNORM, PFG_BC1_UNORM,
  PFG_BC1_UNORM_SRGB, PFG_BC2_UNORM, PFG_BC2_UNORM_SRGB, PFG_BC3_UNORM,
  PFG_BC3_UNORM_SRGB, PFG_BC4_UNORM, PFG_BC4_SNORM, PFG_BC5_UNORM,
  PFG_BC5_SNORM, PFG_B5G6R5_UNORM, PFG_B5G5R5A1_UNORM, PFG_BGRA8_UNORM,
  PFG_BGRX8_UNORM, PFG_R10G10B10_XR_BIAS_A2_UNORM, PFG_BGRA8_UNORM_SRGB, PFG_BGRX8_UNORM_SRGB,
  PFG_BC6H_UF16, PFG_BC6H_SF16, PFG_BC7_UNORM, PFG_BC7_UNORM_SRGB,
  PFG_AYUV, PFG_Y410, PFG_Y416, PFG_NV12,
  PFG_P010, PFG_P016, PFG_420_OPAQUE, PFG_YUY2,
  PFG_Y210, PFG_Y216, PFG_NV11, PFG_AI44,
  PFG_IA44, PFG_P8, PFG_A8P8, PFG_B4G4R4A4_UNORM,
  PFG_P208, PFG_V208, PFG_V408, PFG_RGB8_UNORM,
  PFG_RGB8_UNORM_SRGB, PFG_BGR8_UNORM, PFG_BGR8_UNORM_SRGB, PFG_RGB16_UNORM,
  PFG_PVRTC_RGB2, PFG_PVRTC_RGB2_SRGB, PFG_PVRTC_RGBA2, PFG_PVRTC_RGBA2_SRGB,
  PFG_PVRTC_RGB4, PFG_PVRTC_RGB4_SRGB, PFG_PVRTC_RGBA4, PFG_PVRTC_RGBA4_SRGB,
  PFG_PVRTC2_2BPP, PFG_PVRTC2_2BPP_SRGB, PFG_PVRTC2_4BPP, PFG_PVRTC2_4BPP_SRGB,
  PFG_ETC1_RGB8_UNORM, PFG_ETC2_RGB8_UNORM, PFG_ETC2_RGB8_UNORM_SRGB, PFG_ETC2_RGBA8_UNORM,
  PFG_ETC2_RGBA8_UNORM_SRGB, PFG_ETC2_RGB8A1_UNORM, PFG_ETC2_RGB8A1_UNORM_SRGB, PFG_EAC_R11_UNORM,
  PFG_EAC_R11_SNORM, PFG_EAC_R11G11_UNORM, PFG_EAC_R11G11_SNORM, PFG_ATC_RGB,
  PFG_ATC_RGBA_EXPLICIT_ALPHA, PFG_ATC_RGBA_INTERPOLATED_ALPHA, PFG_ASTC_RGBA_UNORM_4X4_LDR, PFG_ASTC_RGBA_UNORM_5X4_LDR,
  PFG_ASTC_RGBA_UNORM_5X5_LDR, PFG_ASTC_RGBA_UNORM_6X5_LDR, PFG_ASTC_RGBA_UNORM_6X6_LDR, PFG_ASTC_RGBA_UNORM_8X5_LDR,
  PFG_ASTC_RGBA_UNORM_8X6_LDR, PFG_ASTC_RGBA_UNORM_8X8_LDR, PFG_ASTC_RGBA_UNORM_10X5_LDR, PFG_ASTC_RGBA_UNORM_10X6_LDR,
  PFG_ASTC_RGBA_UNORM_10X8_LDR, PFG_ASTC_RGBA_UNORM_10X10_LDR, PFG_ASTC_RGBA_UNORM_12X10_LDR, PFG_ASTC_RGBA_UNORM_12X12_LDR,
  PFG_ASTC_RGBA_UNORM_4X4_sRGB, PFG_ASTC_RGBA_UNORM_5X4_sRGB, PFG_ASTC_RGBA_UNORM_5X5_sRGB, PFG_ASTC_RGBA_UNORM_6X5_sRGB,
  PFG_ASTC_RGBA_UNORM_6X6_sRGB, PFG_ASTC_RGBA_UNORM_8X5_sRGB, PFG_ASTC_RGBA_UNORM_8X6_sRGB, PFG_ASTC_RGBA_UNORM_8X8_sRGB,
  PFG_ASTC_RGBA_UNORM_10X5_sRGB, PFG_ASTC_RGBA_UNORM_10X6_sRGB, PFG_ASTC_RGBA_UNORM_10X8_sRGB, PFG_ASTC_RGBA_UNORM_10X10_sRGB,
  PFG_ASTC_RGBA_UNORM_12X10_sRGB, PFG_ASTC_RGBA_UNORM_12X12_sRGB, PFG_COUNT
}
 The pixel format used for images, textures, and render surfaces. More...
 
enum  PolygonMode { PM_POINTS = 1, PM_WIREFRAME = 2, PM_SOLID = 3 }
 The polygon mode to use when rasterising. More...
 
enum  PrePassMode { PrePassNone, PrePassCreate, PrePassUse }
 
enum  ProfileGroupMask {
  OGREPROF_USER_DEFAULT = 0x00000001, OGREPROF_ALL = 0xFF000000, OGREPROF_GENERAL = 0x80000000, OGREPROF_CULLING = 0x40000000,
  OGREPROF_RENDERING = 0x20000000
}
 List of reserved profiling masks. More...
 
enum  ProjectionType { PT_ORTHOGRAPHIC, PT_PERSPECTIVE }
 Specifies perspective (realistic) or orthographic (architectural) projection. More...
 
enum  PropertyType {
  PROP_SHORT = 0, PROP_UNSIGNED_SHORT = 1, PROP_INT = 2, PROP_UNSIGNED_INT = 3,
  PROP_LONG = 4, PROP_UNSIGNED_LONG = 5, PROP_REAL = 6, PROP_STRING = 7,
  PROP_VECTOR2 = 8, PROP_VECTOR3 = 9, PROP_VECTOR4 = 10, PROP_COLOUR = 11,
  PROP_BOOL = 12, PROP_QUATERNION = 13, PROP_MATRIX3 = 14, PROP_MATRIX4 = 15,
  PROP_UNKNOWN = 999
}
 The type of a property. More...
 
enum  SceneBlendFactor {
  SBF_ONE, SBF_ZERO, SBF_DEST_COLOUR, SBF_SOURCE_COLOUR,
  SBF_ONE_MINUS_DEST_COLOUR, SBF_ONE_MINUS_SOURCE_COLOUR, SBF_DEST_ALPHA, SBF_SOURCE_ALPHA,
  SBF_ONE_MINUS_DEST_ALPHA, SBF_ONE_MINUS_SOURCE_ALPHA
}
 Blending factors for manually blending objects with the scene. More...
 
enum  SceneBlendOperation {
  SBO_ADD, SBO_SUBTRACT, SBO_REVERSE_SUBTRACT, SBO_MIN,
  SBO_MAX
}
 Blending operations controls how objects are blended into the scene. More...
 
enum  SceneBlendType {
  SBT_TRANSPARENT_ALPHA, SBT_TRANSPARENT_COLOUR, SBT_ADD, SBT_MODULATE,
  SBT_REPLACE
}
 Types of blending that you can specify between an object and the existing contents of the scene. More...
 
enum  SceneMemoryMgrTypes { SCENE_DYNAMIC = 0, SCENE_STATIC, NUM_SCENE_MEMORY_MANAGER_TYPES }
 The types of NodeMemoryManager & ObjectMemoryManagers. More...
 
enum  SceneType {
  ST_GENERIC = 1, ST_EXTERIOR_CLOSE = 2, ST_EXTERIOR_FAR = 4, ST_EXTERIOR_REAL_FAR = 8,
  ST_INTERIOR = 16
}
 Classification of a scene to allow a decision of what type of SceenManager to provide back to the application. More...
 
enum  ShadeOptions { SO_FLAT, SO_GOURAUD, SO_PHONG }
 Light shading modes. More...
 
enum  ShaderType {
  VertexShader, PixelShader, GeometryShader, HullShader,
  DomainShader, NumShaderTypes
}
 
enum  ShadowMapTechniques { SHADOWMAP_UNIFORM, SHADOWMAP_PLANEOPTIMAL, SHADOWMAP_FOCUSED, SHADOWMAP_PSSM }
 
enum  ShadowNodeRecalculation { SHADOW_NODE_RECALCULATE, SHADOW_NODE_REUSE, SHADOW_NODE_FIRST_ONLY, SHADOW_NODE_CASTER_PASS }
 
enum  SharedPtrFreeMethod { SPFM_DELETE, SPFM_DELETE_T, SPFM_FREE, SPFM_NONE }
 The method to use to free memory on destruction. More...
 
enum  SkeletonChunkID {
  SKELETON_HEADER = 0x1000, SKELETON_BLENDMODE = 0x1010, SKELETON_BONE = 0x2000, SKELETON_BONE_PARENT = 0x3000,
  SKELETON_ANIMATION = 0x4000, SKELETON_ANIMATION_BASEINFO = 0x4010, SKELETON_ANIMATION_TRACK = 0x4100, SKELETON_ANIMATION_TRACK_KEYFRAME = 0x4110,
  SKELETON_ANIMATION_LINK = 0x5000
}
 Definition of the OGRE .skeleton file format. More...
 
enum  SortMode { SM_DIRECTION, SM_DISTANCE }
 Sort mode for billboard-set and particle-system. More...
 
enum  StagingStallType { STALL_NONE, STALL_PARTIAL, STALL_FULL, NUM_STALL_TYPES }
 
enum  StencilOperation {
  SOP_KEEP, SOP_ZERO, SOP_REPLACE, SOP_INCREMENT,
  SOP_DECREMENT, SOP_INCREMENT_WRAP, SOP_DECREMENT_WRAP, SOP_INVERT
}
 Enum describing the various actions which can be taken on the stencil buffer. More...
 
enum  StereoModeType { SMT_NONE = 0x0, SMT_FRAME_SEQUENTIAL }
 Defines the stereo mode types. More...
 
enum  TerrainAutoUpdateLodStrategy { NONE = 0, BY_DISTANCE = 1 }
 
enum  TerrainLayerSamplerSemantic { TLSS_ALBEDO = 0, TLSS_NORMAL = 1, TLSS_HEIGHT = 2, TLSS_SPECULAR = 3 }
 Enumeration of types of data that can be read from textures that are specific to a given layer. More...
 
enum  TexCoordCalcMethod {
  TEXCALC_NONE, TEXCALC_ENVIRONMENT_MAP, TEXCALC_ENVIRONMENT_MAP_PLANAR, TEXCALC_ENVIRONMENT_MAP_REFLECTION,
  TEXCALC_ENVIRONMENT_MAP_NORMAL, TEXCALC_PROJECTIVE_TEXTURE
}
 Enum describing the ways to generate texture coordinates. More...
 
enum  TextureAddressingMode {
  TAM_WRAP, TAM_MIRROR, TAM_CLAMP, TAM_BORDER,
  TAM_UNKNOWN = 99
}
 
enum  TextureFilterOptions { TFO_NONE, TFO_BILINEAR, TFO_TRILINEAR, TFO_ANISOTROPIC }
 High-level filtering options providing shortcuts to settings the minification, magnification and mip filters. More...
 
enum  TextureMipmap { MIP_UNLIMITED = 0x7FFFFFFF, MIP_DEFAULT = -1 }
 Enum identifying special mipmap numbers. More...
 
enum  TextureType {
  TEX_TYPE_1D = 1, TEX_TYPE_2D = 2, TEX_TYPE_3D = 3, TEX_TYPE_CUBE_MAP = 4,
  TEX_TYPE_2D_ARRAY = 5, TEX_TYPE_2D_RECT = 6
}
 Enum identifying the texture type. More...
 
enum  TextureUsage {
  TU_STATIC = v1::HardwareBuffer::HBU_STATIC, TU_DYNAMIC = v1::HardwareBuffer::HBU_DYNAMIC, TU_WRITE_ONLY = v1::HardwareBuffer::HBU_WRITE_ONLY, TU_STATIC_WRITE_ONLY = v1::HardwareBuffer::HBU_STATIC_WRITE_ONLY,
  TU_DYNAMIC_WRITE_ONLY = v1::HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY, TU_DYNAMIC_WRITE_ONLY_DISCARDABLE = v1::HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE, TU_AUTOMIPMAP = 0x10, TU_RENDERTARGET = 0x20,
  TU_NOT_SRV = 0x40, TU_UAV = 0x80, TU_UAV_NOT_SRV = TU_UAV | TU_NOT_SRV, TU_AUTOMIPMAP_AUTO = 0x100,
  TU_DEFAULT = TU_AUTOMIPMAP | TU_STATIC_WRITE_ONLY, TU_NOT_TEXTURE = TU_NOT_SRV, TU_UAV_NOT_TEXTURE = TU_UAV | TU_NOT_SRV
}
 Enum identifying the texture usage. More...
 
enum  TrackVertexColourEnum {
  TVC_NONE = 0x0, TVC_AMBIENT = 0x1, TVC_DIFFUSE = 0x2, TVC_SPECULAR = 0x4,
  TVC_EMISSIVE = 0x8
}
 
enum  UnlitBlendModes {
  UNLIT_BLEND_NORMAL_NON_PREMUL, UNLIT_BLEND_NORMAL_PREMUL, UNLIT_BLEND_ADD, UNLIT_BLEND_SUBTRACT,
  UNLIT_BLEND_MULTIPLY, UNLIT_BLEND_MULTIPLY2X, UNLIT_BLEND_SCREEN, UNLIT_BLEND_OVERLAY,
  UNLIT_BLEND_LIGHTEN, UNLIT_BLEND_DARKEN, UNLIT_BLEND_GRAIN_EXTRACT, UNLIT_BLEND_GRAIN_MERGE,
  UNLIT_BLEND_DIFFERENCE, NUM_UNLIT_BLEND_MODES
}
 
enum  UnlitTextureTypes { NUM_UNLIT_TEXTURE_TYPES = 16 }
 
enum  UnmapOptions { UO_UNMAP_ALL, UO_KEEP_PERSISTENT }
 
enum  VertexElementSemantic {
  VES_POSITION = 1, VES_BLEND_WEIGHTS = 2, VES_BLEND_INDICES = 3, VES_NORMAL = 4,
  VES_DIFFUSE = 5, VES_SPECULAR = 6, VES_TEXTURE_COORDINATES = 7, VES_BINORMAL = 8,
  VES_TANGENT = 9, VES_BLEND_WEIGHTS2 = 10, VES_BLEND_INDICES2 = 11, VES_COUNT = 11
}
 Vertex element semantics, used to identify the meaning of vertex buffer contents. More...
 
enum  VertexElementType {
  VET_FLOAT1 = 0, VET_FLOAT2 = 1, VET_FLOAT3 = 2, VET_FLOAT4 = 3,
  VET_COLOUR = 4, VET_SHORT2 = 6, VET_SHORT4 = 8, VET_UBYTE4 = 9,
  VET_COLOUR_ARGB = 10, VET_COLOUR_ABGR = 11, VET_DOUBLE1 = 12, VET_DOUBLE2 = 13,
  VET_DOUBLE3 = 14, VET_DOUBLE4 = 15, VET_USHORT1_DEPRECATED = 16, VET_USHORT2 = 17,
  VET_USHORT3_DEPRECATED = 18, VET_USHORT4 = 19, VET_INT1 = 20, VET_INT2 = 21,
  VET_INT3 = 22, VET_INT4 = 23, VET_UINT1 = 24, VET_UINT2 = 25,
  VET_UINT3 = 26, VET_UINT4 = 27, VET_BYTE4 = 28, VET_BYTE4_SNORM = 29,
  VET_UBYTE4_NORM = 30, VET_SHORT2_SNORM = 31, VET_SHORT4_SNORM = 32, VET_USHORT2_NORM = 33,
  VET_USHORT4_NORM = 34, VET_HALF2 = 35, VET_HALF4 = 36
}
 Vertex element type, used to identify the base types of the vertex contents Note that all attributes must be aligned to 4 bytes, that's why VET_SHORT1 (among others) doesn't exist. More...
 
enum  VertexPass { VpNormal, VpShadow, NumVertexPass }
 
enum  WaveformType {
  WFT_SINE, WFT_TRIANGLE, WFT_SQUARE, WFT_SAWTOOTH,
  WFT_INVERSE_SAWTOOTH, WFT_PWM
}
 Enumerates the wave types usable with the Ogre engine. More...
 

Functions

template<class T >
static FORCEINLINE void advanceRawPointer (const T *&ptr, ptrdiff_t offset)
 Advance the pointer with raw offset. More...
 
template<class T >
static FORCEINLINE void advanceRawPointer (T *&ptr, ptrdiff_t offset)
 
size_t alignToNextMultiple (size_t offset, size_t alignment)
 Aligns the input 'offset' to the next multiple of 'alignment'. More...
 
size_t alignToPreviousMult (size_t offset, size_t alignment)
 This function has been purposedly not been named 'alignToPrevMultiple' to avoid easily confusing it with alignToNextMultiple. More...
 
template<typename ValueType >
ValueType any_cast (const Any &operand)
 
template<typename ValueType >
ValueType * any_cast (Any *operand)
 
template<typename ValueType >
const ValueType * any_cast (const Any *operand)
 
void cleanerArrayAabb (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
void cleanerArrayQuaternion (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
void cleanerArrayVector3Unit (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
void cleanerArrayVector3Zero (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
void cleanerFlat (char *dstPtr, size_t indexDst, char *srcPtr, size_t indexSrc, size_t numSlots, size_t numFreeSlots, size_t elementsMemSize)
 
template<typename T >
T * constructN (T *basePtr, size_t count)
 Utility function for constructing an array of objects with placement new, without using new[] (which allocates an undocumented amount of extra memory and so isn't appropriate for custom allocators). More...
 
template<typename T >
void deletePtr (T *ptr)
 Function which invokes OGRE_DELETE on a given pointer. More...
 
template<class T , class U >
SharedPtr< T > dynamic_pointer_cast (SharedPtr< U > const &r)
 
template<typename T >
T::iterator efficientVectorRemove (T &container, typename T::iterator &iterator)
 Used for efficient removal in std::vector and std::deque (like an std::list) However it assumes the order of elements in container is not important or something external to the container holds the index of an element in it (but still should be kept deterministically across machines) Basically it swaps the iterator with the last iterator, and pops back Returns the next iterator. More...
 
uint32 FastHash (const char *data, int len, uint32 hashSoFar=0)
 Fast general hashing algorithm. More...
 
int _OgreExport 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...
 
GL3PlusSupportgetGLSupport ()
 
template<typename T >
uint32 HashCombine (uint32 hashSoFar, const T &data)
 Combine hashes with same style as boost::hash_combine. More...
 
bool IsWindows10OrGreater ()
 
bool IsWindows10RS3OrGreater ()
 
bool IsWindows8OrGreater ()
 
bool IsWindows8Point1OrGreater ()
 
bool IsWorkingUnderNsight ()
 
String logObjectInfo (const String &msg, const GLuint obj)
 If there is a message in GL info log then post it in the Ogre Log. More...
 
const float & max (const float &a, const float &b)
 
const double & max (const double &a, const double &b)
 
const float & min (const float &a, const float &b)
 
const double & min (const double &a, const double &b)
 
void ogreGlObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label)
 
void ogreGlObjectLabel (GLenum identifier, GLuint name, const String &label)
 
template<typename T , typename T2 , typename P >
bool operator!= (STLAllocator< T, P > const &, STLAllocator< T2, P > const &)
 determine equality, can memory from another allocator be released by this allocator, (ISO C++) More...
 
template<typename T , typename P , typename OtherAllocator >
bool operator!= (STLAllocator< T, P > const &, OtherAllocator const &)
 determine equality, can memory from another allocator be released by this allocator, (ISO C++) More...
 
template<class T >
bool operator!= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T , class U >
bool operator!= (SharedPtr< T > const &a, SharedPtr< U > const &b)
 
Vector4 operator* (const Vector4 &v, const Matrix4 &mat)
 
Radian operator* (Real a, const Radian &b)
 
Degree operator* (Real a, const Degree &b)
 
Radian operator/ (Real a, const Radian &b)
 
Degree operator/ (Real a, const Degree &b)
 
bool operator< (const VertexBoneAssignment &_l, uint32 _vertexIndex)
 
bool operator< (uint32 _vertexIndex, const VertexBoneAssignment &_r)
 
template<class T >
bool operator< (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T , class U >
bool operator< (SharedPtr< T > const &a, SharedPtr< U > const &b)
 
template<class T >
bool operator<= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<typename T , typename T2 , typename P >
bool operator== (STLAllocator< T, P > const &, STLAllocator< T2, P > const &)
 determine equality, can memory from another allocator be released by this allocator, (ISO C++) More...
 
template<typename T , typename P , typename OtherAllocator >
bool operator== (STLAllocator< T, P > const &, OtherAllocator const &)
 determine equality, can memory from another allocator be released by this allocator, (ISO C++) More...
 
template<class T >
bool operator== (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T , class U >
bool operator== (SharedPtr< T > const &a, SharedPtr< U > const &b)
 
template<class T >
bool operator> (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
template<class T >
bool operator>= (const ComPtr< T > &a, const ComPtr< T > &b) ASSUME_NOEXCEPT
 
bool OrderCacheByHash (const HlmsCache *_left, const HlmsCache *_right)
 
bool OrderConstBufferPoolUserByPoolThenSlot (const ConstBufferPoolUser *_l, const ConstBufferPoolUser *_r)
 
bool OrderParamVecByKey (const std::pair< IdString, String > &_left, const std::pair< IdString, String > &_right)
 
bool OrderPropertyByIdString (const HlmsProperty &_left, const HlmsProperty &_right)
 
bool OrderSkeletonInstanceByMemory (const SkeletonInstance *_left, const SkeletonInstance *_right)
 
template<class T >
static FORCEINLINE const T * rawOffsetPointer (const T *ptr, ptrdiff_t offset)
 Returns raw offseted of the given pointer. More...
 
template<class T >
static FORCEINLINE T * rawOffsetPointer (T *ptr, ptrdiff_t offset)
 
template<class C >
void removeDuplicates (C &c)
 
template<class T , class U >
SharedPtr< T > static_pointer_cast (SharedPtr< U > const &r)
 
template<class T >
void swap (ComPtr< T > &a, ComPtr< T > &b)
 
String translateWGLError ()
 

Variables

PixelFormatDescription _pixelFormats [PF_COUNT]
 Pixel format database. More...
 
const String BLANKSTRING
 Constant blank string, useful for returning by ref where local does not exist. More...
 
const FilterKernel c_filterKernels [3]
 
const FilterSeparableKernel c_filterSeparableKernels [1]
 
static const size_t c_ForwardPlusNumFloat4PerCubemapProbe = 8u
 
static const size_t c_ForwardPlusNumFloat4PerDecal = 4u
 
static const size_t c_ForwardPlusNumFloat4PerLight = 6u
 
const char * CompositorPassTypeEnumNames [PASS_CUSTOM+1u]
 
ImageDownsampler2D downscale2x_A8
 
ImageDownsamplerCube downscale2x_A8_cube
 
ImageDownsampler2D downscale2x_Float32_A
 
ImageDownsamplerCube downscale2x_Float32_A_cube
 
ImageDownsampler2D downscale2x_Float32_X
 
ImageDownsamplerCube downscale2x_Float32_X_cube
 
ImageDownsampler2D downscale2x_Float32_XA
 
ImageDownsamplerCube downscale2x_Float32_XA_cube
 
ImageDownsampler2D downscale2x_Float32_XX
 
ImageDownsamplerCube downscale2x_Float32_XX_cube
 
ImageDownsampler2D downscale2x_Float32_XXX
 
ImageDownsamplerCube downscale2x_Float32_XXX_cube
 
ImageDownsampler2D downscale2x_Float32_XXXA
 
ImageDownsamplerCube downscale2x_Float32_XXXA_cube
 
ImageDownsampler2D downscale2x_Signed_A8
 
ImageDownsamplerCube downscale2x_Signed_A8_cube
 
ImageDownsampler2D downscale2x_Signed_X8
 
ImageDownsamplerCube downscale2x_Signed_X8_cube
 
ImageDownsampler2D downscale2x_Signed_XA88
 
ImageDownsamplerCube downscale2x_Signed_XA88_cube
 
ImageDownsampler2D downscale2x_Signed_XX88
 
ImageDownsamplerCube downscale2x_Signed_XX88_cube
 
ImageDownsampler2D downscale2x_Signed_XXX888
 
ImageDownsamplerCube downscale2x_Signed_XXX888_cube
 
ImageDownsampler2D downscale2x_Signed_XXXA8888
 
ImageDownsamplerCube downscale2x_Signed_XXXA8888_cube
 
ImageDownsampler2D downscale2x_sRGB_A8
 
ImageDownsamplerCube downscale2x_sRGB_A8_cube
 
ImageDownsampler2D downscale2x_sRGB_AX88
 
ImageDownsamplerCube downscale2x_sRGB_AX88_cube
 
ImageDownsampler2D downscale2x_sRGB_AXXX8888
 
ImageDownsamplerCube downscale2x_sRGB_AXXX8888_cube
 
ImageDownsampler2D downscale2x_sRGB_X8
 
ImageDownsamplerCube downscale2x_sRGB_X8_cube
 
ImageDownsampler2D downscale2x_sRGB_XA88
 
ImageDownsamplerCube downscale2x_sRGB_XA88_cube
 
ImageDownsampler2D downscale2x_sRGB_XX88
 
ImageDownsamplerCube downscale2x_sRGB_XX88_cube
 
ImageDownsampler2D downscale2x_sRGB_XXX888
 
ImageDownsamplerCube downscale2x_sRGB_XXX888_cube
 
ImageDownsampler2D downscale2x_sRGB_XXXA8888
 
ImageDownsamplerCube downscale2x_sRGB_XXXA8888_cube
 
ImageDownsampler2D downscale2x_X8
 
ImageDownsamplerCube downscale2x_X8_cube
 
ImageDownsampler2D downscale2x_XA88
 
ImageDownsamplerCube downscale2x_XA88_cube
 
ImageDownsampler2D downscale2x_XX88
 
ImageDownsamplerCube downscale2x_XX88_cube
 
ImageDownsampler2D downscale2x_XXX888
 
ImageDownsamplerCube downscale2x_XXX888_cube
 
ImageDownsampler2D downscale2x_XXXA8888
 
ImageDownsamplerCube downscale2x_XXXA8888_cube
 
static unsigned int modeCount = 0
 
static unsigned int modeCount = 0
 
ImageBlur2D separableBlur_A8
 
ImageBlur2D separableBlur_Float32_A
 
ImageBlur2D separableBlur_Float32_X
 
ImageBlur2D separableBlur_Float32_XA
 
ImageBlur2D separableBlur_Float32_XX
 
ImageBlur2D separableBlur_Float32_XXX
 
ImageBlur2D separableBlur_Float32_XXXA
 
ImageBlur2D separableBlur_Signed_A8
 
ImageBlur2D separableBlur_Signed_X8
 
ImageBlur2D separableBlur_Signed_XA88
 
ImageBlur2D separableBlur_Signed_XX88
 
ImageBlur2D separableBlur_Signed_XXX888
 
ImageBlur2D separableBlur_Signed_XXXA8888
 
ImageBlur2D separableBlur_sRGB_A8
 
ImageBlur2D separableBlur_sRGB_AX88
 
ImageBlur2D separableBlur_sRGB_AXXX8888
 
ImageBlur2D separableBlur_sRGB_X8
 
ImageBlur2D separableBlur_sRGB_XA88
 
ImageBlur2D separableBlur_sRGB_XX88
 
ImageBlur2D separableBlur_sRGB_XXX888
 
ImageBlur2D separableBlur_sRGB_XXXA8888
 
ImageBlur2D separableBlur_X8
 
ImageBlur2D separableBlur_XA88
 
ImageBlur2D separableBlur_XX88
 
ImageBlur2D separableBlur_XXX888
 
ImageBlur2D separableBlur_XXXA8888
 
PFNWGLCREATECONTEXTATTRIBSARBPROC wglCreateContextAttribsARB
 

Detailed Description


This source file is part of OGRE (Object-oriented Graphics Rendering Engine) For the latest info, see http://www.ogre3d.org/

Copyright (c) 2000-2014 Torus Knot Software Ltd

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN

THE SOFTWARE.

Typedef Documentation

◆ _StringBase

typedef std::string Ogre::_StringBase

◆ _StringStreamBase

typedef std::basic_stringstream<char,std::char_traits<char>,std::allocator<char> > Ogre::_StringStreamBase

◆ AbstractNodeAlloc

◆ ActiveAnimationsVec

◆ AnimableAlloc

◆ AnimableValuePtr

◆ AnimationAlloc

◆ AnimationAllocatedObject

◆ AnimationAllocPolicy

◆ ArchiveAlloc

◆ ArrayInt

◆ ArrayMaskI

typedef bool Ogre::ArrayMaskI

◆ ArrayMaskR

typedef bool Ogre::ArrayMaskR

◆ ArrayRadian

◆ ArrayReal

◆ AsyncTicketPtr

◆ BatchedGeometryAlloc

◆ BonesPerSkeletonInstance

◆ BoneVec

typedef vector<Bone*>::type Ogre::BoneVec

◆ BufferAlloc

◆ BufferPackedAlloc

◆ BufferPackedSet

◆ BufferPackedVec

◆ CodecAlloc

◆ CompositorInstAlloc

◆ CompositorNodeVec

typedef vector<CompositorNode*>::type Ogre::CompositorNodeVec

◆ CompositorPassVec

typedef vector<CompositorPass*>::type Ogre::CompositorPassVec

◆ CompositorShadowNodeVec

◆ CompositorWorkspaceListenerVec

◆ ConfigAlloc

◆ ControllerAlloc

◆ CubemapProbeVec

typedef vector<CubemapProbe*>::type Ogre::CubemapProbeVec

◆ D3D11HLSLProgramPtr

◆ D3D9GpuProgramPtr

◆ D3D9HLSLProgramPtr

◆ D3D9TexturePtr

◆ DataStreamPtr

◆ DebugGeomAlloc

◆ DynLibAlloc

◆ EdgeDataAlloc

◆ FactoryAlloc

◆ FileSystemLayerAlloc

◆ FontPtr

◆ FrustumVec

typedef vector<Frustum*>::type Ogre::FrustumVec

◆ FXAlloc

◆ GeneralAllocatedObject

◆ GeneralAllocPolicy

◆ GeometryAllocatedObject

◆ GeometryAllocPolicy

◆ GL3PlusTexturePtrList

typedef vector<GL3PlusTexturePtr>::type Ogre::GL3PlusTexturePtrList

◆ GLAtomicCounterReferenceIterator

typedef GLAtomicCounterReferenceList::iterator Ogre::GLAtomicCounterReferenceIterator

◆ GLAtomicCounterReferenceList

◆ GLCounterBufferIterator

typedef GLCounterBufferList::iterator Ogre::GLCounterBufferIterator

◆ GLCounterBufferList

◆ GLES2TexturePtr

◆ GLSLShaderPtr

◆ GLUniformBufferIterator

typedef GLUniformBufferList::iterator Ogre::GLUniformBufferIterator

◆ GLUniformBufferList

◆ GLUniformReferenceIterator

typedef GLUniformReferenceList::iterator Ogre::GLUniformReferenceIterator

◆ GLUniformReferenceList

◆ GpuLogicalBufferStructPtr

◆ GpuNamedConstantsPtr

◆ GpuParamsAlloc

◆ GpuProgramParametersSharedPtr

◆ GpuProgramPtr

◆ GpuSharedParametersPtr

◆ HighLevelGpuProgramPtr

◆ HlmsAlloc

◆ IdStringVec

◆ IdType

Big projects with lots, lots of units for very long periods of time (MMORPGs?) may want to define this to 64-bit.

◆ ImageAlloc

◆ IndexDataAlloc

◆ int16

typedef short Ogre::int16

◆ int32

typedef int Ogre::int32

◆ int64

typedef long long Ogre::int64

◆ int8

typedef signed char Ogre::int8

◆ KeyFrameRigVec

typedef vector<KeyFrameRig>::type Ogre::KeyFrameRigVec

◆ KnownKeyFramesVec

typedef vector<KeyFrameRigVec::const_iterator>::type Ogre::KnownKeyFramesVec

◆ LodAlloc

◆ LodCollapseCostPtr

◆ LodCollapserPtr

◆ LodDataPtr

◆ LodInputProviderPtr

◆ LodOutputProviderPtr

◆ LodProfile

typedef vector<ProfiledEdge>::type Ogre::LodProfile

◆ LogAlloc

◆ MaterialPtr

◆ Mathlib

◆ MemoryDataStreamPtr

◆ MemoryPoolVec

typedef vector<char*>::type Ogre::MemoryPoolVec

◆ MeshLodAlloc

◆ MeshPtr

◆ MetalDiscardBufferVec

◆ MicroCode

typedef vector<byte>::type Ogre::MicroCode

◆ MovableAlloc

◆ NodeAlloc

◆ OverlayAlloc

◆ OverlayUnlitDatablock

◆ PageAlloc

◆ PageID

Identifier for a page.

◆ PassAlloc

◆ PatchAlloc

◆ PluginAlloc

◆ ProfilerAlloc

◆ ProgMeshAlloc

◆ PropertyAlloc

◆ Real

typedef float Ogre::Real

Software floating point type.

Note
Not valid as a pointer to GPU buffers / parameters

◆ RealAsUint

◆ RenderQueueAlloc

◆ RenderSysAlloc

◆ RenderSysAllocatedObject

◆ RenderSysAllocPolicy

◆ ResourceAlloc

◆ ResourceAllocatedObject

◆ ResourceAllocPolicy

◆ ResourceHandle

typedef unsigned long long int Ogre::ResourceHandle

◆ ResourcePtr

◆ ResourceSimdAllocObject

◆ ResourceSimdAllocPolicy

◆ RootAlloc

◆ RTShaderSystemAlloc

◆ SceneCtlAlignedObject

◆ SceneCtlAlignPolicy

◆ SceneCtlAllocatedObject

◆ SceneCtlAllocPolicy

◆ SceneMgtAlignedAlloc

◆ SceneMgtAlloc

◆ SceneObjAllocatedObject

◆ SceneObjAllocPolicy

◆ ScriptCompilerAlloc

◆ ScriptingAllocatedObject

◆ ScriptingAllocPolicy

◆ ScriptTranslatorAlloc

◆ SerializerAlloc

◆ ShadowCameraSetupPtr

◆ ShadowDataAlloc

◆ SharedParamsBufferMap

◆ SharedVertexBufferMap

When cloning Vaos, some vertex buffers are used multiple times for LOD'ing purposes (only the IndexBuffer changes).

This maps an old VertexBuffer to a new VertexBuffer to know when to reuse an existing one while cloning.

◆ SkeletonAnimationDefVec

◆ SkeletonAnimationVec

◆ SkeletonDefPtr

◆ SkeletonTrackVec

typedef vector<SkeletonTrack>::type Ogre::SkeletonTrackVec

◆ StagingBufferAlloc

◆ StagingBufferVec

typedef vector<StagingBuffer*>::type Ogre::StagingBufferVec

◆ StereoDriverAlloc

◆ StreamAlloc

◆ String

◆ StringStream

◆ stringstream

◆ SubEntityAlloc

◆ SubMeshAlloc

◆ TechniqueAlloc

◆ TerrainAlloc

◆ TexturePtrList

typedef vector<TexturePtr>::type Ogre::TexturePtrList

◆ TextureUnitStateAlloc

◆ THREAD_ENTRY_POINT

typedef void*(OGRE_THREAD_CALL_CONVENTION * Ogre::THREAD_ENTRY_POINT) (void *lpThreadParameter)

◆ ThreadHandlePtr

◆ ThreadHandleVec

◆ TimerAlloc

◆ TlsHandle

typedef pthread_key_t Ogre::TlsHandle

◆ TransformArray

◆ uchar

typedef unsigned char Ogre::uchar

In order to avoid finger-aches :)

◆ uint

typedef unsigned int Ogre::uint

◆ uint16

typedef unsigned short Ogre::uint16

◆ uint32

typedef unsigned int Ogre::uint32

◆ uint64

typedef unsigned long long Ogre::uint64

◆ uint8

typedef unsigned char Ogre::uint8

◆ ulong

typedef unsigned long Ogre::ulong

◆ ushort

typedef unsigned short Ogre::ushort

◆ UtilityAlloc

◆ VertexArrayObjectAlloc

◆ VertexArrayObjectArray

◆ VertexArrayObjectSet

typedef unordered_set<VertexArrayObject*>::type Ogre::VertexArrayObjectSet

◆ VertexBufferPackedVec

◆ VertexDataAlloc

◆ VertexElement2Vec

typedef vector<VertexElement2>::type Ogre::VertexElement2Vec

◆ VertexElement2VecVec

◆ VertexElementSemanticFullArray

◆ ViewportAlloc

Enumeration Type Documentation

◆ BufferBindFlags

Enumerator
BB_FLAG_VERTEX 
BB_FLAG_INDEX 
BB_FLAG_CONST 
BB_FLAG_TEX 
BB_FLAG_UAV 
BB_FLAG_INDIRECT 

◆ BufferPackedTypes

Enumerator
BP_TYPE_VERTEX 
BP_TYPE_INDEX 
BP_TYPE_CONST 
BP_TYPE_TEX 
BP_TYPE_UAV 
BP_TYPE_INDIRECT 
NUM_BUFFER_PACKED_TYPES 

◆ BufferType

Enumerator
BT_IMMUTABLE 

Read access from GPU.

i.e. Textures, most meshes.

BT_DEFAULT 

Read and write access from GPU.

No access for CPU at all. i.e. RenderTextures, vertex buffers that will be used for R2VB

Remarks
Ogre will use staging buffers to upload and download contents, but don't do this frequently (except where needed, i.e. live video capture)
BT_DYNAMIC_DEFAULT 

Read access from GPU.

Write access for CPU. i.e. Particles, dynamic textures. Dynamic buffers don't put a hidden buffer behind the scenes. You get what you ask, therefore it's your responsability to ensure you don't lock a region that is currently in use by the GPU (or else stall).

BT_DYNAMIC_PERSISTENT 

Same as BT_DYNAMIC, but mapping will be persistent.

BT_DYNAMIC_PERSISTENT_COHERENT 

Same as BT_DYNAMIC_PERSISTENT, but mapping will be persistent and cache coherent.

◆ CbType

Enumerator
CB_INVALID 
CB_SET_VAO 
CB_SET_INDIRECT_BUFFER 
CB_DRAW_CALL_INDEXED_EMULATED_NO_BASE_INSTANCE 
CB_DRAW_CALL_INDEXED_EMULATED 
CB_DRAW_CALL_INDEXED 
CB_DRAW_CALL_STRIP_EMULATED_NO_BASE_INSTANCE 
CB_DRAW_CALL_STRIP_EMULATED 
CB_DRAW_CALL_STRIP 
CB_SET_CONSTANT_BUFFER_VS 
CB_SET_CONSTANT_BUFFER_PS 
CB_SET_CONSTANT_BUFFER_GS 
CB_SET_CONSTANT_BUFFER_HS 
CB_SET_CONSTANT_BUFFER_DS 
CB_SET_CONSTANT_BUFFER_CS 
CB_SET_CONSTANT_BUFFER_INVALID 
CB_SET_TEXTURE_BUFFER_VS 
CB_SET_TEXTURE_BUFFER_PS 
CB_SET_TEXTURE_BUFFER_GS 
CB_SET_TEXTURE_BUFFER_HS 
CB_SET_TEXTURE_BUFFER_DS 
CB_SET_TEXTURE_BUFFER_CS 
CB_SET_TEXTURE_BUFFER_INVALID 
CB_SET_PSO 
CB_SET_TEXTURE 
CB_SET_TEXTURES 
CB_SET_SAMPLERS 
CB_START_V1_LEGACY_RENDERING 
CB_SET_V1_RENDER_OP 
CB_DRAW_V1_INDEXED_NO_BASE_INSTANCE 
CB_DRAW_V1_INDEXED 
CB_DRAW_V1_STRIP_NO_BASE_INSTANCE 
CB_DRAW_V1_STRIP 
CB_LOW_LEVEL_MATERIAL 
MAX_COMMAND_BUFFER 

◆ D3D9ResourceCreationPolicy

Enumerator
RCP_CREATE_ON_ACTIVE_DEVICE 
RCP_CREATE_ON_ALL_DEVICES 

◆ MappingState

Enumerator
MS_UNMAPPED 
MS_MAPPED 
NUM_MAPPING_STATE 

◆ MeshVersion

Mesh compatibility versions Naming convention: MeshSerializer_v2.1 R0 LEGACYV1.

  • "v2.1" means it was written during the development of Ogre 2.1
  • "R0" is the revision number. If we later add something new to the format while still developing Ogre 2.1; we will increase it to R1. Then R2, R3 and so on. This ensure we don't break compatibility with our users who are actively working with Ogre 2.1 the next time their pull from the repo. It would be a disaster if we broke compatibility. However we plan that the final version of Ogre 2.1 (when we officially release it) to remove compatibility with these temporary R0-Rn-1 formats and only leave RN as the final version. Users should be able to upgrade via OgreMeshTool before that happens. But forcing them to upgrade every single time we update something is insane.
  • LEGACYV1 means it's a v1 format, which can be opened by Entity. To open it via Item, you need to import the mesh to a v2 format (as shown in V2Mesh sample).
  • Lack of LEGACYV1 word means this is a v2 format, which can be opened by Item. To open via Entity, you need to import the mesh to a v1 format (OgreMeshTool shows how to do this; it's basically the reverse of importing a v1 into a v2)

See http://www.ogre3d.org/forums/viewtopic.php?f=25&t=85491&p=524682#p524682

Enumerator
MESH_VERSION_LATEST 

Latest version available.

MESH_VERSION_2_1 

OGRE version v2.0+.

MESH_VERSION_LEGACY 

◆ PbsBlendModes

Enumerator
PBSM_BLEND_NORMAL_NON_PREMUL 

Regular alpha blending.

PBSM_BLEND_NORMAL_PREMUL 

Premultiplied alpha blending.

PBSM_BLEND_ADD 
PBSM_BLEND_SUBTRACT 
PBSM_BLEND_MULTIPLY 
PBSM_BLEND_MULTIPLY2X 
PBSM_BLEND_SCREEN 
PBSM_BLEND_OVERLAY 
PBSM_BLEND_LIGHTEN 
PBSM_BLEND_DARKEN 
PBSM_BLEND_GRAIN_EXTRACT 
PBSM_BLEND_GRAIN_MERGE 
PBSM_BLEND_DIFFERENCE 
NUM_PBSM_BLEND_MODES 

◆ PbsMobileBlendModes

Enumerator
PBSM_BLEND_NORMAL_NON_PREMUL 

Regular alpha blending.

PBSM_BLEND_NORMAL_PREMUL 

Premultiplied alpha blending.

PBSM_BLEND_ADD 
PBSM_BLEND_SUBTRACT 
PBSM_BLEND_MULTIPLY 
PBSM_BLEND_MULTIPLY2X 
PBSM_BLEND_SCREEN 
PBSM_BLEND_OVERLAY 
PBSM_BLEND_LIGHTEN 
PBSM_BLEND_DARKEN 
PBSM_BLEND_GRAIN_EXTRACT 
PBSM_BLEND_GRAIN_MERGE 
PBSM_BLEND_DIFFERENCE 
NUM_PBSM_BLEND_MODES 

◆ PbsMobileTextureTypes

Enumerator
PBSM_DIFFUSE 
PBSM_NORMAL 
PBSM_SPECULAR 
PBSM_ROUGHNESS 
PBSM_DETAIL_WEIGHT 
PBSM_DETAIL0 
PBSM_DETAIL1 
PBSM_DETAIL2 
PBSM_DETAIL3 
PBSM_DETAIL0_NM 
PBSM_DETAIL1_NM 
PBSM_DETAIL2_NM 
PBSM_DETAIL3_NM 
PBSM_REFLECTION 
NUM_PBSM_SOURCES 
NUM_PBSM_TEXTURE_TYPES 

◆ PbsTextureTypes

Enumerator
PBSM_DIFFUSE 
PBSM_NORMAL 
PBSM_SPECULAR 
PBSM_METALLIC 
PBSM_ROUGHNESS 
PBSM_DETAIL_WEIGHT 
PBSM_DETAIL0 
PBSM_DETAIL1 
PBSM_DETAIL2 
PBSM_DETAIL3 
PBSM_DETAIL0_NM 
PBSM_DETAIL1_NM 
PBSM_DETAIL2_NM 
PBSM_DETAIL3_NM 
PBSM_EMISSIVE 
PBSM_REFLECTION 
NUM_PBSM_SOURCES 
NUM_PBSM_TEXTURE_TYPES 

◆ StagingStallType

Enumerator
STALL_NONE 

Next map will not stall.

STALL_PARTIAL 

Next map call will cause a stall.

We can't predict how long, but on average should be small. You should consider doing something else then try again.

STALL_FULL 

The whole pipeline is brought to a stop.

We have to wait for the GPU to finish all operations issued so far. This can be very expensive. Grab a different StagingBuffer.

NUM_STALL_TYPES 

◆ UnlitBlendModes

Enumerator
UNLIT_BLEND_NORMAL_NON_PREMUL 

Regular alpha blending.

UNLIT_BLEND_NORMAL_PREMUL 

Premultiplied alpha blending.

UNLIT_BLEND_ADD 
UNLIT_BLEND_SUBTRACT 
UNLIT_BLEND_MULTIPLY 
UNLIT_BLEND_MULTIPLY2X 
UNLIT_BLEND_SCREEN 
UNLIT_BLEND_OVERLAY 
UNLIT_BLEND_LIGHTEN 
UNLIT_BLEND_DARKEN 
UNLIT_BLEND_GRAIN_EXTRACT 
UNLIT_BLEND_GRAIN_MERGE 
UNLIT_BLEND_DIFFERENCE 
NUM_UNLIT_BLEND_MODES 

◆ UnlitTextureTypes

Enumerator
NUM_UNLIT_TEXTURE_TYPES 

◆ UnmapOptions

Enumerator
UO_UNMAP_ALL 

Unmaps all types of mapping, including persistent buffers.

UO_KEEP_PERSISTENT 

When unmapping, unmap() will keep persistent buffers mapped.

Further calls to map will only do some error checking

◆ VertexElementSemantic

Vertex element semantics, used to identify the meaning of vertex buffer contents.

Enumerator
VES_POSITION 

Position, 3 reals per vertex.

VES_BLEND_WEIGHTS 

Blending weights.

VES_BLEND_INDICES 

Blending indices.

VES_NORMAL 

Normal, 3 reals per vertex.

VES_DIFFUSE 

Diffuse colours.

VES_SPECULAR 

Specular colours.

VES_TEXTURE_COORDINATES 

Texture coordinates.

You can have up to 8 of these. 6 if VES_BLEND_WEIGHTS2 or VES_BLEND_INDICES2 if present.

VES_BINORMAL 

Binormal (Y axis if normal is Z)

VES_TANGENT 

Tangent (X axis if normal is Z)

VES_BLEND_WEIGHTS2 

Second pair of blending weights (i.e. more than 4, less or equal than 8)

VES_BLEND_INDICES2 

Second pair of blending indices (i.e. more than 4, less or equal than 8)

VES_COUNT 

The number of VertexElementSemantic elements (note - the first value VES_POSITION is 1)

◆ VertexElementType

Vertex element type, used to identify the base types of the vertex contents Note that all attributes must be aligned to 4 bytes, that's why VET_SHORT1 (among others) doesn't exist.

Enumerator
VET_FLOAT1 
VET_FLOAT2 
VET_FLOAT3 
VET_FLOAT4 
VET_COLOUR 

alias to more specific colour type - use the current rendersystem's colour packing

VET_SHORT2 
VET_SHORT4 
VET_UBYTE4 
VET_COLOUR_ARGB 

D3D style compact colour.

VET_COLOUR_ABGR 

GL style compact colour.

VET_DOUBLE1 
VET_DOUBLE2 
VET_DOUBLE3 
VET_DOUBLE4 
VET_USHORT1_DEPRECATED 
VET_USHORT2 
VET_USHORT3_DEPRECATED 
VET_USHORT4 
VET_INT1 
VET_INT2 
VET_INT3 
VET_INT4 
VET_UINT1 
VET_UINT2 
VET_UINT3 
VET_UINT4 
VET_BYTE4 
VET_BYTE4_SNORM 
VET_UBYTE4_NORM 
VET_SHORT2_SNORM 
VET_SHORT4_SNORM 
VET_USHORT2_NORM 
VET_USHORT4_NORM 
VET_HALF2 
VET_HALF4 

Function Documentation

◆ alignToNextMultiple()

size_t Ogre::alignToNextMultiple ( size_t  offset,
size_t  alignment 
)
inline

Aligns the input 'offset' to the next multiple of 'alignment'.

Alignment can be any value except 0. Some examples:

alignToNextMultiple( 0, 4 ) = 0; alignToNextMultiple( 1, 4 ) = 4; alignToNextMultiple( 2, 4 ) = 4; alignToNextMultiple( 3, 4 ) = 4; alignToNextMultiple( 4, 4 ) = 4; alignToNextMultiple( 5, 4 ) = 8;

alignToNextMultiple( 0, 3 ) = 0; alignToNextMultiple( 1, 3 ) = 3;

◆ alignToPreviousMult()

size_t Ogre::alignToPreviousMult ( size_t  offset,
size_t  alignment 
)
inline

This function has been purposedly not been named 'alignToPrevMultiple' to avoid easily confusing it with alignToNextMultiple.

References max(), and min().

◆ deletePtr()

template<typename T >
void Ogre::deletePtr ( T *  ptr)

Function which invokes OGRE_DELETE on a given pointer.

Remarks
Useful to pass custom deletion policies to external libraries (e. g. boost).

References OGRE_DELETE.

◆ efficientVectorRemove()

template<typename T >
T::iterator Ogre::efficientVectorRemove ( T &  container,
typename T::iterator &  iterator 
)

Used for efficient removal in std::vector and std::deque (like an std::list) However it assumes the order of elements in container is not important or something external to the container holds the index of an element in it (but still should be kept deterministically across machines) Basically it swaps the iterator with the last iterator, and pops back Returns the next iterator.

◆ getGLSupport()

GLES2Support * Ogre::getGLSupport ( )
inline

◆ IsWindows10OrGreater()

bool Ogre::IsWindows10OrGreater ( )
inline

◆ IsWindows10RS3OrGreater()

bool Ogre::IsWindows10RS3OrGreater ( )
inline

◆ IsWindows8OrGreater()

bool Ogre::IsWindows8OrGreater ( )
inline

◆ IsWindows8Point1OrGreater()

bool Ogre::IsWindows8Point1OrGreater ( )
inline

◆ IsWorkingUnderNsight()

bool Ogre::IsWorkingUnderNsight ( )

◆ logObjectInfo()

String Ogre::logObjectInfo ( const String msg,
const GLuint  obj 
)

If there is a message in GL info log then post it in the Ogre Log.

Parameters
msgThe info log message string is appended to this string
objThe GL object that is used to retrieve the info log

◆ max() [1/2]

◆ max() [2/2]

const double& Ogre::max ( const double &  a,
const double &  b 
)
inline

◆ min() [1/2]

◆ min() [2/2]

const double& Ogre::min ( const double &  a,
const double &  b 
)
inline

◆ ogreGlObjectLabel() [1/2]

void Ogre::ogreGlObjectLabel ( GLenum  identifier,
GLuint  name,
GLsizei  length,
const GLchar *  label 
)

◆ ogreGlObjectLabel() [2/2]

void Ogre::ogreGlObjectLabel ( GLenum  identifier,
GLuint  name,
const String label 
)

◆ removeDuplicates()

template<class C >
void Ogre::removeDuplicates ( C &  c)

◆ translateWGLError()

String Ogre::translateWGLError ( )

Variable Documentation

◆ _pixelFormats

PixelFormatDescription Ogre::_pixelFormats[PF_COUNT]

Pixel format database.

◆ modeCount [1/2]

unsigned int Ogre::modeCount = 0
static

◆ modeCount [2/2]

unsigned int Ogre::modeCount = 0
static

◆ wglCreateContextAttribsARB

PFNWGLCREATECONTEXTATTRIBSARBPROC Ogre::wglCreateContextAttribsARB