| OGRE 1.11.1 Object-Oriented Graphics Rendering Engine

Public Member Functions | List of all members
Ogre::RenderToVertexBuffer Class Referenceabstract
Core » RenderSystem

An object which renders geometry to a vertex. More...

`#include <OgreRenderToVertexBuffer.h>`

Inheritance diagram for Ogre::RenderToVertexBuffer:
[legend]

## Public Member Functions
| RenderToVertexBuffer ()
virtual | ~RenderToVertexBuffer ()
unsigned int | getMaxVertexCount () const
| Get the maximum number of vertices that the buffer will hold. More...
RenderOperation::OperationType | getOperationType () const
| What type of primitives does this object generate? More...
virtual void | getRenderOperation (RenderOperation &op)=0
| Get the render operation for this buffer. More...
const MaterialPtr & | getRenderToBufferMaterial ()
| Get the material which is used to render the geometry into the vertex buffer. More...
bool | getResetsEveryUpdate () const
| Does this object reset its buffer each time it updates? More...
const Renderable * | getSourceRenderable () const
| Get the source renderable of this object. More...
VertexDeclaration * | getVertexDeclaration ()
| Get the vertex declaration that the pass will output. More...
virtual void | reset ()
| Reset the vertex buffer to the initial state. More...
void | setMaxVertexCount (unsigned int maxVertexCount)
| Set the maximum number of vertices that the buffer will hold. More...
void | setOperationType (RenderOperation::OperationType operationType)
| Set the type of primitives that this object generates. More...
void | setRenderToBufferMaterialName (const String &materialName)
| Set the material name which is used to render the geometry into the vertex buffer. More...
void | setResetsEveryUpdate (bool resetsEveryUpdate)
| Set whether this object resets its buffers each time it updates. More...
void | setSourceRenderable (Renderable *source)
| Set the source renderable of this object. More...
virtual void | update (SceneManager *sceneMgr)=0
| Update the contents of this vertex buffer by rendering. More...

## Detailed Description

An object which renders geometry to a vertex.

Remarks
  This is especially useful together with geometry shaders, as you can render procedural geometry which will get saved to a vertex buffer for reuse later, without regenerating it again. You can also create shaders that run on previous results of those shaders, creating stateful shaders.

## Constructor & Destructor Documentation

## ◆ RenderToVertexBuffer()

Ogre::RenderToVertexBuffer::RenderToVertexBuffer | ( |  | ) |

## ◆ ~RenderToVertexBuffer()

virtual Ogre::RenderToVertexBuffer::~RenderToVertexBuffer | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ getVertexDeclaration()

VertexDeclaration* Ogre::RenderToVertexBuffer::getVertexDeclaration | ( |  | ) |

Get the vertex declaration that the pass will output.

Remarks
  Use this object to set the elements of the buffer. Object will calculate buffers on its own. Only one source allowed!

## ◆ getMaxVertexCount()

unsigned int Ogre::RenderToVertexBuffer::getMaxVertexCount | ( |  | ) | const
| inline

Get the maximum number of vertices that the buffer will hold.

## ◆ setMaxVertexCount()

void Ogre::RenderToVertexBuffer::setMaxVertexCount | ( | unsigned int | maxVertexCount | ) |
| inline

Set the maximum number of vertices that the buffer will hold.

## ◆ getOperationType()

RenderOperation::OperationType Ogre::RenderToVertexBuffer::getOperationType | ( |  | ) | const
| inline

What type of primitives does this object generate?

## ◆ setOperationType()

void Ogre::RenderToVertexBuffer::setOperationType | ( | RenderOperation::OperationType | operationType | ) |
| inline

Set the type of primitives that this object generates.

## ◆ setResetsEveryUpdate()

void Ogre::RenderToVertexBuffer::setResetsEveryUpdate | ( | bool | resetsEveryUpdate | ) |
| inline

Set whether this object resets its buffers each time it updates.

## ◆ getResetsEveryUpdate()

bool Ogre::RenderToVertexBuffer::getResetsEveryUpdate | ( |  | ) | const
| inline

Does this object reset its buffer each time it updates?

## ◆ getRenderOperation()

virtual void Ogre::RenderToVertexBuffer::getRenderOperation | ( | RenderOperation & | op | ) |
| pure virtual

Get the render operation for this buffer.

Implemented in Ogre::GLRenderToVertexBuffer, Ogre::GLES2RenderToVertexBuffer, Ogre::D3D11RenderToVertexBuffer, and Ogre::GL3PlusRenderToVertexBuffer.

## ◆ update()

virtual void Ogre::RenderToVertexBuffer::update | ( | SceneManager * | sceneMgr | ) |
| pure virtual

Update the contents of this vertex buffer by rendering.

Implemented in Ogre::GLRenderToVertexBuffer, Ogre::GLES2RenderToVertexBuffer, Ogre::D3D11RenderToVertexBuffer, and Ogre::GL3PlusRenderToVertexBuffer.

## ◆ reset()

virtual void Ogre::RenderToVertexBuffer::reset | ( | void |  | ) |
| inline virtual

Reset the vertex buffer to the initial state.

In the next update, the source renderable will be used as input.

## ◆ setSourceRenderable()

void Ogre::RenderToVertexBuffer::setSourceRenderable | ( | Renderable * | source | ) |
| inline

Set the source renderable of this object.

During the first (and perhaps later) update of this object, this object's data will be used as input)

## ◆ getSourceRenderable()

const Renderable* Ogre::RenderToVertexBuffer::getSourceRenderable | ( |  | ) | const
| inline

Get the source renderable of this object.

## ◆ getRenderToBufferMaterial()

const MaterialPtr& Ogre::RenderToVertexBuffer::getRenderToBufferMaterial | ( |  | ) |
| inline

Get the material which is used to render the geometry into the vertex buffer.

## ◆ setRenderToBufferMaterialName()

void Ogre::RenderToVertexBuffer::setRenderToBufferMaterialName | ( | const String & | materialName | ) |

Set the material name which is used to render the geometry into the vertex buffer.

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

- OgreRenderToVertexBuffer.h