OGRE-Next: Ogre::v1::RenderOperation Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::v1::RenderOperation Class Reference
Core » RenderSystem

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

`#include <OgreRenderOperation.h>`

## Public Member Functions
| RenderOperation ()

## Public Attributes
IndexData * | indexData
| Index data - only valid if useIndexes is true.
uint32 | meshIndex
| This index is set to 0 by default.
size_t | numberOfInstances
| The number of instances for the render operation - this option is supported in only a part of the render systems.
OperationType | operationType
| The type of operation to perform.
bool | renderToVertexBuffer
| Specifies whether rendering to the vertex buffer.
bool | useGlobalInstancingVertexBufferIsAvailable
| A flag to indicate that it is possible for this operation to use a global vertex instance buffer if available.
bool | useIndexes
| Specifies whether to use indexes to determine the vertices to use as input.
VertexData * | vertexData
| Vertex source data.

## Static Public Attributes
static AtomicScalar< uint32 > | MeshIndexId

## Detailed Description

'New' rendering operation using vertex buffers.

## Constructor & Destructor Documentation

## ◆ RenderOperation()

Ogre::v1::RenderOperation::RenderOperation | ( |  | ) |
| inline

References indexData, meshIndex, numberOfInstances, OGRE_DEBUG_MODE, operationType, Ogre::OT_TRIANGLE_LIST, renderToVertexBuffer, useGlobalInstancingVertexBufferIsAvailable, useIndexes, and vertexData.

## Member Data Documentation

## ◆ indexData

IndexData* Ogre::v1::RenderOperation::indexData

Index data - only valid if useIndexes is true.

Referenced by RenderOperation().

## ◆ meshIndex

uint32 Ogre::v1::RenderOperation::meshIndex

This index is set to 0 by default.

The RenderQueue will sort by mesh using this index. Two different RenderOperations may have the same meshIndex, but if so, performance could be degraded (it would hinder auto instancing, forces rebinding of the vertex & index buffer per Renderable, etc) It is the implementation's responsability to assign a (unique if possible) index. The static variable MeshIndexId is provided as an incrementing ID, but you're not forced to use it

Referenced by RenderOperation().

## ◆ MeshIndexId

AtomicScalar<uint32> Ogre::v1::RenderOperation::MeshIndexId
| static

## ◆ numberOfInstances

size_t Ogre::v1::RenderOperation::numberOfInstances

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

Referenced by RenderOperation().

## ◆ operationType

OperationType Ogre::v1::RenderOperation::operationType

The type of operation to perform.

Referenced by RenderOperation().

## ◆ renderToVertexBuffer

bool Ogre::v1::RenderOperation::renderToVertexBuffer

Specifies whether rendering to the vertex buffer.

Referenced by RenderOperation().

## ◆ useGlobalInstancingVertexBufferIsAvailable

bool Ogre::v1::RenderOperation::useGlobalInstancingVertexBufferIsAvailable

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

Referenced by RenderOperation().

## ◆ useIndexes

bool Ogre::v1::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.

Referenced by RenderOperation().

## ◆ vertexData

VertexData* Ogre::v1::RenderOperation::vertexData

Vertex source data.

Referenced by RenderOperation().

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

- OgreRenderOperation.h