|
Crazy Eddie's GUI System
0.8.6
|
Implementation of CEGUI::GeometryBuffer for the Ogre engine. More...
Inheritance diagram for CEGUI::OgreGeometryBuffer:
Collaboration diagram for CEGUI::OgreGeometryBuffer:Classes | |
| struct | BatchInfo |
| type to track info for per-texture sub batches of geometry More... | |
| struct | OgreVertex |
| vertex structure used internally and also by Ogre. More... | |
Public Member Functions | |
| OgreGeometryBuffer (OgreRenderer &owner, Ogre::RenderSystem &rs) | |
| Constructor. | |
| virtual | ~OgreGeometryBuffer () |
| Destructor. | |
| const Ogre::Matrix4 & | getMatrix () const |
| return the transformation matrix used for this buffer. | |
| virtual void | draw () const |
| Draw the geometry buffered within this GeometryBuffer object. | |
| virtual void | setTranslation (const Vector3f &v) |
| Set the translation to be applied to the geometry in the buffer when it is subsequently rendered. More... | |
| virtual void | setRotation (const Quaternion &r) |
| Set the rotations to be applied to the geometry in the buffer when it is subsequently rendered. More... | |
| virtual void | setPivot (const Vector3f &p) |
| Set the pivot point to be used when applying the rotations. More... | |
| virtual void | setClippingRegion (const Rectf ®ion) |
| Set the clipping region to be used when rendering this buffer. | |
| virtual void | appendVertex (const Vertex &vertex) |
| Append a single vertex to the buffer. More... | |
| virtual void | appendGeometry (const Vertex *const vbuff, uint vertex_count) |
| Append a number of vertices from an array to the GeometryBuffer. More... | |
| virtual void | setActiveTexture (Texture *texture) |
| Set the active texture to be used with all subsequently added vertices. More... | |
| virtual void | reset () |
| Clear all buffered data and reset the GeometryBuffer to the default state. | |
| virtual Texture * | getActiveTexture () const |
| Return a pointer to the currently active Texture object. This may return 0 if no texture is set. More... | |
| virtual uint | getVertexCount () const |
| Return the total number of vertices currently held by this GeometryBuffer object. More... | |
| virtual uint | getBatchCount () const |
| Return the number of batches of geometry that this GeometryBuffer has split the vertices into. More... | |
| virtual void | setRenderEffect (RenderEffect *effect) |
| Set the RenderEffect to be used by this GeometryBuffer. More... | |
| virtual RenderEffect * | getRenderEffect () |
| Return the RenderEffect object that is assigned to this GeometryBuffer or 0 if none. | |
| void | setClippingActive (const bool active) |
| Set whether clipping will be active for subsequently added vertices. More... | |
| bool | isClippingActive () const |
Public Member Functions inherited from CEGUI::GeometryBuffer | |
| virtual | ~GeometryBuffer () |
| Destructor. | |
| virtual void | setBlendMode (const BlendMode mode) |
| Set the blend mode option to use when rendering this GeometryBuffer. More... | |
| virtual BlendMode | getBlendMode () const |
| Return the blend mode that is set to be used for this GeometryBuffer. More... | |
Protected Types | |
| typedef std::vector< BatchInfo > | BatchList |
| type of container that tracks BatchInfos. | |
| typedef std::vector< OgreVertex > | VertexList |
| type of container used to queue the geometry | |
Protected Member Functions | |
| Ogre::RGBA | colourToOgre (const Colour &col) const |
| convert CEGUI::colour into something Ogre can use | |
| void | updateMatrix () const |
| update cached matrix | |
| void | syncHardwareBuffer () const |
| Synchronise data in the hardware buffer with what's been added. | |
| void | initialiseTextureStates () const |
| set up texture related states | |
Protected Member Functions inherited from CEGUI::GeometryBuffer | |
| GeometryBuffer () | |
| Constructor. | |
Protected Attributes | |
| OgreRenderer & | d_owner |
| Renderer object that owns this GeometryBuffer. | |
| Ogre::RenderSystem & | d_renderSystem |
| Ogre render system we're to use. | |
| OgreTexture * | d_activeTexture |
| Texture that is set as active. | |
| Rectf | d_clipRect |
| rectangular clip region | |
| bool | d_clippingActive |
| whether clipping will be active for the current batch | |
| Vector3f | d_translation |
| translation vector | |
| Quaternion | d_rotation |
| rotation quaternion | |
| Vector3f | d_pivot |
| pivot point for rotation | |
| RenderEffect * | d_effect |
| RenderEffect that will be used by the GeometryBuffer. | |
| Vector2f | d_texelOffset |
| offset to be applied to all geometry | |
| Ogre::Matrix4 | d_matrix |
| model matrix cache | |
| bool | d_matrixValid |
| true when d_matrix is valid and up to date | |
| Ogre::RenderOperation | d_renderOp |
| Render operation for this buffer. | |
| Ogre::HardwareVertexBufferSharedPtr | d_hwBuffer |
| H/W buffer where the vertices are rendered from. | |
| bool | d_sync |
| whether the h/w buffer is in sync with the added geometry | |
| BatchList | d_batches |
| list of texture batches added to the geometry buffer | |
| VertexList | d_vertices |
| container where added geometry is stored. | |
Protected Attributes inherited from CEGUI::GeometryBuffer | |
| BlendMode | d_blendMode |
| The BlendMode to use when rendering this GeometryBuffer. | |
Implementation of CEGUI::GeometryBuffer for the Ogre engine.
|
virtual |
Append a number of vertices from an array to the GeometryBuffer.
| vbuff | Pointer to an array of Vertex objects that describe the vertices that are to be added to the GeometryBuffer. |
| vertex_count | The number of Vertex objects from the array vbuff that are to be added to the GeometryBuffer. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Append a single vertex to the buffer.
| vertex | Vertex object describing the vertex to be added to the GeometryBuffer. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Return a pointer to the currently active Texture object. This may return 0 if no texture is set.
Implements CEGUI::GeometryBuffer.
|
virtual |
Return the number of batches of geometry that this GeometryBuffer has split the vertices into.
Implements CEGUI::GeometryBuffer.
|
virtual |
Return the total number of vertices currently held by this GeometryBuffer object.
Implements CEGUI::GeometryBuffer.
|
virtual |
Set the active texture to be used with all subsequently added vertices.
| texture | Pointer to a Texture object that shall be used for subsequently added vertices. This may be 0, in which case texturing will be disabled for subsequently added vertices. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Set whether clipping will be active for subsequently added vertices.
| active |
|
Implements CEGUI::GeometryBuffer.
|
virtual |
Set the pivot point to be used when applying the rotations.
| p | Vector3 describing the location of the pivot point to be used when applying the rotation to the geometry. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Set the RenderEffect to be used by this GeometryBuffer.
| effect | Pointer to the RenderEffect to be used during renderng of the GeometryBuffer. May be 0 to remove a previously added RenderEffect. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Set the rotations to be applied to the geometry in the buffer when it is subsequently rendered.
| r | Quaternion describing the rotation to be used. |
Implements CEGUI::GeometryBuffer.
|
virtual |
Set the translation to be applied to the geometry in the buffer when it is subsequently rendered.
| v | Vector3 describing the three axis translation vector to be used. |
Implements CEGUI::GeometryBuffer.