#include <OgreMovableObject.h>
Inheritance diagram for Ogre::MovableObject:
Public Methods | |
MovableObject () | |
Constructor. | |
virtual | ~MovableObject () |
Virtual destructor - read Scott Meyers if you don't know why this is needed. | |
virtual const String & | getName (void) const=0 |
Returns the name of this object. | |
virtual const String & | getMovableType (void) const=0 |
Returns the type name of this object. | |
virtual Node * | getParentNode (void) const |
Returns the node to which this object is attached. | |
virtual void | _notifyAttached (Node *parent, bool isTagPoint=false) |
Internal method called to notify the object that it has been attached to a node. | |
virtual bool | isAttached (void) const |
Returns true if this object is attached to a SceneNode or TagPoint. | |
virtual void | _notifyCurrentCamera (Camera *cam)=0 |
Internal method to notify the object of the camera to be used for the next rendering operation. | |
virtual const AxisAlignedBox & | getBoundingBox (void) const=0 |
Retrieves the local axis-aligned bounding box for this object. | |
virtual Real | getBoundingRadius (void) const=0 |
Retrieves the radius of the origin-centered bounding sphere for this object. | |
virtual const AxisAlignedBox & | getWorldBoundingBox (bool derive=false) const |
Retrieves the axis-aligned bounding box for this object in world coordinates. | |
virtual const Sphere & | getWorldBoundingSphere (bool derive=false) const |
Retrieves the worldspace bounding sphere for this object. | |
virtual void | _updateRenderQueue (RenderQueue *queue)=0 |
Internal method by which the movable object must add Renderable subclass instances to the rendering queue. | |
virtual void | setVisible (bool visible) |
Tells this object whether to be visible or not, if it has a renderable component. | |
virtual bool | isVisible (void) const |
Returns whether or not this object is supposed to be visible or not. | |
virtual void | setUserObject (UserDefinedObject *obj) |
Call this to associate your own custom user object instance with this MovableObject. | |
virtual UserDefinedObject * | getUserObject (void) |
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject. | |
virtual void | setRenderQueueGroup (RenderQueueGroupID queueID) |
Sets the render queue group this entity will be rendered through. | |
virtual RenderQueueGroupID | getRenderQueueGroup (void) const |
Gets the queue group for this entity, see setRenderQueueGroup for full details. | |
virtual Matrix4 | _getParentNodeFullTransform (void) const |
return the full transformation of the parent sceneNode or the attachingPoint node | |
virtual void | setQueryFlags (unsigned long flags) |
Sets the query flags for this object. | |
virtual void | addQueryFlags (unsigned long flags) |
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object. | |
virtual void | removeQueryFlags (unsigned long flags) |
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object. | |
virtual unsigned long | getQueryFlags (void) const |
Returns the query flags relevant for this object. | |
Protected Attributes | |
Node * | mParentNode |
node to which this object is attached | |
bool | mParentIsTagPoint |
bool | mVisible |
Is this object visible? | |
UserDefinedObject * | mUserObject |
User defined object which is linked to this object. | |
RenderQueueGroupID | mRenderQueueID |
The render queue to use when rendering this object. | |
unsigned long | mQueryFlags |
Flags determining whether this object is included / excluded from scene queries. | |
AxisAlignedBox | mWorldAABB |
Cached world AABB of this object. | |
Sphere | mWorldBoundingSphere |
Definition at line 43 of file OgreMovableObject.h.
|
Constructor.
Definition at line 34 of file OgreMovableObject.cpp. References mParentIsTagPoint, mParentNode, mQueryFlags, mRenderQueueID, mUserObject, mVisible, mWorldAABB, Ogre::RENDER_QUEUE_MAIN, and Ogre::AxisAlignedBox::setNull(). |
|
Virtual destructor - read Scott Meyers if you don't know why this is needed.
Definition at line 45 of file OgreMovableObject.cpp. References mParentIsTagPoint, and mParentNode. |
|
return the full transformation of the parent sceneNode or the attachingPoint node
Definition at line 92 of file OgreMovableObject.cpp. References Ogre::Node::_getFullTransform(), and mParentNode. Referenced by Ogre::Entity::cacheBoneMatrices(), Ogre::TagPoint::getParentEntityTransform(), getWorldBoundingBox(), Ogre::SubEntity::getWorldTransforms(), and Ogre::BillboardSet::getWorldTransforms(). |
|
Internal method called to notify the object that it has been attached to a node.
Definition at line 54 of file OgreMovableObject.cpp. References mParentIsTagPoint, and mParentNode. Referenced by Ogre::SceneNode::attachObject(), Ogre::Entity::attachObjectImpl(), Ogre::SceneNode::detachAllObjects(), Ogre::SceneNode::detachObject(), and Ogre::SceneNode::~SceneNode(). |
|
Internal method to notify the object of the camera to be used for the next rendering operation.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::SimpleRenderable, and Ogre::TerrainRenderable. Referenced by Ogre::OctreeNode::_addToRenderQueue(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
Internal method by which the movable object must add Renderable subclass instances to the rendering queue.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::SimpleRenderable, and Ogre::TerrainRenderable. Referenced by Ogre::BspSceneManager::processVisibleLeaf(). |
|
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object.
Definition at line 168 of file OgreMovableObject.h. |
|
Retrieves the local axis-aligned bounding box for this object.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::SimpleRenderable, and Ogre::TerrainRenderable. Referenced by getWorldBoundingBox(). |
|
Retrieves the radius of the origin-centered bounding sphere for this object.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::WireBoundingBox, and Ogre::TerrainRenderable. Referenced by Ogre::BspIntersectionSceneQuery::execute(), getWorldBoundingSphere(), and Ogre::BspLevel::tagNodesWithMovable(). |
|
Returns the type name of this object.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::ParticleSystem, Ogre::SimpleRenderable, and Ogre::TerrainRenderable. |
|
Returns the name of this object.
Implemented in Ogre::BillboardSet, Ogre::Camera, Ogre::Entity, Ogre::Frustum, Ogre::Light, Ogre::ParticleSystem, Ogre::SimpleRenderable, and Ogre::TerrainRenderable. Referenced by Ogre::SceneNode::attachObject(), and Ogre::Entity::attachObjectImpl(). |
|
Returns the node to which this object is attached.
Definition at line 60 of file OgreMovableObject.cpp. References mParentNode. Referenced by Ogre::TagPoint::_updateFromParent(), Ogre::BspIntersectionSceneQuery::execute(), Ogre::TagPoint::getLights(), Ogre::SubEntity::getLights(), Ogre::SubEntity::getSquaredViewDepth(), Ogre::TagPoint::needUpdate(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
Returns the query flags relevant for this object.
Definition at line 175 of file OgreMovableObject.h. Referenced by Ogre::BspIntersectionSceneQuery::execute(). |
|
Gets the queue group for this entity, see setRenderQueueGroup for full details.
Definition at line 87 of file OgreMovableObject.cpp. References mRenderQueueID, and Ogre::RenderQueueGroupID. |
|
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject.
Definition at line 136 of file OgreMovableObject.h. |
|
Retrieves the axis-aligned bounding box for this object in world coordinates.
Definition at line 104 of file OgreMovableObject.cpp. References _getParentNodeFullTransform(), getBoundingBox(), mWorldAABB, and Ogre::AxisAlignedBox::transform(). Referenced by Ogre::BspIntersectionSceneQuery::execute(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
Retrieves the worldspace bounding sphere for this object.
Definition at line 116 of file OgreMovableObject.cpp. References Ogre::Node::_getDerivedPosition(), getBoundingRadius(), mParentNode, mWorldBoundingSphere, Ogre::Sphere::setCenter(), and Ogre::Sphere::setRadius(). |
|
Returns true if this object is attached to a SceneNode or TagPoint.
Definition at line 65 of file OgreMovableObject.cpp. References mParentNode. Referenced by Ogre::Entity::attachObjectToBone(). |
|
Returns whether or not this object is supposed to be visible or not.
Definition at line 76 of file OgreMovableObject.cpp. References mVisible. Referenced by Ogre::OctreeNode::_addToRenderQueue(), Ogre::SceneManager::_populateLightList(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object.
Definition at line 172 of file OgreMovableObject.h. |
|
Sets the query flags for this object.
Definition at line 164 of file OgreMovableObject.h. |
|
Sets the render queue group this entity will be rendered through.
Definition at line 82 of file OgreMovableObject.cpp. References mRenderQueueID, and Ogre::RenderQueueGroupID. |
|
Call this to associate your own custom user object instance with this MovableObject.
Definition at line 132 of file OgreMovableObject.h. |
|
Tells this object whether to be visible or not, if it has a renderable component.
Reimplemented in Ogre::Light. Definition at line 71 of file OgreMovableObject.cpp. References mVisible. |
|
Definition at line 48 of file OgreMovableObject.h. Referenced by _notifyAttached(), MovableObject(), and ~MovableObject(). |
|
|
Flags determining whether this object is included / excluded from scene queries.
Definition at line 56 of file OgreMovableObject.h. Referenced by MovableObject(). |
|
The render queue to use when rendering this object.
Definition at line 54 of file OgreMovableObject.h. Referenced by Ogre::Entity::_updateRenderQueue(), Ogre::BillboardSet::_updateRenderQueue(), getRenderQueueGroup(), MovableObject(), and setRenderQueueGroup(). |
|
User defined object which is linked to this object.
Definition at line 52 of file OgreMovableObject.h. Referenced by MovableObject(). |
|
Is this object visible?
Definition at line 50 of file OgreMovableObject.h. Referenced by Ogre::Frustum::Frustum(), isVisible(), MovableObject(), and setVisible(). |
|
Cached world AABB of this object.
Definition at line 58 of file OgreMovableObject.h. Referenced by getWorldBoundingBox(), and MovableObject(). |
|
Definition at line 60 of file OgreMovableObject.h. Referenced by getWorldBoundingSphere(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:18:40 2004