Crazy Eddies GUI System
0.7.6
|
Intermediate OpenGL implementation of a RenderTarget. More...
Public Member Functions | |
OpenGLRenderTarget (OpenGLRenderer &owner) | |
Constructor. | |
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 Rect &area) |
Set the area for this RenderTarget. The exact action this function will take depends upon what the concrete class is representing. For example, with a 'view port' style RenderTarget, this should set the area that the view port occupies on the display (or rendering window). | |
const Rect & | getArea () const |
Return the area defined for this RenderTarget. | |
void | activate () |
Activate the render target and put it in a state ready to be drawn to. | |
void | deactivate () |
Deactivate the render target after having completed rendering. | |
void | unprojectPoint (const GeometryBuffer &buff, const Vector2 &p_in, Vector2 &p_out) const |
Take point p_in unproject it and put the result in p_out. Resulting point is local to GeometryBuffer buff. | |
Protected Member Functions | |
virtual void | updateMatrix () const |
helper that initialises the cached matrix | |
Protected Attributes | |
OpenGLRenderer & | d_owner |
OpenGLRenderer that created this object. | |
Rect | d_area |
holds defined area for the RenderTarget | |
double | d_matrix [16] |
saved copy of projection matrix | |
bool | d_matrixValid |
true if saved matrix is up to date | |
double | d_viewDistance |
tracks viewing distance (this is set up at the same time as d_matrix) | |
Static Protected Attributes | |
static const double | d_yfov_tan |
tangent of the y FOV half-angle; used to calculate viewing distance. |
Intermediate OpenGL implementation of a RenderTarget.
void CEGUI::OpenGLRenderTarget::activate | ( | ) | [virtual] |
Activate the render target and put it in a state ready to be drawn to.
Implements CEGUI::RenderTarget.
Reimplemented in CEGUI::OpenGLWGLPBTextureTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, and CEGUI::OpenGLApplePBTextureTarget.
void CEGUI::OpenGLRenderTarget::deactivate | ( | ) | [virtual] |
Deactivate the render target after having completed rendering.
Implements CEGUI::RenderTarget.
Reimplemented in CEGUI::OpenGLWGLPBTextureTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, and CEGUI::OpenGLApplePBTextureTarget.
void CEGUI::OpenGLRenderTarget::draw | ( | const GeometryBuffer & | buffer | ) | [virtual] |
Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents.
buffer | GeometryBuffer object holding the geometry that should be drawn to the RenderTarget. |
Implements CEGUI::RenderTarget.
void CEGUI::OpenGLRenderTarget::draw | ( | const RenderQueue & | queue | ) | [virtual] |
Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents.
queue | RenderQueue object holding the geometry that should be drawn to the RenderTarget. |
Implements CEGUI::RenderTarget.
const Rect& CEGUI::OpenGLRenderTarget::getArea | ( | ) | const [virtual] |
Return the area defined for this RenderTarget.
Implements CEGUI::RenderTarget.
void CEGUI::OpenGLRenderTarget::setArea | ( | const Rect & | area | ) | [virtual] |
Set the area for this RenderTarget. The exact action this function will take depends upon what the concrete class is representing. For example, with a 'view port' style RenderTarget, this should set the area that the view port occupies on the display (or rendering window).
area | Rect object describing the new area to be assigned to the RenderTarget. |
InvalidRequestException | May be thrown if the RenderTarget does not support setting or changing its area, or if the area change can not be satisfied for some reason. |
Implements CEGUI::RenderTarget.