Crazy Eddies GUI System  0.7.1
Public Member Functions | Protected Attributes | List of all members
CEGUI::OpenGLTextureTarget Class Reference

OpenGLTextureTarget - Common base class for all OpenGL render targets based on some form of RTT support. More...

Inherits CEGUI::OpenGLRenderTarget, and CEGUI::TextureTarget.

Inherited by CEGUI::OpenGLApplePBTextureTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, and CEGUI::OpenGLWGLPBTextureTarget.

+ Collaboration diagram for CEGUI::OpenGLTextureTarget:

Public Member Functions

 OpenGLTextureTarget (OpenGLRenderer &owner)
 constructor.
 
virtual ~OpenGLTextureTarget ()
 destructor
 
bool isImageryCache () const
 Return whether the RenderTarget is an implementation that caches actual rendered imagery. More...
 
TexturegetTexture () const
 Return a pointer to the CEGUI::Texture that the TextureTarget is using. More...
 
bool isRenderingInverted () const
 Return whether rendering done on the target texture is inverted in relation to regular textures. More...
 
virtual void grabTexture ()
 Grab the texture to a local buffer. More...
 
virtual void restoreTexture ()
 Restore the texture from the locally buffered copy previously create by a call to grabTexture.
 
- Public Member Functions inherited from CEGUI::OpenGLRenderTarget
 OpenGLRenderTarget (OpenGLRenderer &owner)
 Constructor.
 
void draw (const GeometryBuffer &buffer)
 Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents. More...
 
void draw (const RenderQueue &queue)
 Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents. More...
 
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). More...
 
const RectgetArea () const
 Return the area defined for this RenderTarget. More...
 
void activate ()
 Activate the render target and put it in a state ready to be drawn to. More...
 
void deactivate ()
 Deactivate the render target after having completed rendering. More...
 
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.
 
- Public Member Functions inherited from CEGUI::RenderTarget
virtual ~RenderTarget ()
 Destructor.
 
- Public Member Functions inherited from CEGUI::TextureTarget
virtual void clear ()=0
 Clear the surface of the underlying texture.
 
virtual void declareRenderSize (const Size &sz)=0
 Used to declare to the TextureTarget the largest size, in pixels, of the next set of incoming rendering operations. More...
 

Protected Attributes

GLuint d_texture
 Associated OpenGL texture ID.
 
OpenGLTextured_CEGUITexture
 we use this to wrap d_texture so it can be used by the core CEGUI lib.
 
- Protected Attributes inherited from CEGUI::OpenGLRenderTarget
OpenGLRendererd_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)
 

Additional Inherited Members

- Protected Member Functions inherited from CEGUI::OpenGLRenderTarget
virtual void updateMatrix () const
 helper that initialises the cached matrix
 
- Static Protected Attributes inherited from CEGUI::OpenGLRenderTarget
static const double d_yfov_tan
 tangent of the y FOV half-angle; used to calculate viewing distance.
 

Detailed Description

OpenGLTextureTarget - Common base class for all OpenGL render targets based on some form of RTT support.

Member Function Documentation

Texture& CEGUI::OpenGLTextureTarget::getTexture ( ) const
virtual

Return a pointer to the CEGUI::Texture that the TextureTarget is using.

Returns
Texture object that the TextureTarget uses when rendering imagery.

Implements CEGUI::TextureTarget.

virtual void CEGUI::OpenGLTextureTarget::grabTexture ( )
virtual

Grab the texture to a local buffer.

This will destroy the OpenGL texture, and restoreTexture must be called before using it again.

Reimplemented in CEGUI::OpenGLWGLPBTextureTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, and CEGUI::OpenGLApplePBTextureTarget.

bool CEGUI::OpenGLTextureTarget::isImageryCache ( ) const
virtual

Return whether the RenderTarget is an implementation that caches actual rendered imagery.

Typically it is expected that texture based RenderTargets would return
true in response to this call.  Other types of RenderTarget, like
view port based targets, will more likely return false.
Returns

Implements CEGUI::RenderTarget.

bool CEGUI::OpenGLTextureTarget::isRenderingInverted ( ) const
virtual

Return whether rendering done on the target texture is inverted in relation to regular textures.

This is intended to be used when generating geometry for rendering the
TextureTarget onto another surface.
Returns
  • true if the texture content should be considered as inverted vertically in comparison with other regular textures.
  • false if the texture content has the same orientation as regular textures.

Implements CEGUI::TextureTarget.