27#ifndef _CEGUINullGeometryBuffer_h_
28#define _CEGUINullGeometryBuffer_h_
30#include "../../GeometryBuffer.h"
31#include "CEGUI/RendererModules/Null/Renderer.h"
32#include "../../Rect.h"
33#include "../../Colour.h"
34#include "../../Vertex.h"
35#include "../../Quaternion.h"
42# pragma warning(disable : 4251)
73 bool isClippingActive()
const;
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition GeometryBuffer.h:44
Implementation of CEGUI::GeometryBuffer for the Null engine.
Definition RendererModules/Null/GeometryBuffer.h:50
void setTranslation(const Vector3f &v)
Set the translation to be applied to the geometry in the buffer when it is subsequently rendered.
void reset()
Clear all buffered data and reset the GeometryBuffer to the default state.
Texture * getActiveTexture() const
Return a pointer to the currently active Texture object. This may return 0 if no texture is set.
Vector3f d_translation
translation vector
Definition RendererModules/Null/GeometryBuffer.h:83
RenderEffect * d_effect
RenderEffect that will be used by the GeometryBuffer.
Definition RendererModules/Null/GeometryBuffer.h:89
void setRenderEffect(RenderEffect *effect)
Set the RenderEffect to be used by this GeometryBuffer.
VertexList d_vertices
container where added geometry is stored.
Definition RendererModules/Null/GeometryBuffer.h:93
virtual ~NullGeometryBuffer()
Destructor.
Vector3f d_pivot
pivot point for rotation
Definition RendererModules/Null/GeometryBuffer.h:87
uint getVertexCount() const
Return the total number of vertices currently held by this GeometryBuffer object.
uint getBatchCount() const
Return the number of batches of geometry that this GeometryBuffer has split the vertices into.
void appendGeometry(const Vertex *const vbuff, uint vertex_count)
Append a number of vertices from an array to the GeometryBuffer.
void setClippingRegion(const Rectf ®ion)
Set the clipping region to be used when rendering this buffer.
Rectf d_clipRect
rectangular clip region
Definition RendererModules/Null/GeometryBuffer.h:79
void setRotation(const Quaternion &r)
Set the rotations to be applied to the geometry in the buffer when it is subsequently rendered.
std::vector< Vertex > VertexList
type of container used to queue the geometry
Definition RendererModules/Null/GeometryBuffer.h:91
NullGeometryBuffer()
Constructor.
RenderEffect * getRenderEffect()
Return the RenderEffect object that is assigned to this GeometryBuffer or 0 if none.
Quaternion d_rotation
rotation quaternion
Definition RendererModules/Null/GeometryBuffer.h:85
NullTexture * d_activeTexture
Texture that is set as active.
Definition RendererModules/Null/GeometryBuffer.h:77
void draw() const
Draw the geometry buffered within this GeometryBuffer object.
void appendVertex(const Vertex &vertex)
Append a single vertex to the buffer.
bool d_clippingActive
whether clipping will be active for the current batch
Definition RendererModules/Null/GeometryBuffer.h:81
void setPivot(const Vector3f &p)
Set the pivot point to be used when applying the rotations.
void setClippingActive(const bool active)
Set whether clipping will be active for subsequently added vertices.
void setActiveTexture(Texture *texture)
Set the active texture to be used with all subsequently added vertices.
Implementation of the CEGUI::Texture class for no particular engine.
Definition RendererModules/Null/Texture.h:43
Class to represent rotation, avoids Gimbal lock.
Definition Quaternion.h:69
Interface for objects that hook into RenderingWindow to affect the rendering process,...
Definition RenderEffect.h:42
Abstract base class specifying the required interface for Texture objects.
Definition Texture.h:54
Main namespace for Crazy Eddie's GUI Library.
Definition arch_overview.dox:1
structure that is used to hold details of a single vertex in 3D space.
Definition Vertex.h:42