Ogre::RenderOperation Class Reference
Core » RenderSystem

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

`#include <OgreRenderOperation.h>`

## 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

IndexData * | indexData
| 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 Renderable * | srcRenderable
| 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...
VertexData * | vertexData
| Vertex source data. More...

## Detailed Description

'New' rendering operation using vertex buffers.

Definition at line 45 of file OgreRenderOperation.h.

## Member Enumeration Documentation

## OperationType

enum Ogre::RenderOperation::OperationType

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

## RenderOperation()

Ogre::RenderOperation::RenderOperation | ( |  | ) |

Definition at line 121 of file OgreRenderOperation.h.

## Member Data Documentation

## indexData

IndexData* Ogre::RenderOperation::indexData

Index data - only valid if useIndexes is true.

Definition at line 109 of file OgreRenderOperation.h.

## numberOfInstances

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

OperationType Ogre::RenderOperation::operationType

The type of operation to perform.

Definition at line 100 of file OgreRenderOperation.h.

## srcRenderable

const Renderable* Ogre::RenderOperation::srcRenderable

Debug pointer back to renderable which created this.

Definition at line 111 of file OgreRenderOperation.h.

## useGlobalInstancingVertexBufferIsAvailable

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.

## useIndexes

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

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:

- OgreRenderOperation.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.