Crazy Eddies GUI System  0.7.2
Public Member Functions | List of all members
CEGUI::RenderTarget Class Referenceabstract

Defines interface to some surface that can be rendered to. Concrete instances of objects that implement the RenderTarget interface are normally created via the Renderer object. More...

Inherited by CEGUI::Direct3D10RenderTarget [virtual], CEGUI::Direct3D11RenderTarget [virtual], CEGUI::Direct3D9RenderTarget [virtual], CEGUI::DirectFBRenderTarget, CEGUI::IrrlichtRenderTarget [virtual], CEGUI::NullRenderTarget [virtual], CEGUI::OgreRenderTarget [virtual], CEGUI::OpenGLRenderTarget [virtual], and CEGUI::TextureTarget [virtual].

Public Member Functions

virtual ~RenderTarget ()
 Destructor.
 
virtual void draw (const GeometryBuffer &buffer)=0
 Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents. More...
 
virtual void draw (const RenderQueue &queue)=0
 Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents. More...
 
virtual void setArea (const Rect &area)=0
 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...
 
virtual const RectgetArea () const =0
 Return the area defined for this RenderTarget. More...
 
virtual bool isImageryCache () const =0
 Return whether the RenderTarget is an implementation that caches actual rendered imagery. More...
 
virtual void activate ()=0
 Activate the render target and put it in a state ready to be drawn to. More...
 
virtual void deactivate ()=0
 Deactivate the render target after having completed rendering. More...
 
virtual void unprojectPoint (const GeometryBuffer &buff, const Vector2 &p_in, Vector2 &p_out) const =0
 Take point p_in unproject it and put the result in p_out. Resulting point is local to GeometryBuffer buff.
 

Detailed Description

Defines interface to some surface that can be rendered to. Concrete instances of objects that implement the RenderTarget interface are normally created via the Renderer object.

Member Function Documentation

virtual void CEGUI::RenderTarget::activate ( )
pure virtual

Activate the render target and put it in a state ready to be drawn to.

Note
You MUST call this before doing any rendering - if you do not call this, in the unlikely event that your application actually works, it will likely stop working in some future version.

Implemented in CEGUI::OgreRenderTarget, CEGUI::Direct3D9TextureTarget, CEGUI::IrrlichtRenderTarget, CEGUI::OpenGLWGLPBTextureTarget, CEGUI::Direct3D10TextureTarget, CEGUI::Direct3D9RenderTarget, CEGUI::Direct3D11TextureTarget, CEGUI::IrrlichtTextureTarget, CEGUI::Direct3D10RenderTarget, CEGUI::Direct3D11RenderTarget, CEGUI::DirectFBRenderTarget, CEGUI::NullRenderTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, CEGUI::OpenGLRenderTarget, and CEGUI::OpenGLApplePBTextureTarget.

virtual void CEGUI::RenderTarget::deactivate ( )
pure virtual

Deactivate the render target after having completed rendering.

Note
You MUST call this after you finish rendering to the target - if you do not call this, in the unlikely event that your application actually works, it will likely stop working in some future version.

Implemented in CEGUI::OgreRenderTarget, CEGUI::Direct3D9TextureTarget, CEGUI::IrrlichtRenderTarget, CEGUI::OpenGLWGLPBTextureTarget, CEGUI::Direct3D10TextureTarget, CEGUI::Direct3D9RenderTarget, CEGUI::Direct3D11TextureTarget, CEGUI::IrrlichtTextureTarget, CEGUI::Direct3D10RenderTarget, CEGUI::Direct3D11RenderTarget, CEGUI::DirectFBRenderTarget, CEGUI::NullRenderTarget, CEGUI::OpenGLFBOTextureTarget, CEGUI::OpenGLGLXPBTextureTarget, CEGUI::OpenGLRenderTarget, and CEGUI::OpenGLApplePBTextureTarget.

virtual void CEGUI::RenderTarget::draw ( const GeometryBuffer buffer)
pure virtual

Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents.

Parameters
bufferGeometryBuffer object holding the geometry that should be drawn to the RenderTarget.

Implemented in CEGUI::OgreRenderTarget, CEGUI::IrrlichtRenderTarget, CEGUI::Direct3D9RenderTarget, CEGUI::Direct3D10RenderTarget, CEGUI::Direct3D11RenderTarget, CEGUI::NullRenderTarget, CEGUI::OpenGLRenderTarget, and CEGUI::DirectFBRenderTarget.

virtual void CEGUI::RenderTarget::draw ( const RenderQueue queue)
pure virtual

Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents.

Parameters
queueRenderQueue object holding the geometry that should be drawn to the RenderTarget.

Implemented in CEGUI::OgreRenderTarget, CEGUI::IrrlichtRenderTarget, CEGUI::Direct3D9RenderTarget, CEGUI::Direct3D10RenderTarget, CEGUI::Direct3D11RenderTarget, CEGUI::NullRenderTarget, CEGUI::OpenGLRenderTarget, and CEGUI::DirectFBRenderTarget.

virtual const Rect& CEGUI::RenderTarget::getArea ( ) const
pure virtual
virtual bool CEGUI::RenderTarget::isImageryCache ( ) const
pure 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

Implemented in CEGUI::Direct3D9TextureTarget, CEGUI::Direct3D9ViewportTarget, CEGUI::OpenGLViewportTarget, CEGUI::Direct3D10TextureTarget, CEGUI::Direct3D11TextureTarget, CEGUI::IrrlichtTextureTarget, CEGUI::Direct3D10ViewportTarget, CEGUI::OgreWindowTarget, CEGUI::Direct3D11ViewportTarget, CEGUI::NullRenderTarget, CEGUI::NullTextureTarget, CEGUI::OgreTextureTarget, CEGUI::DirectFBRenderTarget, CEGUI::OpenGLTextureTarget, and CEGUI::IrrlichtWindowTarget.

virtual void CEGUI::RenderTarget::setArea ( const Rect area)
pure 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).

Parameters
areaRect object describing the new area to be assigned to the RenderTarget.
Exceptions
InvalidRequestExceptionMay 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.

Implemented in CEGUI::OgreRenderTarget, CEGUI::IrrlichtRenderTarget, CEGUI::Direct3D9RenderTarget, CEGUI::Direct3D10RenderTarget, CEGUI::Direct3D11RenderTarget, CEGUI::NullRenderTarget, CEGUI::OpenGLRenderTarget, and CEGUI::DirectFBRenderTarget.