OgreMovableObject.h
Go to the documentation of this file.
/*
-----------------------------------------------------------------------------
This source file is part of OGRE
(Object-oriented Graphics Rendering Engine)
For the latest info, see http://www.ogre3d.org/
Copyright (c) 2000-2013 Torus Knot Software Ltd
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
-----------------------------------------------------------------------------
*/
#ifndef __MovableObject_H__
#define __MovableObject_H__
// Precompiler options
#include "OgrePrerequisites.h"
#include "OgreRenderQueue.h"
#include "OgreAxisAlignedBox.h"
#include "OgreSphere.h"
#include "OgreShadowCaster.h"
#include "OgreFactoryObj.h"
#include "OgreAnimable.h"
#include "OgreAny.h"
#include "OgreUserObjectBindings.h"
#include "OgreHeaderPrefix.h"
namespace Ogre {
// Forward declaration
class MovableObjectFactory;
class _OgreExport MovableObject : public ShadowCaster, public AnimableObject, public MovableAlloc
{
public:
class _OgreExport Listener
{
public:
Listener(void) {}
virtual ~Listener() {}
virtual void objectDestroyed(MovableObject*) {}
virtual void objectAttached(MovableObject*) {}
virtual void objectDetached(MovableObject*) {}
virtual void objectMoved(MovableObject*) {}
virtual bool objectRendering(const MovableObject*, const Camera*) { return true; }
virtual const LightList* objectQueryLights(const MovableObject*) { return 0; }
};
protected:
String mName;
MovableObjectFactory* mCreator;
SceneManager* mManager;
Node* mParentNode;
bool mParentIsTagPoint;
bool mVisible;
bool mDebugDisplay;
Real mUpperDistance;
Real mSquaredUpperDistance;
// Minimum pixel size to still render
Real mMinPixelSize;
bool mBeyondFarDistance;
UserObjectBindings mUserObjectBindings;
uint8 mRenderQueueID;
bool mRenderQueueIDSet;
ushort mRenderQueuePriority;
bool mRenderQueuePrioritySet;
uint32 mQueryFlags;
uint32 mVisibilityFlags;
mutable AxisAlignedBox mWorldAABB;
// Cached world bounding sphere
mutable Sphere mWorldBoundingSphere;
mutable AxisAlignedBox mWorldDarkCapBounds;
bool mCastShadows;
bool mRenderingDisabled;
Listener* mListener;
mutable LightList mLightList;
mutable ulong mLightListUpdated;
uint32 mLightMask;
// Static members
static uint32 msDefaultQueryFlags;
static uint32 msDefaultVisibilityFlags;
public:
MovableObject();
MovableObject(const String& name);
virtual ~MovableObject();
virtual void _notifyCreator(MovableObjectFactory* fact) { mCreator = fact; }
virtual MovableObjectFactory* _getCreator(void) const { return mCreator; }
virtual void _notifyManager(SceneManager* man) { mManager = man; }
virtual SceneManager* _getManager(void) const { return mManager; }
virtual const String& getName(void) const { return mName; }
virtual const String& getMovableType(void) const = 0;
virtual Node* getParentNode(void) const;
virtual SceneNode* getParentSceneNode(void) const;
virtual bool isParentTagPoint() const { return mParentIsTagPoint; }
virtual void _notifyAttached(Node* parent, bool isTagPoint = false);
virtual bool isAttached(void) const;
virtual void detachFromParent(void);
virtual bool isInScene(void) const;
virtual void _notifyMoved(void);
virtual void _notifyCurrentCamera(Camera* cam);
virtual const AxisAlignedBox& getBoundingBox(void) const = 0;
virtual Real getBoundingRadius(void) const = 0;
virtual const AxisAlignedBox& getWorldBoundingBox(bool derive = false) const;
virtual const Sphere& getWorldBoundingSphere(bool derive = false) const;
virtual void _updateRenderQueue(RenderQueue* queue) = 0;
virtual void setVisible(bool visible);
virtual bool getVisible(void) const;
virtual bool isVisible(void) const;
virtual void setRenderingDistance(Real dist) {
mUpperDistance = dist;
mSquaredUpperDistance = mUpperDistance * mUpperDistance;
}
virtual Real getRenderingDistance(void) const { return mUpperDistance; }
virtual void setRenderingMinPixelSize(Real pixelSize) {
mMinPixelSize = pixelSize;
}
virtual Real getRenderingMinPixelSize() const {
return mMinPixelSize;
}
OGRE_DEPRECATED virtual void setUserAny(const Any& anything) { getUserObjectBindings().setUserAny(anything); }
OGRE_DEPRECATED virtual const Any& getUserAny(void) const { return getUserObjectBindings().getUserAny(); }
UserObjectBindings& getUserObjectBindings() { return mUserObjectBindings; }
const UserObjectBindings& getUserObjectBindings() const { return mUserObjectBindings; }
virtual void setRenderQueueGroup(uint8 queueID);
virtual void setRenderQueueGroupAndPriority(uint8 queueID, ushort priority);
virtual uint8 getRenderQueueGroup(void) const;
virtual const Matrix4& _getParentNodeFullTransform(void) const;
virtual void setQueryFlags(uint32 flags) { mQueryFlags = flags; }
virtual void addQueryFlags(uint32 flags) { mQueryFlags |= flags; }
virtual void removeQueryFlags(uint32 flags) { mQueryFlags &= ~flags; }
virtual uint32 getQueryFlags(void) const { return mQueryFlags; }
static void setDefaultQueryFlags(uint32 flags) { msDefaultQueryFlags = flags; }
static uint32 getDefaultQueryFlags() { return msDefaultQueryFlags; }
virtual void setVisibilityFlags(uint32 flags) { mVisibilityFlags = flags; }
virtual void addVisibilityFlags(uint32 flags) { mVisibilityFlags |= flags; }
virtual void removeVisibilityFlags(uint32 flags) { mVisibilityFlags &= ~flags; }
virtual uint32 getVisibilityFlags(void) const { return mVisibilityFlags; }
static void setDefaultVisibilityFlags(uint32 flags) { msDefaultVisibilityFlags = flags; }
static uint32 getDefaultVisibilityFlags() { return msDefaultVisibilityFlags; }
virtual void setListener(Listener* listener) { mListener = listener; }
virtual Listener* getListener(void) const { return mListener; }
virtual const LightList& queryLights(void) const;
virtual uint32 getLightMask()const { return mLightMask; }
virtual void setLightMask(uint32 lightMask);
virtual LightList* _getLightList() { return &mLightList; }
EdgeData* getEdgeList(void) { return NULL; }
bool hasEdgeList(void) { return false; }
ShadowRenderableListIterator getShadowVolumeRenderableIterator(
ShadowTechnique shadowTechnique, const Light* light,
HardwareIndexBufferSharedPtr* indexBuffer, size_t* indexBufferUsedSize,
bool extrudeVertices, Real extrusionDist, unsigned long flags = 0);
const AxisAlignedBox& getLightCapBounds(void) const;
const AxisAlignedBox& getDarkCapBounds(const Light& light, Real dirLightExtrusionDist) const;
void setCastShadows(bool enabled) { mCastShadows = enabled; }
bool getCastShadows(void) const { return mCastShadows; }
bool getReceivesShadows();
Real getPointExtrusionDistance(const Light* l) const;
virtual uint32 getTypeFlags(void) const;
virtual void visitRenderables(Renderable::Visitor* visitor,
bool debugRenderables = false) = 0;
virtual void setDebugDisplayEnabled(bool enabled) { mDebugDisplay = enabled; }
virtual bool isDebugDisplayEnabled(void) const { return mDebugDisplay; }
};
class _OgreExport MovableObjectFactory : public MovableAlloc
{
protected:
uint32 mTypeFlag;
virtual MovableObject* createInstanceImpl(
const String& name, const NameValuePairList* params = 0) = 0;
public:
MovableObjectFactory() : mTypeFlag(0xFFFFFFFF) {}
virtual ~MovableObjectFactory() {}
virtual const String& getType(void) const = 0;
virtual MovableObject* createInstance(
const String& name, SceneManager* manager,
const NameValuePairList* params = 0);
virtual void destroyInstance(MovableObject* obj) = 0;
virtual bool requestTypeFlags(void) const { return false; }
void _notifyTypeFlags(uint32 flag) { mTypeFlag = flag; }
uint32 getTypeFlags(void) const { return mTypeFlag; }
};
}
#include "OgreHeaderSuffix.h"
#endif
Ogre::MovableObject::mUpperDistance
Real mUpperDistance
Upper distance to still render.
Definition: OgreMovableObject.h:123
OgreShadowCaster.h
Ogre::MovableObject::setUserAny
virtual OGRE_DEPRECATED void setUserAny(const Any &anything)
Definition: OgreMovableObject.h:329
Ogre::MovableObject::getDefaultVisibilityFlags
static uint32 getDefaultVisibilityFlags()
Get the default visibility flags for all future MovableObject instances.
Definition: OgreMovableObject.h:439
Ogre::MovableObject::setCastShadows
void setCastShadows(bool enabled)
Sets whether or not this object will cast shadows.
Definition: OgreMovableObject.h:519
Ogre::MovableObject::setDefaultQueryFlags
static void setDefaultQueryFlags(uint32 flags)
Set the default query flags for all future MovableObject instances.
Definition: OgreMovableObject.h:407
Ogre::MovableObject::mRenderQueueID
uint8 mRenderQueueID
The render queue to use when rendering this object.
Definition: OgreMovableObject.h:132
Ogre::MovableObject::msDefaultVisibilityFlags
static uint32 msDefaultVisibilityFlags
Default visibility flags.
Definition: OgreMovableObject.h:169
Ogre::MovableObjectFactory::getTypeFlags
uint32 getTypeFlags(void) const
Gets the type flag for this factory.
Definition: OgreMovableObject.h:635
Ogre::VectorIterator
Concrete IteratorWrapper for nonconst access to the underlying container.
Definition: OgreIteratorWrapper.h:186
Ogre::MovableObject::getCastShadows
bool getCastShadows(void) const
Returns whether shadow casting is enabled for this object.
Definition: OgreMovableObject.h:521
OgreAxisAlignedBox.h
OgreRenderQueue.h
OgreAnimable.h
_OgreExport
#define _OgreExport
Definition: OgrePlatform.h:257
Ogre::MovableObject::mRenderQueuePrioritySet
bool mRenderQueuePrioritySet
Flags whether the RenderQueue&#39;s default should be used.
Definition: OgreMovableObject.h:138
Ogre::MovableObject
Abstract class defining a movable object in a scene.
Definition: OgreMovableObject.h:60
Ogre::MovableObjectFactory::_notifyTypeFlags
void _notifyTypeFlags(uint32 flag)
Notify this factory of the type mask to apply.
Definition: OgreMovableObject.h:628
Ogre::HardwareIndexBufferSharedPtr
Shared pointer implementation used to share index buffers.
Definition: OgreHardwareIndexBuffer.h:79
Ogre::MovableObject::mRenderQueueIDSet
bool mRenderQueueIDSet
Flags whether the RenderQueue&#39;s default should be used.
Definition: OgreMovableObject.h:134
Ogre::MovableObject::mWorldAABB
AxisAlignedBox mWorldAABB
Cached world AABB of this object.
Definition: OgreMovableObject.h:144
Ogre::MovableObject::mCastShadows
bool mCastShadows
Does this object cast shadows?
Definition: OgreMovableObject.h:150
Ogre::MovableObject::mRenderingDisabled
bool mRenderingDisabled
Does rendering this object disabled by listener?
Definition: OgreMovableObject.h:153
Ogre::MovableObject::msDefaultQueryFlags
static uint32 msDefaultQueryFlags
Default query flags.
Definition: OgreMovableObject.h:167
Ogre::MovableObject::_notifyCreator
virtual void _notifyCreator(MovableObjectFactory *fact)
Notify the object of it&#39;s creator (internal use only)
Definition: OgreMovableObject.h:184
Ogre::MovableObject::getLightMask
virtual uint32 getLightMask() const
Get a bitwise mask which will filter the lights affecting this object.
Definition: OgreMovableObject.h:476
Ogre::MovableObject::removeVisibilityFlags
virtual void removeVisibilityFlags(uint32 flags)
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on t...
Definition: OgreMovableObject.h:428
Ogre::Sphere
A sphere primitive, mostly used for bounds checking.
Definition: OgreSphere.h:51
Ogre::MovableObject::setQueryFlags
virtual void setQueryFlags(uint32 flags)
Sets the query flags for this object.
Definition: OgreMovableObject.h:392
Ogre::MovableObject::setRenderingDistance
virtual void setRenderingDistance(Real dist)
Sets the distance at which the object is no longer rendered.
Definition: OgreMovableObject.h:299
Ogre::MovableObjectFactory::requestTypeFlags
virtual bool requestTypeFlags(void) const
Does this factory require the allocation of a &#39;type flag&#39;, used to selectively include / exclude this...
Definition: OgreMovableObject.h:619
Ogre::Real
float Real
Software floating point type.
Definition: OgrePrerequisites.h:70
OGRE_DEPRECATED
#define OGRE_DEPRECATED
Definition: OgrePlatform.h:189
Ogre::RenderQueue
Class to manage the scene object rendering queue.
Definition: OgreRenderQueue.h:92
Ogre::MovableObject::mName
String mName
Name of this object.
Definition: OgreMovableObject.h:110
Ogre::MovableObject::mMinPixelSize
Real mMinPixelSize
Definition: OgreMovableObject.h:126
Ogre::MovableObject::Listener::~Listener
virtual ~Listener()
Definition: OgreMovableObject.h:69
Ogre::MovableObject::Listener::objectDetached
virtual void objectDetached(MovableObject *)
MovableObject has been detached from a node.
Definition: OgreMovableObject.h:75
Ogre::MovableObject::hasEdgeList
bool hasEdgeList(void)
Define a default implementation of method from ShadowCaster which implements no shadows.
Definition: OgreMovableObject.h:496
Ogre::SceneNode
Class representing a node in the scene graph.
Definition: OgreSceneNode.h:58
Ogre::MovableObject::mParentIsTagPoint
bool mParentIsTagPoint
Definition: OgreMovableObject.h:117
Ogre::MovableObject::setVisibilityFlags
virtual void setVisibilityFlags(uint32 flags)
Sets the visibility flags for this object.
Definition: OgreMovableObject.h:420
Ogre::ShadowTechnique
ShadowTechnique
An enumeration of broad shadow techniques.
Definition: OgreCommon.h:190
Ogre::MovableObjectFactory::~MovableObjectFactory
virtual ~MovableObjectFactory()
Definition: OgreMovableObject.h:589
Ogre::MovableObject::getQueryFlags
virtual uint32 getQueryFlags(void) const
Returns the query flags relevant for this object.
Definition: OgreMovableObject.h:403
Ogre::MovableObject::getUserObjectBindings
UserObjectBindings & getUserObjectBindings()
Return an instance of user objects binding associated with this class.
Definition: OgreMovableObject.h:340
Ogre::MovableObject::_getManager
virtual SceneManager * _getManager(void) const
Get the manager of this object, if any (internal use only)
Definition: OgreMovableObject.h:190
Ogre::MovableObject::getDefaultQueryFlags
static uint32 getDefaultQueryFlags()
Get the default query flags for all future MovableObject instances.
Definition: OgreMovableObject.h:411
Ogre::Any
Variant type that can hold Any other type.
Definition: OgreAny.h:56
Ogre::EdgeData
This class contains the information required to describe the edge connectivity of a given set of vert...
Definition: OgreEdgeListBuilder.h:52
Ogre::MovableObject::mListener
Listener * mListener
MovableObject listener - only one allowed (no list) for size & performance reasons. */.
Definition: OgreMovableObject.h:155
Ogre::Matrix4
Class encapsulating a standard 4x4 homogeneous matrix.
Definition: OgreMatrix4.h:78
Ogre::MovableObject::getName
virtual const String & getName(void) const
Returns the name of this object.
Definition: OgreMovableObject.h:193
Ogre::MovableObject::Listener::objectQueryLights
virtual const LightList * objectQueryLights(const MovableObject *)
Called when the movable object needs to query a light list.
Definition: OgreMovableObject.h:105
Ogre::MovableObject::mLightMask
uint32 mLightMask
the light mask defined for this movable. This will be taken into consideration when deciding which li...
Definition: OgreMovableObject.h:163
OgreUserObjectBindings.h
Ogre::MovableObject::mDebugDisplay
bool mDebugDisplay
Is debug display enabled?
Definition: OgreMovableObject.h:121
Ogre::MovableObject::Listener::objectAttached
virtual void objectAttached(MovableObject *)
MovableObject has been attached to a node.
Definition: OgreMovableObject.h:73
OgrePrerequisites.h
Ogre::MovableObject::setRenderingMinPixelSize
virtual void setRenderingMinPixelSize(Real pixelSize)
Sets the minimum pixel size an object needs to be in both screen axes in order to be rendered...
Definition: OgreMovableObject.h:312
Ogre::MovableObject::setDefaultVisibilityFlags
static void setDefaultVisibilityFlags(uint32 flags)
Set the default visibility flags for all future MovableObject instances.
Definition: OgreMovableObject.h:435
Ogre::MovableObject::mSquaredUpperDistance
Real mSquaredUpperDistance
Definition: OgreMovableObject.h:124
Ogre::HashedVector
A hashed vector.
Definition: OgreCommon.h:332
Ogre::Renderable::Visitor
Visitor object that can be used to iterate over a collection of Renderable instances abstractly...
Definition: OgreRenderable.h:377
Ogre::Node
Class representing a general-purpose node an articulated scene graph.
Definition: OgreNode.h:64
Ogre::MovableObject::mRenderQueuePriority
ushort mRenderQueuePriority
The render queue group to use when rendering this object.
Definition: OgreMovableObject.h:136
Ogre::uint8
unsigned char uint8
Definition: OgrePlatform.h:361
Ogre::MovableObject::getRenderingMinPixelSize
virtual Real getRenderingMinPixelSize() const
Returns the minimum pixel size an object needs to be in both screen axes in order to be rendered...
Definition: OgreMovableObject.h:318
Ogre::NameValuePairList
map< String, String >::type NameValuePairList
Name / value parameter pair (first = name, second = value)
Definition: OgreCommon.h:550
Ogre::MovableObject::setDebugDisplayEnabled
virtual void setDebugDisplayEnabled(bool enabled)
Sets whether or not the debug display of this object is enabled.
Definition: OgreMovableObject.h:563
Ogre::ShadowCaster
This class defines the interface that must be implemented by shadow casters.
Definition: OgreShadowCaster.h:117
Ogre::String
_StringBase String
Definition: OgrePrerequisites.h:439
Ogre::MovableObject::isParentTagPoint
virtual bool isParentTagPoint() const
Gets whether the parent node is a TagPoint (or a SceneNode)
Definition: OgreMovableObject.h:216
Ogre::AnimableObject
Defines an interface to classes which have one or more AnimableValue instances to expose...
Definition: OgreAnimable.h:238
Ogre::MovableObjectFactory::mTypeFlag
uint32 mTypeFlag
Type flag, allocated if requested.
Definition: OgreMovableObject.h:582
Ogre::MovableObject::Listener
Listener which gets called back on MovableObject events.
Definition: OgreMovableObject.h:65
Ogre::Camera
A viewpoint from which the scene will be rendered.
Definition: OgreCamera.h:86
OgreHeaderSuffix.h
OgreFactoryObj.h
Ogre::MovableObject::mLightListUpdated
ulong mLightListUpdated
The last frame that this light list was updated in.
Definition: OgreMovableObject.h:160
Ogre::uint32
unsigned int uint32
Definition: OgrePlatform.h:359
OgreAny.h
Ogre::MovableObject::Listener::objectDestroyed
virtual void objectDestroyed(MovableObject *)
MovableObject is being destroyed.
Definition: OgreMovableObject.h:71
Ogre::MovableObject::mUserObjectBindings
UserObjectBindings mUserObjectBindings
User objects binding.
Definition: OgreMovableObject.h:130
Ogre::MovableObject::getListener
virtual Listener * getListener(void) const
Gets the current listener for this object.
Definition: OgreMovableObject.h:450
Ogre::MovableObject::getVisibilityFlags
virtual uint32 getVisibilityFlags(void) const
Returns the visibility flags relevant for this object.
Definition: OgreMovableObject.h:431
Ogre::MovableObject::_notifyManager
virtual void _notifyManager(SceneManager *man)
Notify the object of it&#39;s manager (internal use only)
Definition: OgreMovableObject.h:188
Ogre
Definition: OgreAndroidLogListener.h:34
Ogre::MovableObject::getEdgeList
EdgeData * getEdgeList(void)
Define a default implementation of method from ShadowCaster which implements no shadows.
Definition: OgreMovableObject.h:494
Ogre::MovableObject::getUserObjectBindings
const UserObjectBindings & getUserObjectBindings() const
Return an instance of user objects binding associated with this class.
Definition: OgreMovableObject.h:346
Ogre::MovableObject::mWorldBoundingSphere
Sphere mWorldBoundingSphere
Definition: OgreMovableObject.h:146
Ogre::MovableObjectFactory::MovableObjectFactory
MovableObjectFactory()
Definition: OgreMovableObject.h:588
Ogre::MovableObject::mVisibilityFlags
uint32 mVisibilityFlags
Flags determining whether this object is visible (compared to SceneManager mask)
Definition: OgreMovableObject.h:142
Ogre::ulong
unsigned long ulong
Definition: OgrePrerequisites.h:115
Ogre::MovableObject::addVisibilityFlags
virtual void addVisibilityFlags(uint32 flags)
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on th...
Definition: OgreMovableObject.h:424
Ogre::MovableObject::Listener::Listener
Listener(void)
Definition: OgreMovableObject.h:68
Ogre::MovableObject::isDebugDisplayEnabled
virtual bool isDebugDisplayEnabled(void) const
Gets whether debug display of this object is enabled.
Definition: OgreMovableObject.h:565
Ogre::MovableObject::Listener::objectMoved
virtual void objectMoved(MovableObject *)
MovableObject has been moved.
Definition: OgreMovableObject.h:77
OgreHeaderPrefix.h
Ogre::UserObjectBindings
Class that provides convenient interface to establish a linkage between custom user application objec...
Definition: OgreUserObjectBindings.h:49
Ogre::MovableObject::setListener
virtual void setListener(Listener *listener)
Sets a listener for this object.
Definition: OgreMovableObject.h:446
Ogre::MovableObject::mBeyondFarDistance
bool mBeyondFarDistance
Hidden because of distance?
Definition: OgreMovableObject.h:128
Ogre::MovableObject::mParentNode
Node * mParentNode
node to which this object is attached
Definition: OgreMovableObject.h:116
Ogre::MovableObject::_getCreator
virtual MovableObjectFactory * _getCreator(void) const
Get the creator of this object, if any (internal use only)
Definition: OgreMovableObject.h:186
Ogre::MovableObject::mQueryFlags
uint32 mQueryFlags
Flags determining whether this object is included / excluded from scene queries.
Definition: OgreMovableObject.h:140
Ogre::MovableObject::mWorldDarkCapBounds
AxisAlignedBox mWorldDarkCapBounds
World space AABB of this object&#39;s dark cap.
Definition: OgreMovableObject.h:148
Ogre::MovableObject::getRenderingDistance
virtual Real getRenderingDistance(void) const
Gets the distance at which batches are no longer rendered.
Definition: OgreMovableObject.h:305
Ogre::MovableObject::mLightList
LightList mLightList
List of lights for this object.
Definition: OgreMovableObject.h:158
Ogre::MovableObjectFactory
Interface definition for a factory class which produces a certain kind of MovableObject, and can be registered with Root in order to allow all clients to produce new instances of this object, integrated with the standard Ogre processing.
Definition: OgreMovableObject.h:578
Ogre::MovableObject::mCreator
MovableObjectFactory * mCreator
Creator of this object (if created by a factory)
Definition: OgreMovableObject.h:112
Ogre::ushort
unsigned short ushort
Definition: OgrePrerequisites.h:113
Ogre::MovableObject::_getLightList
virtual LightList * _getLightList()
Returns a pointer to the current list of lights for this object.
Definition: OgreMovableObject.h:491
Ogre::MovableObject::getUserAny
virtual OGRE_DEPRECATED const Any & getUserAny(void) const
Definition: OgreMovableObject.h:334
Ogre::MovableObject::removeQueryFlags
virtual void removeQueryFlags(uint32 flags)
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this o...
Definition: OgreMovableObject.h:400
Ogre::AxisAlignedBox
A 3D box aligned with the x/y/z axes.
Definition: OgreAxisAlignedBox.h:54
Ogre::SceneManager
Manages the organisation and rendering of a &#39;scene&#39; i.e.
Definition: OgreSceneManager.h:143
OgreSphere.h
Ogre::MovableObject::mVisible
bool mVisible
Is this object visible?
Definition: OgreMovableObject.h:119
Ogre::Light
Representation of a dynamic light source in the scene.
Definition: OgreLight.h:73
Ogre::AllocatedObject
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...
Definition: OgreMemoryAllocatedObject.h:58
Ogre::MovableObject::addQueryFlags
virtual void addQueryFlags(uint32 flags)
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this ob...
Definition: OgreMovableObject.h:396
Ogre::MovableObject::mManager
SceneManager * mManager
SceneManager holding this object (if applicable)
Definition: OgreMovableObject.h:114
Ogre::MovableObject::Listener::objectRendering
virtual bool objectRendering(const MovableObject *, const Camera *)
Called when the movable object of the camera to be used for rendering.
Definition: OgreMovableObject.h:82

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.