28#ifndef __SimpleRenderable_H__
29#define __SimpleRenderable_H__
95 bool debugRenderables =
false);
A 3D box aligned with the x/y/z axes.
A viewpoint from which the scene will be rendered.
Class encapsulating a standard 4x4 homogeneous matrix.
MovableObject()
Constructor.
'New' rendering operation using vertex buffers.
Class to manage the scene object rendering queue.
Visitor object that can be used to iterate over a collection of Renderable instances abstractly.
Manages the organisation and rendering of a 'scene' i.e.
SimpleRenderable(const String &name)
Named constructor.
virtual const MaterialPtr & getMaterial(void) const
Retrieves a weak reference to the material this renderable object uses.
void setWorldTransform(const Matrix4 &xform)
RenderOperation mRenderOp
void setBoundingBox(const AxisAlignedBox &box)
static uint msGenNameCount
Static member used to automatically generate names for SimpleRendaerable objects.
void visitRenderables(Renderable::Visitor *visitor, bool debugRenderables=false)
Method to allow a caller to abstractly iterate over the Renderable instances that this MovableObject ...
virtual void setMaterial(const String &matName)
const LightList & getLights(void) const
Gets a list of lights, ordered relative to how close they are to this renderable.
virtual void _updateRenderQueue(RenderQueue *queue)
Internal method by which the movable object must add Renderable subclass instances to the rendering q...
virtual ~SimpleRenderable()
virtual void _notifyCurrentCamera(Camera *cam)
Internal method to notify the object of the camera to be used for the next rendering operation.
virtual void getRenderOperation(RenderOperation &op)
Gets the render operation required to send this object to the frame buffer.
SimpleRenderable()
Constructor.
virtual const AxisAlignedBox & getBoundingBox(void) const
Retrieves the local axis-aligned bounding box for this object.
virtual void setRenderOperation(const RenderOperation &rend)
virtual void getWorldTransforms(Matrix4 *xform) const
Gets the world transform matrix / matrices for this renderable object.
SceneManager * mParentSceneManager
The scene manager for the current frame.
virtual const String & getMovableType(void) const
Overridden from MovableObject.
Camera * mCamera
The camera for the current frame.
HashedVector< Light * > LightList
SharedPtr< Material > MaterialPtr