RenderSystem
[Core]

Collaboration diagram for RenderSystem:

Classes

class  Ogre::DefaultHardwareVertexBuffer
 Specialisation of HardwareVertexBuffer for emulation. More...
class  Ogre::DefaultHardwareIndexBuffer
 Specialisation of HardwareIndexBuffer for emulation. More...
class  Ogre::DefaultHardwareBufferManagerBase
 Specialisation of HardwareBufferManagerBase to emulate hardware buffers. More...
class  Ogre::DefaultHardwareBufferManager
 DefaultHardwareBufferManager as a Singleton. More...
class  Ogre::DepthBuffer
 An abstract class that contains a depth/stencil buffer. More...
class  Ogre::HardwareBuffer
 Abstract class defining common features of hardware buffers. More...
class  Ogre::HardwareBufferLicensee
 Abstract interface representing a 'licensee' of a hardware buffer copy. More...
class  Ogre::TempBlendedBufferInfo
 Structure for recording the use of temporary blend buffers. More...
class  Ogre::HardwareBufferManagerBase
 Base definition of a hardware buffer manager. More...
class  Ogre::HardwareBufferManager
 Singleton wrapper for hardware buffer manager. More...
class  Ogre::HardwareIndexBuffer
 Specialisation of HardwareBuffer for vertex index buffers, still abstract. More...
class  Ogre::HardwareIndexBufferSharedPtr
 Shared pointer implementation used to share index buffers. More...
class  Ogre::HardwareOcclusionQuery
 This is a abstract class that that provides the interface for the query class for hardware occlusion. More...
class  Ogre::HardwarePixelBuffer
 Specialisation of HardwareBuffer for a pixel buffer. More...
class  Ogre::HardwarePixelBufferSharedPtr
 Shared pointer implementation used to share pixel buffers. More...
class  Ogre::HardwareVertexBuffer
 Specialisation of HardwareBuffer for a vertex buffer. More...
class  Ogre::HardwareVertexBufferSharedPtr
 Shared pointer implementation used to share index buffers. More...
class  Ogre::VertexElement
 This class declares the usage of a single vertex buffer as a component of a complete VertexDeclaration. More...
class  Ogre::VertexDeclaration
 This class declares the format of a set of vertex inputs, which can be issued to the rendering API through a RenderOperation. More...
class  Ogre::VertexBufferBinding
 Records the state of all the vertex buffer bindings required to provide a vertex declaration with the input data it needs for the vertex elements. More...
class  Ogre::RenderOperation
 'New' rendering operation using vertex buffers. More...
class  Ogre::RenderQueue
 Class to manage the scene object rendering queue. More...
class  Ogre::RenderQueueInvocation
 Class representing the invocation of queue groups in a RenderQueue. More...
class  Ogre::RenderQueueInvocationSequence
 Class to hold a linear sequence of RenderQueueInvocation objects. More...
class  Ogre::RenderQueueListener
 Abstract interface which classes must implement if they wish to receive events from the render queue. More...
struct  Ogre::RenderablePass
 Struct associating a single Pass with a single Renderable. More...
class  Ogre::QueuedRenderableVisitor
 Visitor interface for items in a QueuedRenderableCollection. More...
class  Ogre::QueuedRenderableCollection
 Lowest level collection of renderables. More...
class  Ogre::RenderPriorityGroup
 Collection of renderables by priority. More...
class  Ogre::RenderQueueGroup
 A grouping level underneath RenderQueue which groups renderables to be issued at coarsely the same time to the renderer. More...
class  Ogre::RenderSystem
 Defines the functionality of a 3D API. More...
struct  Ogre::DriverVersion
 DriverVersion is used by RenderSystemCapabilities and both GL and D3D9 to store the version of the current GPU driver. More...
class  Ogre::RenderSystemCapabilities
 singleton class for storing the capabilities of the graphics card. More...
class  Ogre::RenderSystemCapabilitiesManager
 Class for managing RenderSystemCapabilities database for Ogre. More...
class  Ogre::RenderSystemCapabilitiesSerializer
 Class for serializing RenderSystemCapabilities to / from a .rendercaps script. More...
class  Ogre::RenderTarget
 A 'canvas' which can receive the results of a rendering operation. More...
struct  Ogre::RenderTargetEvent
 Struct containing information about a RenderTarget event. More...
struct  Ogre::RenderTargetViewportEvent
 Struct containing information about a RenderTarget Viewport-specific event. More...
class  Ogre::RenderTargetListener
 A interface class defining a listener which can be used to receive notifications of RenderTarget events. More...
class  Ogre::RenderTexture
 This class represents a RenderTarget that renders to a Texture. More...
class  Ogre::MultiRenderTarget
 This class represents a render target that renders to multiple RenderTextures at once. More...
class  Ogre::RenderToVertexBuffer
 An object which renders geometry to a vertex. More...
class  Ogre::RenderWindow
 Manages the target rendering window. More...
class  Ogre::VertexData
 Summary class collecting together vertex source information. More...
class  Ogre::IndexData
 Summary class collecting together index data source information. More...
class  Ogre::VertexCacheProfiler
 Vertex cache profiler. More...
class  Ogre::Viewport
 An abstraction of a viewport, i.e. More...
class  Ogre::WindowEventListener
class  Ogre::WindowEventUtilities

Defines

#define OGRE_RENDERABLE_DEFAULT_PRIORITY   100

Typedefs

typedef set< RenderTarget * >::type Ogre::DepthBuffer::RenderTargetSet
typedef vector
< RenderQueueInvocation * >
::type 
Ogre::RenderQueueInvocationList
 List of RenderQueueInvocations.
typedef VectorIterator
< RenderQueueInvocationList > 
Ogre::RenderQueueInvocationIterator
typedef vector< DepthBuffer * >
::type 
Ogre::DepthBufferVec
typedef map< uint16,
DepthBufferVec >::type 
Ogre::DepthBufferMap
typedef map< String,
RenderTarget * >::type 
Ogre::RenderTargetMap
typedef multimap< uchar,
RenderTarget * >::type 
Ogre::RenderTargetPriorityMap
typedef SharedPtr
< RenderToVertexBuffer > 
Ogre::RenderToVertexBufferSharedPtr
typedef vector
< HardwareBuffer::Usage >
::type 
Ogre::BufferUsageList
 Define a list of usage flags.

Enumerations

enum  Ogre::VertexElementSemantic {
  Ogre::VES_POSITION = 1, Ogre::VES_BLEND_WEIGHTS = 2, Ogre::VES_BLEND_INDICES = 3, Ogre::VES_NORMAL = 4,
  Ogre::VES_DIFFUSE = 5, Ogre::VES_SPECULAR = 6, Ogre::VES_TEXTURE_COORDINATES = 7, Ogre::VES_BINORMAL = 8,
  Ogre::VES_TANGENT = 9, Ogre::VES_COUNT = 9
}
 

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

More...
enum  Ogre::VertexElementType {
  Ogre::VET_FLOAT1 = 0, Ogre::VET_FLOAT2 = 1, Ogre::VET_FLOAT3 = 2, Ogre::VET_FLOAT4 = 3,
  Ogre::VET_COLOUR = 4, Ogre::VET_SHORT1 = 5, Ogre::VET_SHORT2 = 6, Ogre::VET_SHORT3 = 7,
  Ogre::VET_SHORT4 = 8, Ogre::VET_UBYTE4 = 9, Ogre::VET_COLOUR_ARGB = 10, Ogre::VET_COLOUR_ABGR = 11
}
 

Vertex element type, used to identify the base types of the vertex contents.

More...
enum  Ogre::RenderQueueGroupID {
  Ogre::RENDER_QUEUE_BACKGROUND = 0, Ogre::RENDER_QUEUE_SKIES_EARLY = 5, Ogre::RENDER_QUEUE_1 = 10, Ogre::RENDER_QUEUE_2 = 20,
  Ogre::RENDER_QUEUE_WORLD_GEOMETRY_1 = 25, Ogre::RENDER_QUEUE_3 = 30, Ogre::RENDER_QUEUE_4 = 40, Ogre::RENDER_QUEUE_MAIN = 50,
  Ogre::RENDER_QUEUE_6 = 60, Ogre::RENDER_QUEUE_7 = 70, Ogre::RENDER_QUEUE_WORLD_GEOMETRY_2 = 75, Ogre::RENDER_QUEUE_8 = 80,
  Ogre::RENDER_QUEUE_9 = 90, Ogre::RENDER_QUEUE_SKIES_LATE = 95, Ogre::RENDER_QUEUE_OVERLAY = 100, Ogre::RENDER_QUEUE_MAX = 105
}
 

Enumeration of queue groups, by which the application may group queued renderables so that they are rendered together with events in between.

More...
enum  Ogre::TexCoordCalcMethod {
  Ogre::TEXCALC_NONE, Ogre::TEXCALC_ENVIRONMENT_MAP, Ogre::TEXCALC_ENVIRONMENT_MAP_PLANAR, Ogre::TEXCALC_ENVIRONMENT_MAP_REFLECTION,
  Ogre::TEXCALC_ENVIRONMENT_MAP_NORMAL, Ogre::TEXCALC_PROJECTIVE_TEXTURE
}
 

Enum describing the ways to generate texture coordinates.

More...
enum  Ogre::StencilOperation {
  Ogre::SOP_KEEP, Ogre::SOP_ZERO, Ogre::SOP_REPLACE, Ogre::SOP_INCREMENT,
  Ogre::SOP_DECREMENT, Ogre::SOP_INCREMENT_WRAP, Ogre::SOP_DECREMENT_WRAP, Ogre::SOP_INVERT
}
 

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

More...
enum  Ogre::CapabilitiesCategory {
  Ogre::CAPS_CATEGORY_COMMON = 0, Ogre::CAPS_CATEGORY_COMMON_2 = 1, Ogre::CAPS_CATEGORY_D3D9 = 2, Ogre::CAPS_CATEGORY_GL = 3,
  Ogre::CAPS_CATEGORY_COUNT = 4
}
 

Enumerates the categories of capabilities.

More...
enum  Ogre::Capabilities {
  Ogre::RSC_AUTOMIPMAP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 0), Ogre::RSC_BLENDING = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 1), Ogre::RSC_ANISOTROPY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 2), Ogre::RSC_DOT3 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 3),
  Ogre::RSC_CUBEMAPPING = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 4), Ogre::RSC_HWSTENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 5), Ogre::RSC_VBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 7), Ogre::RSC_VERTEX_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 9),
  Ogre::RSC_FRAGMENT_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 10), Ogre::RSC_SCISSOR_TEST = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 11), Ogre::RSC_TWO_SIDED_STENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 12), Ogre::RSC_STENCIL_WRAP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 13),
  Ogre::RSC_HWOCCLUSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 14), Ogre::RSC_USER_CLIP_PLANES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 15), Ogre::RSC_VERTEX_FORMAT_UBYTE4 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 16), Ogre::RSC_INFINITE_FAR_PLANE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 17),
  Ogre::RSC_HWRENDER_TO_TEXTURE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 18), Ogre::RSC_TEXTURE_FLOAT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 19), Ogre::RSC_NON_POWER_OF_2_TEXTURES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 20), Ogre::RSC_TEXTURE_3D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 21),
  Ogre::RSC_POINT_SPRITES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 22), Ogre::RSC_POINT_EXTENDED_PARAMETERS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 23), Ogre::RSC_VERTEX_TEXTURE_FETCH = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 24), Ogre::RSC_MIPMAP_LOD_BIAS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 25),
  Ogre::RSC_GEOMETRY_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 26), Ogre::RSC_HWRENDER_TO_VERTEX_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 27), Ogre::RSC_TEXTURE_COMPRESSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 0), Ogre::RSC_TEXTURE_COMPRESSION_DXT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 1),
  Ogre::RSC_TEXTURE_COMPRESSION_VTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 2), Ogre::RSC_TEXTURE_COMPRESSION_PVRTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 3), Ogre::RSC_FIXED_FUNCTION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 4), Ogre::RSC_MRT_DIFFERENT_BIT_DEPTHS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 5),
  Ogre::RSC_ALPHA_TO_COVERAGE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 6), Ogre::RSC_ADVANCED_BLEND_OPERATIONS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 7), Ogre::RSC_RTT_SEPARATE_DEPTHBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 8), Ogre::RSC_RTT_MAIN_DEPTHBUFFER_ATTACHABLE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 9),
  Ogre::RSC_RTT_DEPTHBUFFER_RESOLUTION_LESSEQUAL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 10), Ogre::RSC_VERTEX_BUFFER_INSTANCE_DATA = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 11), Ogre::RSC_CAN_GET_COMPILED_SHADER_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 12), Ogre::RSC_PERSTAGECONSTANT = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 0),
  Ogre::RSC_GL1_5_NOVBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 1), Ogre::RSC_FBO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 2), Ogre::RSC_FBO_ARB = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 3), Ogre::RSC_FBO_ATI = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 4),
  Ogre::RSC_PBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 5), Ogre::RSC_GL1_5_NOHWOCCLUSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 6), Ogre::RSC_POINT_EXTENDED_PARAMETERS_ARB = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 7), Ogre::RSC_POINT_EXTENDED_PARAMETERS_EXT = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 8),
  Ogre::RSC_SEPARATE_SHADER_OBJECTS = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 9)
}
 

Enum describing the different hardware capabilities we want to check for OGRE_CAPS_VALUE(a, b) defines each capability.

More...
enum  Ogre::GPUVendor {
  Ogre::GPU_UNKNOWN = 0, Ogre::GPU_NVIDIA = 1, Ogre::GPU_ATI = 2, Ogre::GPU_INTEL = 3,
  Ogre::GPU_S3 = 4, Ogre::GPU_MATROX = 5, Ogre::GPU_3DLABS = 6, Ogre::GPU_SIS = 7,
  Ogre::GPU_IMAGINATION_TECHNOLOGIES = 8, Ogre::GPU_APPLE = 9, Ogre::GPU_NOKIA = 10, Ogre::GPU_MS_SOFTWARE = 11,
  Ogre::GPU_MS_WARP = 12, Ogre::GPU_VENDOR_COUNT = 13
}
 

Enumeration of GPU vendors.

More...

Functions

 Ogre::DepthBuffer::DepthBuffer (uint16 poolId, uint16 bitDepth, uint32 width, uint32 height, uint32 fsaa, const String &fsaaHint, bool manual)
virtual Ogre::DepthBuffer::~DepthBuffer ()
void Ogre::DepthBuffer::_setPoolId (uint16 poolId)
virtual uint16 Ogre::DepthBuffer::getPoolId () const
virtual uint16 Ogre::DepthBuffer::getBitDepth () const
virtual uint32 Ogre::DepthBuffer::getWidth () const
virtual uint32 Ogre::DepthBuffer::getHeight () const
virtual uint32 Ogre::DepthBuffer::getFsaa () const
virtual const String & Ogre::DepthBuffer::getFsaaHint () const
bool Ogre::DepthBuffer::isManual () const
virtual bool Ogre::DepthBuffer::isCompatible (RenderTarget *renderTarget) const
 Returns whether the specified RenderTarget is compatible with this DepthBuffer That is, this DepthBuffer can be attached to that RenderTarget.
virtual void Ogre::DepthBuffer::_notifyRenderTargetAttached (RenderTarget *renderTarget)
 Called when a RenderTarget is attaches this DepthBuffer.
virtual void Ogre::DepthBuffer::_notifyRenderTargetDetached (RenderTarget *renderTarget)
 Called when a RenderTarget is detaches from this DepthBuffer.
void Ogre::DepthBuffer::detachFromAllRenderTargets ()

Variables

uint16 Ogre::DepthBuffer::mPoolId
uint16 Ogre::DepthBuffer::mBitDepth
uint32 Ogre::DepthBuffer::mWidth
uint32 Ogre::DepthBuffer::mHeight
uint32 Ogre::DepthBuffer::mFsaa
String Ogre::DepthBuffer::mFsaaHint
bool Ogre::DepthBuffer::mManual
RenderTargetSet Ogre::DepthBuffer::mAttachedRenderTargets

Define Documentation

#define OGRE_RENDERABLE_DEFAULT_PRIORITY   100

Definition at line 79 of file OgreRenderQueue.h.


Typedef Documentation

typedef vector<HardwareBuffer::Usage>::type Ogre::BufferUsageList

Define a list of usage flags.

Definition at line 44 of file OgreVertexIndexData.h.

typedef map< uint16, DepthBufferVec >::type Ogre::DepthBufferMap

Definition at line 60 of file OgreRenderSystem.h.

typedef vector<DepthBuffer*>::type Ogre::DepthBufferVec

Definition at line 59 of file OgreRenderSystem.h.

typedef VectorIterator<RenderQueueInvocationList> Ogre::RenderQueueInvocationIterator

Definition at line 161 of file OgreRenderQueueInvocation.h.

typedef vector<RenderQueueInvocation*>::type Ogre::RenderQueueInvocationList

List of RenderQueueInvocations.

Definition at line 160 of file OgreRenderQueueInvocation.h.

typedef map< String, RenderTarget * >::type Ogre::RenderTargetMap

Definition at line 61 of file OgreRenderSystem.h.

typedef multimap<uchar, RenderTarget * >::type Ogre::RenderTargetPriorityMap

Definition at line 62 of file OgreRenderSystem.h.

typedef set<RenderTarget*>::type Ogre::DepthBuffer::RenderTargetSet [protected, inherited]

Definition at line 139 of file OgreDepthBuffer.h.

typedef SharedPtr<RenderToVertexBuffer> Ogre::RenderToVertexBufferSharedPtr

Definition at line 146 of file OgreRenderToVertexBuffer.h.


Enumeration Type Documentation

Enum describing the different hardware capabilities we want to check for OGRE_CAPS_VALUE(a, b) defines each capability.

Enumerator:
RSC_AUTOMIPMAP 

Supports generating mipmaps in hardware.

RSC_BLENDING 
RSC_ANISOTROPY 

Supports anisotropic texture filtering.

RSC_DOT3 

Supports fixed-function DOT3 texture blend.

RSC_CUBEMAPPING 

Supports cube mapping.

RSC_HWSTENCIL 

Supports hardware stencil buffer.

RSC_VBO 

Supports hardware vertex and index buffers.

RSC_VERTEX_PROGRAM 

Supports vertex programs (vertex shaders).

RSC_FRAGMENT_PROGRAM 

Supports fragment programs (pixel shaders).

RSC_SCISSOR_TEST 

Supports performing a scissor test to exclude areas of the screen.

RSC_TWO_SIDED_STENCIL 

Supports separate stencil updates for both front and back faces.

RSC_STENCIL_WRAP 

Supports wrapping the stencil value at the range extremeties.

RSC_HWOCCLUSION 

Supports hardware occlusion queries.

RSC_USER_CLIP_PLANES 

Supports user clipping planes.

RSC_VERTEX_FORMAT_UBYTE4 

Supports the VET_UBYTE4 vertex element type.

RSC_INFINITE_FAR_PLANE 

Supports infinite far plane projection.

RSC_HWRENDER_TO_TEXTURE 

Supports hardware render-to-texture (bigger than framebuffer).

RSC_TEXTURE_FLOAT 

Supports float textures and render targets.

RSC_NON_POWER_OF_2_TEXTURES 

Supports non-power of two textures.

RSC_TEXTURE_3D 

Supports 3d (volume) textures.

RSC_POINT_SPRITES 

Supports basic point sprite rendering.

RSC_POINT_EXTENDED_PARAMETERS 

Supports extra point parameters (minsize, maxsize, attenuation).

RSC_VERTEX_TEXTURE_FETCH 

Supports vertex texture fetch.

RSC_MIPMAP_LOD_BIAS 

Supports mipmap LOD biasing.

RSC_GEOMETRY_PROGRAM 

Supports hardware geometry programs.

RSC_HWRENDER_TO_VERTEX_BUFFER 

Supports rendering to vertex buffers.

RSC_TEXTURE_COMPRESSION 

Supports compressed textures.

RSC_TEXTURE_COMPRESSION_DXT 

Supports compressed textures in the DXT/ST3C formats.

RSC_TEXTURE_COMPRESSION_VTC 

Supports compressed textures in the VTC format.

RSC_TEXTURE_COMPRESSION_PVRTC 

Supports compressed textures in the PVRTC format.

RSC_FIXED_FUNCTION 

Supports fixed-function pipeline.

RSC_MRT_DIFFERENT_BIT_DEPTHS 

Supports MRTs with different bit depths.

RSC_ALPHA_TO_COVERAGE 

Supports Alpha to Coverage (A2C).

RSC_ADVANCED_BLEND_OPERATIONS 

Supports Blending operations other than +.

RSC_RTT_SEPARATE_DEPTHBUFFER 

Supports a separate depth buffer for RTTs. D3D 9 & 10, OGL w/FBO (RSC_FBO implies this flag).

RSC_RTT_MAIN_DEPTHBUFFER_ATTACHABLE 

Supports using the MAIN depth buffer for RTTs.

D3D 9&10, OGL w/FBO support unknown (undefined behavior?), OGL w/ copy supports it

RSC_RTT_DEPTHBUFFER_RESOLUTION_LESSEQUAL 

Supports attaching a depth buffer to an RTT that has width & height less or equal than RTT's.

Otherwise must be of _exact_ same resolution. D3D 9, OGL 3.0 (not 2.0, not D3D10)

RSC_VERTEX_BUFFER_INSTANCE_DATA 

Supports using vertex buffers for instance data.

RSC_CAN_GET_COMPILED_SHADER_BUFFER 

Supports using vertex buffers for instance data.

RSC_PERSTAGECONSTANT 

Is DirectX feature "per stage constants" supported.

RSC_GL1_5_NOVBO 

Supports openGL GLEW version 1.5.

RSC_FBO 

Support for Frame Buffer Objects (FBOs).

RSC_FBO_ARB 

Support for Frame Buffer Objects ARB implementation (regular FBO is higher precedence).

RSC_FBO_ATI 

Support for Frame Buffer Objects ATI implementation (ARB FBO is higher precedence).

RSC_PBUFFER 

Support for PBuffer.

RSC_GL1_5_NOHWOCCLUSION 

Support for GL 1.5 but without HW occlusion workaround.

RSC_POINT_EXTENDED_PARAMETERS_ARB 

Support for point parameters ARB implementation.

RSC_POINT_EXTENDED_PARAMETERS_EXT 

Support for point parameters EXT implementation.

RSC_SEPARATE_SHADER_OBJECTS 

Support for Separate Shader Objects.

Definition at line 76 of file OgreRenderSystemCapabilities.h.

Enumerates the categories of capabilities.

Enumerator:
CAPS_CATEGORY_COMMON 
CAPS_CATEGORY_COMMON_2 
CAPS_CATEGORY_D3D9 
CAPS_CATEGORY_GL 
CAPS_CATEGORY_COUNT 

Placeholder for max value.

Definition at line 62 of file OgreRenderSystemCapabilities.h.

Enumeration of GPU vendors.

Enumerator:
GPU_UNKNOWN 
GPU_NVIDIA 
GPU_ATI 
GPU_INTEL 
GPU_S3 
GPU_MATROX 
GPU_3DLABS 
GPU_SIS 
GPU_IMAGINATION_TECHNOLOGIES 
GPU_APPLE 
GPU_NOKIA 
GPU_MS_SOFTWARE 
GPU_MS_WARP 
GPU_VENDOR_COUNT 

placeholder

Definition at line 223 of file OgreRenderSystemCapabilities.h.

Enumeration of queue groups, by which the application may group queued renderables so that they are rendered together with events in between.

Remarks:
When passed into methods these are actually passed as a uint8 to allow you to use values in between if you want to.
Enumerator:
RENDER_QUEUE_BACKGROUND 

Use this queue for objects which must be rendered first e.g. backgrounds.

RENDER_QUEUE_SKIES_EARLY 

First queue (after backgrounds), used for skyboxes if rendered first.

RENDER_QUEUE_1 
RENDER_QUEUE_2 
RENDER_QUEUE_WORLD_GEOMETRY_1 
RENDER_QUEUE_3 
RENDER_QUEUE_4 
RENDER_QUEUE_MAIN 

The default render queue.

RENDER_QUEUE_6 
RENDER_QUEUE_7 
RENDER_QUEUE_WORLD_GEOMETRY_2 
RENDER_QUEUE_8 
RENDER_QUEUE_9 
RENDER_QUEUE_SKIES_LATE 

Penultimate queue(before overlays), used for skyboxes if rendered last.

RENDER_QUEUE_OVERLAY 

Use this queue for objects which must be rendered last e.g. overlays.

RENDER_QUEUE_MAX 

Final possible render queue, don't exceed this.

Definition at line 53 of file OgreRenderQueue.h.

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

Enumerator:
SOP_KEEP 

Leave the stencil buffer unchanged.

SOP_ZERO 

Set the stencil value to zero.

SOP_REPLACE 

Set the stencil value to the reference value.

SOP_INCREMENT 

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

SOP_DECREMENT 

Decrease the stencil value by 1, clamping at 0.

SOP_INCREMENT_WRAP 

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

SOP_DECREMENT_WRAP 

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

SOP_INVERT 

Invert the bits of the stencil buffer.

Definition at line 80 of file OgreRenderSystem.h.

Enum describing the ways to generate texture coordinates.

Enumerator:
TEXCALC_NONE 

No calculated texture coordinates.

TEXCALC_ENVIRONMENT_MAP 

Environment map based on vertex normals.

TEXCALC_ENVIRONMENT_MAP_PLANAR 

Environment map based on vertex positions.

TEXCALC_ENVIRONMENT_MAP_REFLECTION 
TEXCALC_ENVIRONMENT_MAP_NORMAL 
TEXCALC_PROJECTIVE_TEXTURE 

Projective texture.

Definition at line 66 of file OgreRenderSystem.h.

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.

VES_BINORMAL 

Binormal (Y axis if normal is Z).

VES_TANGENT 

Tangent (X axis if normal is Z).

VES_COUNT 

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

Definition at line 95 of file OgreHardwareVertexBuffer.h.

Vertex element type, used to identify the base types of the vertex contents.

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_SHORT1 
VET_SHORT2 
VET_SHORT3 
VET_SHORT4 
VET_UBYTE4 
VET_COLOUR_ARGB 

D3D style compact colour.

VET_COLOUR_ABGR 

GL style compact colour.

Definition at line 119 of file OgreHardwareVertexBuffer.h.


Function Documentation

virtual void Ogre::DepthBuffer::_notifyRenderTargetAttached ( RenderTarget renderTarget  )  [virtual, inherited]

Called when a RenderTarget is attaches this DepthBuffer.

Remarks:
This function doesn't actually attach. It merely informs the DepthBuffer which RenderTarget did attach. The real attachment happens in RenderTarget::attachDepthBuffer()
Parameters:
renderTarget The RenderTarget that has just been attached
virtual void Ogre::DepthBuffer::_notifyRenderTargetDetached ( RenderTarget renderTarget  )  [virtual, inherited]

Called when a RenderTarget is detaches from this DepthBuffer.

Remarks:
Same as DepthBuffer::_notifyRenderTargetAttached()
Parameters:
renderTarget The RenderTarget that has just been attached
void Ogre::DepthBuffer::_setPoolId ( uint16  poolId  )  [inherited]
Ogre::DepthBuffer::DepthBuffer ( uint16  poolId,
uint16  bitDepth,
uint32  width,
uint32  height,
uint32  fsaa,
const String fsaaHint,
bool  manual 
) [inherited]
void Ogre::DepthBuffer::detachFromAllRenderTargets (  )  [protected, inherited]
virtual uint16 Ogre::DepthBuffer::getBitDepth (  )  const [virtual, inherited]
virtual uint32 Ogre::DepthBuffer::getFsaa (  )  const [virtual, inherited]
virtual const String& Ogre::DepthBuffer::getFsaaHint (  )  const [virtual, inherited]
virtual uint32 Ogre::DepthBuffer::getHeight (  )  const [virtual, inherited]
virtual uint16 Ogre::DepthBuffer::getPoolId (  )  const [virtual, inherited]
virtual uint32 Ogre::DepthBuffer::getWidth (  )  const [virtual, inherited]
virtual bool Ogre::DepthBuffer::isCompatible ( RenderTarget renderTarget  )  const [virtual, inherited]

Returns whether the specified RenderTarget is compatible with this DepthBuffer That is, this DepthBuffer can be attached to that RenderTarget.

Remarks:
Most APIs impose the following restrictions: Width & height must be equal or higher than the render target's They must be of the same bit depth. They need to have the same FSAA setting
Parameters:
renderTarget The render target to test against
bool Ogre::DepthBuffer::isManual (  )  const [inherited]
virtual Ogre::DepthBuffer::~DepthBuffer (  )  [virtual, inherited]

Variable Documentation

RenderTargetSet Ogre::DepthBuffer::mAttachedRenderTargets [protected, inherited]

Definition at line 149 of file OgreDepthBuffer.h.

uint16 Ogre::DepthBuffer::mBitDepth [protected, inherited]

Definition at line 142 of file OgreDepthBuffer.h.

uint32 Ogre::DepthBuffer::mFsaa [protected, inherited]

Definition at line 145 of file OgreDepthBuffer.h.

String Ogre::DepthBuffer::mFsaaHint [protected, inherited]

Definition at line 146 of file OgreDepthBuffer.h.

uint32 Ogre::DepthBuffer::mHeight [protected, inherited]

Definition at line 144 of file OgreDepthBuffer.h.

bool Ogre::DepthBuffer::mManual [protected, inherited]

Definition at line 148 of file OgreDepthBuffer.h.

uint16 Ogre::DepthBuffer::mPoolId [protected, inherited]

Definition at line 141 of file OgreDepthBuffer.h.

uint32 Ogre::DepthBuffer::mWidth [protected, inherited]

Definition at line 143 of file OgreDepthBuffer.h.


Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:36:31 2012