Crazy Eddie's GUI System  0.8.4
CEGUI::OpenGL3GeometryBuffer Class Reference

OpenGL3 based implementation of the GeometryBuffer interface. More...

+ Inheritance diagram for CEGUI::OpenGL3GeometryBuffer:
+ Collaboration diagram for CEGUI::OpenGL3GeometryBuffer:

List of all members.

Public Member Functions

 OpenGL3GeometryBuffer (OpenGL3Renderer &owner)
 Constructor.
void initialiseOpenGLBuffers ()
void deinitialiseOpenGLBuffers ()
void updateOpenGLBuffers ()
void draw () const
 Draw the geometry buffered within this GeometryBuffer object.
void appendGeometry (const Vertex *const vbuff, uint vertex_count)
 Append a number of vertices from an array to the GeometryBuffer.
void reset ()
 Clear all buffered data and reset the GeometryBuffer to the default state.

Protected Attributes

GLuint d_verticesVAO
 OpenGL vao used for the vertices.
GLuint d_verticesVBO
 OpenGL vbo containing all vertex data.
CEGUI::OpenGL3Shader *& d_shader
 Reference to the OpenGL shader inside the Renderer, that is used to render all geometry.
const GLint d_shaderPosLoc
 Position variable location inside the shader, for OpenGL.
const GLint d_shaderTexCoordLoc
 TexCoord variable location inside the shader, for OpenGL.
const GLint d_shaderColourLoc
 Color variable location inside the shader, for OpenGL.
const GLint d_shaderStandardMatrixLoc
 Matrix uniform location inside the shader, for OpenGL.
OpenGL3StateChangeWrapperd_glStateChanger
 Pointer to the OpenGL state changer wrapper that was created inside the Renderer.
GLuint d_bufferSize
 Size of the buffer that is currently in use.

Detailed Description

OpenGL3 based implementation of the GeometryBuffer interface.


Member Function Documentation

void CEGUI::OpenGL3GeometryBuffer::appendGeometry ( const Vertex *const  vbuff,
uint  vertex_count 
) [virtual]

Append a number of vertices from an array to the GeometryBuffer.

Parameters:
vbuffPointer to an array of Vertex objects that describe the vertices that are to be added to the GeometryBuffer.
vertex_countThe number of Vertex objects from the array vbuff that are to be added to the GeometryBuffer.

Reimplemented from CEGUI::OpenGLGeometryBufferBase.

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends