Crazy Eddie's GUI System
0.8.7
|
27 #ifndef _CEGUIDirectFBGeometryBuffer_h_
28 #define _CEGUIDirectFBGeometryBuffer_h_
30 #include "CEGUI/GeometryBuffer.h"
31 #include "CEGUI/Rect.h"
32 #include "CEGUI/Quaternion.h"
40 class DirectFBRenderer;
41 class DirectFBTexture;
68 bool isClippingActive()
const;
77 IDirectFBSurface* texture;
114 #endif // end of guard _CEGUIDirectFBGeometryBuffer_h_
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: GeometryBuffer.h:44
std::vector< BatchInfo > BatchList
type of container that tracks BatchInfos.
Definition: RendererModules/DirectFB/GeometryBuffer.h:87
DirectFBRenderer & d_owner
DirectFBRenderer object that created and owns this GeometryBuffer.
Definition: RendererModules/DirectFB/GeometryBuffer.h:83
Texture * getActiveTexture() const
Return a pointer to the currently active Texture object. This may return 0 if no texture is set.
Vector3f d_pivot
pivot point for rotation
Definition: RendererModules/DirectFB/GeometryBuffer.h:103
RenderEffect * getRenderEffect()
Return the RenderEffect object that is assigned to this GeometryBuffer or 0 if none.
Implementation of CEGUI::Texture interface using DirectFB.
Definition: RendererModules/DirectFB/Texture.h:39
void setTranslation(const Vector3f &v)
Set the translation to be applied to the geometry in the buffer when it is subsequently rendered.
void setClippingActive(const bool active)
Set whether clipping will be active for subsequently added vertices.
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
Class to represent rotation, avoids Gimbal lock.
Definition: Quaternion.h:69
RenderEffect * d_effect
RenderEffect that will be used by the GeometryBuffer.
Definition: RendererModules/DirectFB/GeometryBuffer.h:105
void setRenderEffect(RenderEffect *effect)
Set the RenderEffect to be used by this GeometryBuffer.
std::vector< DFBVertex > VertexList
type of container used to queue the geometry
Definition: RendererModules/DirectFB/GeometryBuffer.h:91
structure that is used to hold details of a single vertex in 3D space.
Definition: Vertex.h:42
BatchList d_batches
list of texture batches added to the geometry buffer
Definition: RendererModules/DirectFB/GeometryBuffer.h:89
uint getBatchCount() const
Return the number of batches of geometry that this GeometryBuffer has split the vertices into.
DirectFBGeometryBuffer(DirectFBRenderer &owner)
Constructor.
s32 d_matrix[9]
model matrix cache
Definition: RendererModules/DirectFB/GeometryBuffer.h:107
void updateMatrix() const
update cached matrix
~DirectFBGeometryBuffer()
Destructor.
Abstract base class specifying the required interface for Texture objects.
Definition: Texture.h:54
void setRotation(const Quaternion &r)
Set the rotations to be applied to the geometry in the buffer when it is subsequently rendered.
bool d_matrixValid
true when d_matrix is valid and up to date
Definition: RendererModules/DirectFB/GeometryBuffer.h:109
Vector3f d_translation
translation vector
Definition: RendererModules/DirectFB/GeometryBuffer.h:99
uint getVertexCount() const
Return the total number of vertices currently held by this GeometryBuffer object.
Implemetation of CEGUI::GeometryBuffer for DirectFB.
Definition: RendererModules/DirectFB/GeometryBuffer.h:45
bool d_clippingActive
whether clipping will be active for the current batch
Definition: RendererModules/DirectFB/GeometryBuffer.h:97
void appendVertex(const Vertex &vertex)
Append a single vertex to the buffer.
void setClippingRegion(const Rectf ®ion)
Set the clipping region to be used when rendering this buffer.
type to track info for per-texture sub batches of geometry
Definition: RendererModules/DirectFB/GeometryBuffer.h:76
VertexList d_vertices
container where added geometry is stored.
Definition: RendererModules/DirectFB/GeometryBuffer.h:93
void appendGeometry(const Vertex *const vbuff, uint vertex_count)
Append a number of vertices from an array to the GeometryBuffer.
void setPivot(const Vector3f &p)
Set the pivot point to be used when applying the rotations.
Quaternion d_rotation
rotation vector
Definition: RendererModules/DirectFB/GeometryBuffer.h:101
Interface for objects that hook into RenderingWindow to affect the rendering process,...
Definition: RenderEffect.h:42
void setActiveTexture(Texture *texture)
Set the active texture to be used with all subsequently added vertices.
void draw() const
Draw the geometry buffered within this GeometryBuffer object.
void reset()
Clear all buffered data and reset the GeometryBuffer to the default state.
Implementation of CEGUI::Renderer interface using DirectFB.
Definition: RendererModules/DirectFB/Renderer.h:45
Rectf d_clipRect
rectangular clip region
Definition: RendererModules/DirectFB/GeometryBuffer.h:95
DirectFBTexture * d_activeTexture
last texture that was set as active
Definition: RendererModules/DirectFB/GeometryBuffer.h:85