27#ifndef _CEGUIOpenGLRenderTarget_h_
28#define _CEGUIOpenGLRenderTarget_h_
30#include "CEGUI/RendererModules/OpenGL/RendererBase.h"
31#include "../../RenderTarget.h"
32#include "../../Rect.h"
36# pragma warning(disable : 4251)
45template <
typename T = RenderTarget>
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: GeometryBuffer.h:44
Intermediate OpenGL implementation of a RenderTarget.
Definition: RendererModules/OpenGL/RenderTarget.h:47
mat4Pimpl * d_matrix
saved copy of projection matrix
Definition: RendererModules/OpenGL/RenderTarget.h:74
double d_viewDistance
tracks viewing distance (this is set up at the same time as d_matrix)
Definition: RendererModules/OpenGL/RenderTarget.h:78
const Rectf & getArea() const
Return the area defined for this RenderTarget.
void unprojectPoint(const GeometryBuffer &buff, const Vector2f &p_in, Vector2f &p_out) const
Take point p_in unproject it and put the result in p_out. Resulting point is local to GeometryBuffer ...
static const double d_yfov_tan
tangent of the y FOV half-angle; used to calculate viewing distance.
Definition: RendererModules/OpenGL/RenderTarget.h:72
void activate()
Activate the render target and put it in a state ready to be drawn to.
void draw(const GeometryBuffer &buffer)
Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents.
void draw(const RenderQueue &queue)
Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents.
void setArea(const Rectf &area)
Set the area for this RenderTarget. The exact action this function will take depends upon what the co...
virtual void updateMatrix() const
helper that initialises the cached matrix
void deactivate()
Deactivate the render target after having completed rendering.
OpenGLRendererBase & d_owner
OpenGLRendererBase that created this object.
Definition: RendererModules/OpenGL/RenderTarget.h:68
Rectf d_area
holds defined area for the RenderTarget
Definition: RendererModules/OpenGL/RenderTarget.h:70
OpenGLRenderTarget(OpenGLRendererBase &owner)
Constructor.
bool d_matrixValid
true if saved matrix is up to date
Definition: RendererModules/OpenGL/RenderTarget.h:76
Common base class used for other OpenGL (desktop or ES) based renderer modules.
Definition: RendererBase.h:54
Class that represents a queue of GeometryBuffer objects to be rendered.
Definition: RenderQueue.h:54
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
Definition: GlmPimpl.h:37