OGRE  1.9
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Ogre::RenderOperation Class Reference

'New' rendering operation using vertex buffers. More...

#include <OgreRenderOperation.h>

+ Collaboration diagram for Ogre::RenderOperation:

Public Types

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
}
 The rendering operation type to perform. More...
 

Public Member Functions

 RenderOperation ()
 

Public Attributes

IndexDataindexData
 Index data - only valid if useIndexes is true. More...
 
size_t numberOfInstances
 The number of instances for the render operation - this option is supported in only a part of the render systems. More...
 
OperationType operationType
 The type of operation to perform. More...
 
const RenderablesrcRenderable
 Debug pointer back to renderable which created this. More...
 
bool useGlobalInstancingVertexBufferIsAvailable
 A flag to indicate that it is possible for this operation to use a global vertex instance buffer if available. More...
 
bool useIndexes
 Specifies whether to use indexes to determine the vertices to use as input. More...
 
VertexDatavertexData
 Vertex source data. More...
 

Detailed Description

'New' rendering operation using vertex buffers.

Definition at line 45 of file OgreRenderOperation.h.

Member Enumeration Documentation

The rendering operation type to perform.

Enumerator
OT_POINT_LIST 

A list of points, 1 vertex per point.

OT_LINE_LIST 

A list of lines, 2 vertices per line.

OT_LINE_STRIP 

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

OT_TRIANGLE_LIST 

A list of triangles, 3 vertices per triangle.

OT_TRIANGLE_STRIP 

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

OT_TRIANGLE_FAN 

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

OT_PATCH_1_CONTROL_POINT 

Patch control point operations, used with tesselation stages.

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

Definition at line 48 of file OgreRenderOperation.h.

Constructor & Destructor Documentation

Ogre::RenderOperation::RenderOperation ( )
inline

Definition at line 121 of file OgreRenderOperation.h.

Member Data Documentation

IndexData* Ogre::RenderOperation::indexData

Index data - only valid if useIndexes is true.

Definition at line 109 of file OgreRenderOperation.h.

size_t Ogre::RenderOperation::numberOfInstances

The number of instances for the render operation - this option is supported in only a part of the render systems.

Definition at line 115 of file OgreRenderOperation.h.

OperationType Ogre::RenderOperation::operationType

The type of operation to perform.

Definition at line 100 of file OgreRenderOperation.h.

const Renderable* Ogre::RenderOperation::srcRenderable

Debug pointer back to renderable which created this.

Definition at line 111 of file OgreRenderOperation.h.

bool Ogre::RenderOperation::useGlobalInstancingVertexBufferIsAvailable

A flag to indicate that it is possible for this operation to use a global vertex instance buffer if available.

Definition at line 119 of file OgreRenderOperation.h.

bool Ogre::RenderOperation::useIndexes

Specifies whether to use indexes to determine the vertices to use as input.

If false, the vertices are simply read in sequence to define the primitives. If true, indexes are used instead to identify vertices anywhere in the buffer, and allowing vertices to be used more than once. If true, then the indexBuffer, indexStart and numIndexes properties must be valid.

Definition at line 106 of file OgreRenderOperation.h.

VertexData* Ogre::RenderOperation::vertexData

Vertex source data.

Definition at line 97 of file OgreRenderOperation.h.


The documentation for this class was generated from the following file: