OpenGUI::OgreRenderer Class Reference

#include <Renderer_Ogre_Renderer.h>

List of all members.


Detailed Description

OpenGUI Renderer implementation that works with Ogre


Public Member Functions

 OgreRenderer (Ogre::Root *ogreRoot=0, Ogre::RenderSystem *ogreRenderSystem=0)
 Constructor.
virtual ~OgreRenderer ()
void setTextureResourceGroup (const String &ogreResourceGroup)
 Sets the resource group from which future textures will be loaded. Default is Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME.
const String & getTextureResourceGroup ()
 Returns the current resource group that textures are loaded from.
void reclaimBufferMemory ()
 This tests the batch buffer usage since the previous call to this function, and shortens it there is significant under utilization.
Texture * createTextureFromOgreTexturePtr (Ogre::TexturePtr &texture)
 Create a texture from an existing Ogre::TexturePtr object.
virtual void selectViewport (Viewport *activeViewport)
 See Renderer documentation from OpenGUI.
virtual void preRenderSetup ()
 See Renderer documentation from OpenGUI.
virtual void doRenderOperation (RenderOperation &renderOp)
 See Renderer documentation from OpenGUI.
virtual void postRenderCleanup ()
 See Renderer documentation from OpenGUI.
virtual Texture * createTextureFromFile (const String &filename)
 See Renderer documentation from OpenGUI.
virtual Texture * createTextureFromTextureData (const TextureData *textureData)
 See Renderer documentation from OpenGUI.
virtual void updateTextureFromTextureData (Texture *texture, const TextureData *textureData)
 See Renderer documentation from OpenGUI.
virtual void destroyTexture (Texture *texturePtr)
 See Renderer documentation from OpenGUI.
virtual bool supportsRenderToTexture ()
virtual void selectRenderContext (RenderTexture *context)
virtual void clearContents ()
virtual RenderTexture * createRenderTexture (const IVector2 &size)
virtual void destroyRenderTexture (RenderTexture *texturePtr)

Private Member Functions

void safeSetTextureState (Texture *texture, Texture *mask)
void _setTextureState (OgreTexture *texture, OgreTexture *mask)
void _setupHardwareBuffer (size_t numVerts)
void _teardownHardwareBuffer ()
void _resizeHardwareBuffer (size_t numVerts)
void _appendBuffer (TriangleList &triList)
void _executeBuffer ()
void safeExecuteBuffer ()
void safeAppendBuffer (TriangleList &triList)

Private Attributes

OgreFrameListenermOgreFrameListener
Ogre::Root * mOgreRoot
Ogre::RenderSystem * mRenderSystem
String mTextureResourceGroup
FVector2 mTexelOffset
bool mSupportRTT
bool mSupportNPOT
bool mInRender
OgreViewportmCurrentViewport
RenderTexture * mCurrentContext
FVector2 mTextureUVScale
Texture * mCurrentTextureState_Texture
Texture * mCurrentTextureState_Mask
Ogre::TextureUnitState::UVWAddressingMode mTextureAddressMode
Ogre::LayerBlendModeEx mColorBlendMode
Ogre::LayerBlendModeEx mAlphaBlendMode
FVector2 mViewportPixelShift
Ogre::HardwareVertexBufferSharedPtr mVertexBuffer
Ogre::RenderOperation mRenderOperation
size_t m_HWBufferSize
size_t m_HWBufferUsage
size_t m_HWBuffer_MaxUsageThisFrame
PolyVertexm_HWBufferPtr

Classes

struct  PolyVertex


Constructor & Destructor Documentation

OpenGUI::OgreRenderer::OgreRenderer Ogre::Root *  ogreRoot = 0,
Ogre::RenderSystem *  ogreRenderSystem = 0
 

Constructor.

OpenGUI::OgreRenderer::~OgreRenderer  )  [virtual]
 


Member Function Documentation

void OpenGUI::OgreRenderer::_appendBuffer TriangleList &  triList  )  [private]
 

void OpenGUI::OgreRenderer::_executeBuffer  )  [private]
 

void OpenGUI::OgreRenderer::_resizeHardwareBuffer size_t  numVerts  )  [private]
 

void OpenGUI::OgreRenderer::_setTextureState OgreTexture texture,
OgreTexture mask
[private]
 

void OpenGUI::OgreRenderer::_setupHardwareBuffer size_t  numVerts  )  [private]
 

void OpenGUI::OgreRenderer::_teardownHardwareBuffer  )  [private]
 

void OpenGUI::OgreRenderer::clearContents  )  [virtual]
 

RenderTexture * OpenGUI::OgreRenderer::createRenderTexture const IVector2 &  size  )  [virtual]
 

Texture * OpenGUI::OgreRenderer::createTextureFromFile const String &  filename  )  [virtual]
 

See Renderer documentation from OpenGUI.

Texture * OpenGUI::OgreRenderer::createTextureFromOgreTexturePtr Ogre::TexturePtr &  texture  ) 
 

Create a texture from an existing Ogre::TexturePtr object.

Texture * OpenGUI::OgreRenderer::createTextureFromTextureData const TextureData *  textureData  )  [virtual]
 

See Renderer documentation from OpenGUI.

void OpenGUI::OgreRenderer::destroyRenderTexture RenderTexture *  texturePtr  )  [virtual]
 

void OpenGUI::OgreRenderer::destroyTexture Texture *  texturePtr  )  [virtual]
 

See Renderer documentation from OpenGUI.

void OpenGUI::OgreRenderer::doRenderOperation RenderOperation &  renderOp  )  [virtual]
 

See Renderer documentation from OpenGUI.

const String & OpenGUI::OgreRenderer::getTextureResourceGroup  ) 
 

Returns the current resource group that textures are loaded from.

void OpenGUI::OgreRenderer::postRenderCleanup  )  [virtual]
 

See Renderer documentation from OpenGUI.

void OpenGUI::OgreRenderer::preRenderSetup  )  [virtual]
 

See Renderer documentation from OpenGUI.

void OpenGUI::OgreRenderer::reclaimBufferMemory  ) 
 

This tests the batch buffer usage since the previous call to this function, and shortens it there is significant under utilization.

Automatically called by the OgreFrameListener. You only need to call this if frame listeners are not being fired for some reason.

void OpenGUI::OgreRenderer::safeAppendBuffer TriangleList &  triList  )  [private]
 

void OpenGUI::OgreRenderer::safeExecuteBuffer  )  [private]
 

void OpenGUI::OgreRenderer::safeSetTextureState Texture *  texture,
Texture *  mask
[private]
 

void OpenGUI::OgreRenderer::selectRenderContext RenderTexture *  context  )  [virtual]
 

void OpenGUI::OgreRenderer::selectViewport Viewport *  activeViewport  )  [virtual]
 

See Renderer documentation from OpenGUI.

void OpenGUI::OgreRenderer::setTextureResourceGroup const String &  ogreResourceGroup  ) 
 

Sets the resource group from which future textures will be loaded. Default is Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME.

bool OpenGUI::OgreRenderer::supportsRenderToTexture  )  [virtual]
 

void OpenGUI::OgreRenderer::updateTextureFromTextureData Texture *  texture,
const TextureData *  textureData
[virtual]
 

See Renderer documentation from OpenGUI.


Member Data Documentation

size_t OpenGUI::OgreRenderer::m_HWBuffer_MaxUsageThisFrame [private]
 

PolyVertex* OpenGUI::OgreRenderer::m_HWBufferPtr [private]
 

size_t OpenGUI::OgreRenderer::m_HWBufferSize [private]
 

size_t OpenGUI::OgreRenderer::m_HWBufferUsage [private]
 

Ogre::LayerBlendModeEx OpenGUI::OgreRenderer::mAlphaBlendMode [private]
 

Ogre::LayerBlendModeEx OpenGUI::OgreRenderer::mColorBlendMode [private]
 

RenderTexture* OpenGUI::OgreRenderer::mCurrentContext [private]
 

Texture* OpenGUI::OgreRenderer::mCurrentTextureState_Mask [private]
 

Texture* OpenGUI::OgreRenderer::mCurrentTextureState_Texture [private]
 

OgreViewport* OpenGUI::OgreRenderer::mCurrentViewport [private]
 

bool OpenGUI::OgreRenderer::mInRender [private]
 

OgreFrameListener* OpenGUI::OgreRenderer::mOgreFrameListener [private]
 

Ogre::Root* OpenGUI::OgreRenderer::mOgreRoot [private]
 

Ogre::RenderOperation OpenGUI::OgreRenderer::mRenderOperation [private]
 

Ogre::RenderSystem* OpenGUI::OgreRenderer::mRenderSystem [private]
 

bool OpenGUI::OgreRenderer::mSupportNPOT [private]
 

bool OpenGUI::OgreRenderer::mSupportRTT [private]
 

FVector2 OpenGUI::OgreRenderer::mTexelOffset [private]
 

Ogre::TextureUnitState::UVWAddressingMode OpenGUI::OgreRenderer::mTextureAddressMode [private]
 

String OpenGUI::OgreRenderer::mTextureResourceGroup [private]
 

FVector2 OpenGUI::OgreRenderer::mTextureUVScale [private]
 

Ogre::HardwareVertexBufferSharedPtr OpenGUI::OgreRenderer::mVertexBuffer [private]
 

FVector2 OpenGUI::OgreRenderer::mViewportPixelShift [private]
 


The documentation for this class was generated from the following files:
Copyright © 2006 OpenGUI | OpenGUI.SF.net
Generated: Sun Sep 9 02:00:24 2007