Crazy Eddie's GUI System
0.8.7
|
Renderer class to interface with OpenGLES. More...
Public Types | |
enum | TextureTargetType { TTT_AUTO, TTT_FBO, TTT_PBUFFER, TTT_NONE } |
Enumeration of valid texture target types. More... | |
Public Member Functions | |
RenderTarget & | getDefaultRenderTarget () |
Returns the default RenderTarget object. The default render target is is typically one that targets the entire screen (or rendering window). More... | |
GeometryBuffer & | createGeometryBuffer () |
Create a new GeometryBuffer and return a reference to it. You should remove the GeometryBuffer from any RenderQueues and call destroyGeometryBuffer when you want to destroy the GeometryBuffer. More... | |
void | destroyGeometryBuffer (const GeometryBuffer &buffer) |
Destroy a GeometryBuffer that was returned when calling the createGeometryBuffer function. Before destroying any GeometryBuffer you should ensure that it has been removed from any RenderQueue that was using it. More... | |
void | destroyAllGeometryBuffers () |
Destroy all GeometryBuffer objects created by this Renderer. | |
TextureTarget * | createTextureTarget () |
Create a TextureTarget that can be used to cache imagery; this is a RenderTarget that does not lose it's content from one frame to another. More... | |
void | destroyTextureTarget (TextureTarget *target) |
Function that cleans up TextureTarget objects created with the createTextureTarget function. More... | |
void | destroyAllTextureTargets () |
Destory all TextureTarget objects created by this Renderer. | |
Texture & | createTexture (const String &name) |
Create a 'null' Texture object. More... | |
Texture & | createTexture (const String &name, const String &filename, const String &resourceGroup) |
Create a Texture object using the given image file. More... | |
Texture & | createTexture (const String &name, const Sizef &size) |
Create a Texture object with the given pixel dimensions as specified by size. More... | |
void | destroyTexture (Texture &texture) |
Destroy a Texture object that was previously created by calling the createTexture functions. More... | |
void | destroyTexture (const String &name) |
Destroy a Texture object that was previously created by calling the createTexture functions. More... | |
void | destroyAllTextures () |
Destroy all Texture objects created by this Renderer. | |
Texture & | getTexture (const String &name) const |
Return a Texture object that was previously created by calling the createTexture functions. More... | |
bool | isTextureDefined (const String &name) const |
Return whether a texture with the given name exists. | |
void | beginRendering () |
Perform any operations required to put the system into a state ready for rendering operations to begin. | |
void | endRendering () |
Perform any operations required to finalise rendering. | |
void | setDisplaySize (const Sizef &sz) |
Set the size of the display or host window in pixels for this Renderer object. More... | |
const Sizef & | getDisplaySize () const |
Return the size of the display or host window in pixels. More... | |
const Vector2f & | getDisplayDPI () const |
Return the resolution of the display or host window in dots per inch. More... | |
uint | getMaxTextureSize () const |
Return the pixel size of the maximum supported texture. More... | |
const String & | getIdentifierString () const |
Return identification string for the renderer module. More... | |
Texture & | createTexture (const String &name, GLuint tex, const Sizef &sz) |
Create a texture that uses an existing OpenGLES texture with the specified size. Note that it is your responsibility to ensure that the OpenGLES texture is valid and that the specified size is accurate. More... | |
void | enableExtraStateSettings (bool setting) |
Tells the renderer to initialise some extra states beyond what it directly needs itself for CEGUI. More... | |
void | grabTextures () |
Grabs all the loaded textures from Texture RAM and stores them in a local data buffer. This function invalidates all textures, and restoreTextures must be called before any CEGUI rendering is done for predictable results. | |
void | restoreTextures () |
Restores all the loaded textures from the local data buffers previously created by 'grabTextures'. | |
Sizef | getAdjustedTextureSize (const Sizef &sz) const |
Helper to return a valid texture size according to reported OpenGLES capabilities. More... | |
bool | isTexCoordSystemFlipped () const |
Returns if the texture coordinate system is vertically flipped or not. The original of a texture coordinate system is typically located either at the the top-left or the bottom-left. CEGUI, Direct3D and most rendering engines assume it to be on the top-left. OpenGL assumes it to be at the bottom left. More... | |
Public Member Functions inherited from CEGUI::Renderer | |
virtual | ~Renderer () |
Destructor. | |
Static Public Member Functions | |
static OpenGLESRenderer & | bootstrapSystem (const TextureTargetType tt_type=TTT_AUTO, const int abi=CEGUI_VERSION_ABI) |
Convenience function that creates the required objects to initialise the CEGUI system. More... | |
static OpenGLESRenderer & | bootstrapSystem (const Sizef &display_size, const TextureTargetType tt_type=TTT_AUTO, const int abi=CEGUI_VERSION_ABI) |
Convenience function that creates the required objects to initialise the CEGUI system. More... | |
static void | destroySystem () |
Convenience function to cleanup the CEGUI system and related objects that were created by calling the bootstrapSystem function. More... | |
static OpenGLESRenderer & | create (const TextureTargetType tt_type=TTT_AUTO, const int abi=CEGUI_VERSION_ABI) |
Create an OpenGLESRenderer object. More... | |
static OpenGLESRenderer & | create (const Sizef &display_size, const TextureTargetType tt_type=TTT_AUTO, const int abi=CEGUI_VERSION_ABI) |
Create an OpenGLESRenderer object. More... | |
static void | destroy (OpenGLESRenderer &renderer) |
Destroy an OpenGLESRenderer object. More... | |
static bool | isGLExtensionSupported (const char *extension) |
Check if provided extension is supported on current platform. Khronos reference implementation. More... | |
static float | getNextPOTSize (const float f) |
Utility function that will return f if it's a power of two, or the next power of two up from f if it's not. | |
Renderer class to interface with OpenGLES.
|
static |
Convenience function that creates the required objects to initialise the CEGUI system.
The created Renderer will use the current OpenGL ES viewport as it's default surface size.
This will create and initialise the following objects for you:
tt_type | Specifies one of the TextureTargetType enumerated values indicating the desired TextureTarget type to be used. Defaults to TTT_AUTO. |
abi | This must be set to CEGUI_VERSION_ABI |
|
static |
Convenience function that creates the required objects to initialise the CEGUI system.
The created Renderer will use /a display_size as the default surface size.
This will create and initialise the following objects for you:
display_size | Size object describing the initial display dimensions. |
tt_type | Specifies one of the TextureTargetType enumerated values indicating the desired TextureTarget type to be used. Defaults to TTT_AUTO. |
abi | This must be set to CEGUI_VERSION_ABI |
|
static |
Create an OpenGLESRenderer object.
tt_type | Specifies one of the TextureTargetType enumerated values indicating the desired TextureTarget type to be used. |
abi | This must be set to CEGUI_VERSION_ABI |
|
static |
Create an OpenGLESRenderer object.
display_size | Size object describing the initial display resolution. |
tt_type | Specifies one of the TextureTargetType enumerated values indicating the desired TextureTarget type to be used. |
abi | This must be set to CEGUI_VERSION_ABI |
|
virtual |
Create a new GeometryBuffer and return a reference to it. You should remove the GeometryBuffer from any RenderQueues and call destroyGeometryBuffer when you want to destroy the GeometryBuffer.
Implements CEGUI::Renderer.
Create a 'null' Texture object.
name | String holding the name for the new texture. Texture names must be unique within the Renderer. |
Implements CEGUI::Renderer.
|
virtual |
Create a Texture object using the given image file.
name | String holding the name for the new texture. Texture names must be unique within the Renderer. |
filename | String object that specifies the path and filename of the image file to use when creating the texture. |
resourceGroup | String objet that specifies the resource group identifier to be passed to the resource provider when loading the texture file filename. |
Implements CEGUI::Renderer.
Create a Texture object with the given pixel dimensions as specified by size.
name | String holding the name for the new texture. Texture names must be unique within the Renderer. |
size | Size object that describes the desired texture size. |
Implements CEGUI::Renderer.
Texture& CEGUI::OpenGLESRenderer::createTexture | ( | const String & | name, |
GLuint | tex, | ||
const Sizef & | sz | ||
) |
Create a texture that uses an existing OpenGLES texture with the specified size. Note that it is your responsibility to ensure that the OpenGLES texture is valid and that the specified size is accurate.
sz | Size object that describes the pixel size of the OpenGLES texture identified by tex. |
|
virtual |
Create a TextureTarget that can be used to cache imagery; this is a RenderTarget that does not lose it's content from one frame to another.
If the renderer is unable to offer such a thing, 0 should be returned.
Implements CEGUI::Renderer.
|
static |
Destroy an OpenGLESRenderer object.
renderer | The OpenGLESRenderer object to be destroyed. |
|
virtual |
Destroy a GeometryBuffer that was returned when calling the createGeometryBuffer function. Before destroying any GeometryBuffer you should ensure that it has been removed from any RenderQueue that was using it.
buffer | The GeometryBuffer object to be destroyed. |
Implements CEGUI::Renderer.
|
static |
Convenience function to cleanup the CEGUI system and related objects that were created by calling the bootstrapSystem function.
This function will destroy the following objects for you:
|
virtual |
Destroy a Texture object that was previously created by calling the createTexture functions.
texture | Texture object to be destroyed. |
Implements CEGUI::Renderer.
|
virtual |
Destroy a Texture object that was previously created by calling the createTexture functions.
name | String holding the name of the texture to destroy. |
Implements CEGUI::Renderer.
|
virtual |
Function that cleans up TextureTarget objects created with the createTextureTarget function.
target | A pointer to a TextureTarget object that was previously returned from a call to createTextureTarget. |
Implements CEGUI::Renderer.
void CEGUI::OpenGLESRenderer::enableExtraStateSettings | ( | bool | setting | ) |
Tells the renderer to initialise some extra states beyond what it directly needs itself for CEGUI.
This option is useful in cases where you've made changes to the default OpenGLES state and do not want to save/restore those between CEGUI rendering calls. Note that this option will not deal with every possible state or extension - if you want a state added here, make a request and we'll consider it ;)
|
virtual |
Returns the default RenderTarget object. The default render target is is typically one that targets the entire screen (or rendering window).
Implements CEGUI::Renderer.
|
virtual |
Return the resolution of the display or host window in dots per inch.
Implements CEGUI::Renderer.
|
virtual |
Return the size of the display or host window in pixels.
Implements CEGUI::Renderer.
|
virtual |
Return identification string for the renderer module.
Implements CEGUI::Renderer.
|
virtual |
Return the pixel size of the maximum supported texture.
Implements CEGUI::Renderer.
Return a Texture object that was previously created by calling the createTexture functions.
Implements CEGUI::Renderer.
|
static |
Check if provided extension is supported on current platform. Khronos reference implementation.
extension | Provided extension string identification |
|
inline |
Returns if the texture coordinate system is vertically flipped or not. The original of a texture coordinate system is typically located either at the the top-left or the bottom-left. CEGUI, Direct3D and most rendering engines assume it to be on the top-left. OpenGL assumes it to be at the bottom left.
This function is intended to be used when generating geometry for rendering the TextureTarget onto another surface. It is also intended to be used when trying to use a custom texture (RTT) inside CEGUI using the Image class, in order to determine the Image coordinates correctly.
|
virtual |
Set the size of the display or host window in pixels for this Renderer object.
This is intended to be called by the System as part of the notification process when display size changes are notified to it via the System::notifyDisplaySizeChanged function.
size | Size object describing the dimesions of the current or host window in pixels. |
Implements CEGUI::Renderer.