Eidolon
|
#include <RenderTypes.h>
Public Member Functions | |
virtual | ~Figure () |
virtual const char * | getName () |
Get the figure's name. More... | |
virtual void | setPosition (const vec3 &v) |
Set the figure's position in world space. More... | |
virtual void | setScale (const vec3 &v) |
Set the figure's scale values. More... | |
virtual void | setRotation (const rotator &r) |
Set the figure's rotation. More... | |
virtual void | setTransform (const transform &t) |
Set position, rotation, and scale for this figure simultaneously. More... | |
virtual void | setTransform (const vec3 &trans, const vec3 &scale, const rotator &rot) |
Set position, rotation, and scale for this figure simultaneously. More... | |
virtual vec3 | getPosition (bool isDerived=false) const |
Get the figure's position in world space. More... | |
virtual vec3 | getScale (bool isDerived=false) const |
Get the figure's scale values. More... | |
virtual rotator | getRotation (bool isDerived=false) const |
Get the figure's rotation. More... | |
virtual transform | getTransform (bool isDerived=false) const |
Get the figure's position, scale, and rotation transform. More... | |
virtual void | setMaterial (const char *mat) throw (RenderException) |
Set the figure's material, this must name an existing material. More... | |
virtual void | setMaterial (const Material *mat) throw (RenderException) |
Set's the figure's material. More... | |
virtual const char * | getMaterial () const |
Get the figure's material name. More... | |
virtual std::pair< vec3, vec3 > | getAABB () const |
virtual void | fillData (const VertexBuffer *vb, const IndexBuffer *ib, bool deferFill=false, bool doubleSided=false) throw (RenderException) |
virtual void | setVisible (bool isVisible) |
Sets the figure's visibility. More... | |
virtual bool | isVisible () const |
Returns the figure's visibility state. More... | |
virtual bool | isTransparent () const |
Returns true if the figure includes transparent elements. More... | |
virtual bool | isOverlay () const |
Returns true if the figure is part of the UI overlay rather than an object in space. More... | |
virtual void | setTransparent (bool isTrans) |
Set the transparency state of the figure, this doesn't actually change data but affects how the renderer treates the object. More... | |
virtual void | setOverlay (bool isOverlay) |
Set the overlay state of the figure, this doesn't actually change data but affects how the renderer treates the object. More... | |
virtual void | setRenderQueue (sval queue) |
Get the render queue of this figure; queues set rendering order such that figures in lower queues are rendered first. More... | |
virtual sval | getRenderQueue () const |
Get the figure's render queue. More... | |
virtual void | setCameraVisibility (const Camera *cam, bool isVisible) |
virtual void | setParent (Figure *fig) |
Set the parent of this figure, if `fig' is transformed then the transformation is applied to this figure as well. More... | |
A Figure object is the basic rendering object. It has methods for filling vertex and index data, setting camera visibility, scene position and orientation, and materials.
|
inlinevirtual |
|
inlinevirtual |
Fill the vertex information using the given buffers, `ib' may be NULL for point figure types. If `deferFill' is true then the actual hardware buffers are filled during the next render cycle rather than immediately. In either case data is filled into local memory buffers first then copied to hardware buffers. This implies that calling this method is thread-safe if `deferFill' is true or if its implementation does nothing regardless of arguments. If `doubleSided' is true and the index buffer defined triangles, create backfaces for triangles with correct normals.
Reimplemented in BBSetFigure, OgreGlyphFigure, OgreRibbonFigure, OgreBBSetFigure, and OgreFigure.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's material name.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's name.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's position in world space.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's render queue.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's rotation.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's scale values.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the figure's position, scale, and rotation transform.
|
inlinevirtual |
Returns true if the figure is part of the UI overlay rather than an object in space.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Returns true if the figure includes transparent elements.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Returns the figure's visibility state.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the visibility for this figure in the given camera, by default a camera can see all figures unless it has been designated as a secondary camera, in which case figures must make themselves explicitly visible to it using this method. This implies that a figure is by default is visible to all primary cameras. All primary cameras are treated the same, so a figure visible to one is visible to all. If `cam' is NULL then visibility is set for all cameras, both primary and secondary, to be `isVisible'.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the figure's material, this must name an existing material.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set's the figure's material.
|
inlinevirtual |
Set the overlay state of the figure, this doesn't actually change data but affects how the renderer treates the object.
Reimplemented in OgreTextFigure, OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the parent of this figure, if `fig' is transformed then the transformation is applied to this figure as well.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the figure's position in world space.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Get the render queue of this figure; queues set rendering order such that figures in lower queues are rendered first.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the figure's rotation.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set the figure's scale values.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Set position, rotation, and scale for this figure simultaneously.
|
inlinevirtual |
Set position, rotation, and scale for this figure simultaneously.
|
inlinevirtual |
Set the transparency state of the figure, this doesn't actually change data but affects how the renderer treates the object.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.
|
inlinevirtual |
Sets the figure's visibility.
Reimplemented in OgreRibbonFigure, OgreBBSetFigure, OgreBaseFigure< OgreBaseRenderable, Figure >, OgreBaseFigure< OgreBaseRenderable, GlyphFigure >, OgreBaseFigure< TextRenderable, TextFigure >, and OgreBaseFigure< TextureVolumeRenderable, TextureVolumeFigure >.