#include <OgreSceneManager.h>
Inheritance diagram for Ogre::SceneManager:
Public Types | |
typedef MapIterator< SceneLightList > | LightIterator |
typedef MapIterator< EntityList > | EntityIterator |
typedef MapIterator< CameraList > | CameraIterator |
typedef MapIterator< BillboardSetList > | BillboardSetIterator |
enum | PrefabType { PT_PLANE } |
Prefab shapes available without loading a model. More... | |
Public Methods | |
SceneManager () | |
Default constructor. | |
virtual | ~SceneManager () |
Default destructor. | |
virtual Camera * | createCamera (const String &name) |
Creates a camera to be managed by this scene manager. | |
virtual Camera * | getCamera (const String &name) |
Retrieves a pointer to the named camera. | |
virtual void | removeCamera (Camera *cam) |
Removes a camera from the scene. | |
virtual void | removeCamera (const String &name) |
Removes a camera from the scene. | |
virtual void | removeAllCameras (void) |
Removes (and destroys) all cameras from the scene. | |
virtual Light * | createLight (const String &name) |
Creates a light for use in the scene. | |
virtual Light * | getLight (const String &name) |
Returns a pointer to the named Light which has previously been added to the scene. | |
virtual void | removeLight (const String &name) |
Removes the named light from the scene and destroys it. | |
virtual void | removeLight (Light *light) |
Removes the light from the scene and destroys it based on a pointer. | |
virtual void | removeAllLights (void) |
Removes and destroys all lights in the scene. | |
virtual void | _populateLightList (const Vector3 &position, LightList &destList) |
Populate a light list with an ordered set of the lights which are closest to the position specified. | |
virtual Material * | createMaterial (const String &name) |
Creates a new material with default settings with the specified name. | |
virtual Material * | getDefaultMaterialSettings (void) |
Returns a pointer to the default Material settings. | |
virtual Material * | getMaterial (const String &name) |
Gets a reference to a named Material. | |
virtual Material * | getMaterial (int handle) |
Gets a reference to a material by it's numerical handle. | |
virtual SceneNode * | createSceneNode (void) |
Creates an instance of a SceneNode. | |
virtual SceneNode * | createSceneNode (const String &name) |
Creates an instance of a SceneNode with a given name. | |
virtual void | destroySceneNode (const String &name) |
Destroys a SceneNode with a given name. | |
virtual SceneNode * | getRootSceneNode (void) const |
Gets the SceneNode at the root of the scene hierarchy. | |
virtual SceneNode * | getSceneNode (const String &name) const |
Retrieves a named SceneNode from the scene graph. | |
virtual Entity * | createEntity (const String &entityName, const String &meshName) |
Create an Entity (instance of a discrete mesh). | |
virtual Entity * | createEntity (const String &entityName, PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes. | |
virtual Entity * | getEntity (const String &name) |
Retrieves a pointer to the named Entity. | |
virtual void | removeEntity (Entity *ent) |
Removes & destroys an Entity from the SceneManager. | |
virtual void | removeEntity (const String &name) |
Removes & destroys an Entity from the SceneManager by name. | |
virtual void | removeAllEntities (void) |
Removes & destroys all Entities. | |
virtual void | clearScene (void) |
Empties the entire scene, inluding all SceneNodes, Cameras, Entities and Lights etc. | |
void | setAmbientLight (const ColourValue &colour) |
Sets the ambient light level to be used for the scene. | |
const ColourValue & | getAmbientLight (void) const |
Returns the ambient light level to be used for the scene. | |
virtual void | setWorldGeometry (const String &filename) |
Sets the source of the 'world' geometry, i.e. | |
virtual ViewPoint | getSuggestedViewpoint (bool random=false) |
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed. | |
virtual bool | setOption (const String &strKey, const void *pValue) |
Method for setting a specific option of the Scene Manager. | |
virtual bool | getOption (const String &strKey, void *pDestValue) |
Method for getting the value of an implementation-specific Scene Manager option. | |
virtual bool | hasOption (const String &strKey) const |
Method for verifying wether the scene manager has an implementation-specific option. | |
virtual bool | getOptionValues (const String &strKey, std::list< SDDataChunk > &refValueList) |
Method for getting all possible values for a specific option. | |
virtual bool | getOptionKeys (std::list< String > &refKeys) |
Method for getting all the implementation-specific options of the scene manager. | |
virtual void | _updateSceneGraph (Camera *cam) |
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class. | |
virtual void | _findVisibleObjects (Camera *cam) |
Internal method which parses the scene to find visible objects to render. | |
virtual void | _applySceneAnimations (void) |
Internal method for applying animations to scene nodes. | |
virtual void | _renderVisibleObjects (void) |
Sends visible objects found in _findVisibleObjects to the rendering engine. | |
virtual void | _renderScene (Camera *camera, Viewport *vp, bool includeOverlays) |
Prompts the class to send its contents to the renderer. | |
virtual void | _queueSkiesForRendering (Camera *cam) |
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome. | |
virtual void | _setDestinationRenderSystem (RenderSystem *sys) |
Notifies the scene manager of its destination render system. | |
virtual void | setSkyPlane (bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, bool drawFirst=true, Real bow=0) |
Enables / disables a 'sky plane' i.e. | |
virtual void | setSkyBox (bool enable, const String &materialName, Real distance=5000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY) |
Enables / disables a 'sky box' i.e. | |
virtual void | setSkyDome (bool enable, const String &materialName, Real curvature=10, Real tiling=8, Real distance=4000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY) |
Enables / disables a 'sky dome' i.e. | |
void | setFog (FogMode mode=FOG_NONE, const ColourValue &colour=ColourValue::White, Real expDensity=0.001, Real linearStart=0.0, Real linearEnd=1.0) |
Sets the fogging mode applied to the scene. | |
virtual FogMode | getFogMode (void) const |
Returns the fog mode for the scene. | |
virtual const ColourValue & | getFogColour (void) const |
Returns the fog colour for the scene. | |
virtual Real | getFogStart (void) const |
Returns the fog start distance for the scene. | |
virtual Real | getFogEnd (void) const |
Returns the fog end distance for the scene. | |
virtual Real | getFogDensity (void) const |
Returns the fog density for the scene. | |
virtual BillboardSet * | createBillboardSet (const String &name, unsigned int poolSize=20) |
Creates a new BillboardSet for use with this scene manager. | |
virtual BillboardSet * | getBillboardSet (const String &name) |
Retrieves a pointer to the named BillboardSet. | |
virtual void | removeBillboardSet (BillboardSet *set) |
Removes & destroys an BillboardSet from the SceneManager. | |
virtual void | removeBillboardSet (const String &name) |
Removes & destroys an BillboardSet from the SceneManager by name. | |
virtual void | setDisplaySceneNodes (bool display) |
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene. | |
virtual Animation * | createAnimation (const String &name, Real length) |
Creates an animation which can be used to animate scene nodes. | |
virtual Animation * | getAnimation (const String &name) const |
Looks up an Animation object previously created with createAnimation. | |
virtual void | destroyAnimation (const String &name) |
Destroys an Animation. | |
virtual void | destroyAllAnimations (void) |
Removes all animations created using this SceneManager. | |
virtual AnimationState * | createAnimationState (const String &animName) |
Create an AnimationState object for managing application of animations. | |
virtual AnimationState * | getAnimationState (const String &animName) |
Retrieves animation state as previously created using createAnimationState. | |
virtual void | destroyAnimationState (const String &name) |
Destroys an AnimationState. | |
virtual void | destroyAllAnimationStates (void) |
Removes all animation states created using this SceneManager. | |
virtual void | manualRender (RenderOperation *rend, Pass *pass, Viewport *vp, const Matrix4 &worldMatrix, const Matrix4 &viewMatrix, const Matrix4 &projMatrix) |
Manual rendering method, for advanced users only. | |
virtual Overlay * | createOverlay (const String &name, ushort zorder=100) |
Creates a new Overlay. | |
virtual Overlay * | getOverlay (const String &name) |
Gets a pointer to the named Overlay, previously created using createOverlay. | |
virtual void | destroyOverlay (const String &name) |
Destroys the named Overlay. | |
virtual void | destroyAllOverlays (void) |
Destroys all the overlays. | |
virtual void | addRenderQueueListener (RenderQueueListener *newListener) |
Registers a new RenderQueueListener which will be notified when render queues are processed. | |
virtual void | removeRenderQueueListener (RenderQueueListener *delListener) |
Removes a listener previously added with addRenderQueueListener. | |
void | showBoundingBoxes (bool bShow) |
Allows all bounding boxes of scene nodes to be displayed. | |
bool | getShowBoundingBoxes () const |
Returns if all bounding boxes of scene nodes are to be displayed. | |
virtual AxisAlignedBoxSceneQuery * | createAABBQuery (const AxisAlignedBox &box, unsigned long mask=0xFFFFFFFF) |
Creates an AxisAlignedBoxSceneQuery for this scene manager. | |
virtual SphereSceneQuery * | createSphereQuery (const Sphere &sphere, unsigned long mask=0xFFFFFFFF) |
Creates a SphereSceneQuery for this scene manager. | |
virtual RaySceneQuery * | createRayQuery (const Ray &ray, unsigned long mask=0xFFFFFFFF) |
Creates a RaySceneQuery for this scene manager. | |
virtual IntersectionSceneQuery * | createIntersectionQuery (unsigned long mask=0xFFFFFFFF) |
Creates an IntersectionSceneQuery for this scene manager. | |
virtual void | destroyQuery (SceneQuery *query) |
Destroys a scene query of any type. | |
LightIterator | getLightIterator (void) |
Returns a specialised MapIterator over all lights in the scene. | |
EntityIterator | getEntityIterator (void) |
Returns a specialised MapIterator over all entities in the scene. | |
CameraIterator | getCameraIterator (void) |
Returns a specialised MapIterator over all cameras in the scene. | |
BillboardSetIterator | getBillboardSetIterator (void) |
Returns a specialised MapIterator over all cameras in the scene. | |
Protected Types | |
typedef std::map< std::string, Camera *, std::less< std::string > > | CameraList |
typedef std::map< std::string, Light *, std::less< std::string > > | SceneLightList |
typedef std::map< std::string, Entity *, std::less< std::string > > | EntityList |
typedef std::map< std::string, BillboardSet *, std::less< std::string > > | BillboardSetList |
typedef std::map< String, SceneNode * > | SceneNodeList |
typedef std::map< String, Animation * > | AnimationList |
Storage of animations, lookup by name. | |
typedef std::vector< RenderQueueListener * > | RenderQueueListenerList |
enum | BoxPlane { BP_FRONT = 0, BP_BACK = 1, BP_LEFT = 2, BP_RIGHT = 3, BP_UP = 4, BP_DOWN = 5 } |
Protected Methods | |
void | setPass (Pass *pass) |
Internal method for setting up the renderstate for a rendering pass. | |
Mesh * | createSkyboxPlane (BoxPlane bp, Real distance, const Quaternion &orientation) |
Mesh * | createSkydomePlane (BoxPlane bp, Real curvature, Real tiling, Real distance, const Quaternion &orientation) |
void | useRenderableViewProjMode (Renderable *pRend) |
Internal method used by _renderVisibleObjects to deal with renderables which override the camera's own view / projection materices. | |
bool | fireRenderQueueStarted (RenderQueueGroupID id) |
Internal method for firing the queue start event, returns true if queue is to be skipped. | |
bool | fireRenderQueueEnded (RenderQueueGroupID id) |
Internal method for firing the queue end event, returns true if queue is to be repeated. | |
virtual void | setViewport (Viewport *vp) |
Internal method for setting the destination viewport for the next render. | |
virtual void | renderSingleObject (Renderable *rend, Pass *pass) |
Internal utility method for rendering a single object. | |
Protected Attributes | |
RenderQueue | mRenderQueue |
Queue of objects for rendering. | |
ColourValue | mAmbientLight |
Current ambient light, cached for RenderSystem. | |
RenderSystem * | mDestRenderSystem |
The rendering system to send the scene to. | |
CameraList | mCameras |
Central list of cameras - for easy memory management and lookup. | |
SceneLightList | mLights |
Central list of lights - for easy memory management and lookup. | |
EntityList | mEntities |
Central list of entities - for easy memory management and lookup. | |
BillboardSetList | mBillboardSets |
Central list of billboard sets - for easy memory management and lookup. | |
SceneNodeList | mSceneNodes |
Central list of SceneNodes - for easy memory management. | |
Camera * | mCameraInProgress |
Camera in progress. | |
SceneNode * | mSceneRoot |
Root scene node. | |
Entity * | mSkyPlaneEntity |
Entity * | mSkyDomeEntity [5] |
Entity * | mSkyBoxEntity [6] |
SceneNode * | mSkyPlaneNode |
SceneNode * | mSkyDomeNode |
SceneNode * | mSkyBoxNode |
bool | mSkyPlaneEnabled |
bool | mSkyPlaneDrawFirst |
Plane | mSkyPlane |
bool | mSkyBoxEnabled |
bool | mSkyBoxDrawFirst |
Quaternion | mSkyBoxOrientation |
bool | mSkyDomeEnabled |
bool | mSkyDomeDrawFirst |
Quaternion | mSkyDomeOrientation |
FogMode | mFogMode |
ColourValue | mFogColour |
Real | mFogStart |
Real | mFogEnd |
Real | mFogDensity |
bool | mDisplayNodes |
AnimationList | mAnimationsList |
AnimationStateSet | mAnimationStates |
bool | mCamChanged |
Controller flag for determining if we need to set view/proj matrices. | |
RenderQueueListenerList | mRenderQueueListeners |
bool | mShowBoundingBoxes |
Flag that indicates if all of the scene node's bounding boxes should be shown as a wireframe. | |
AutoParamDataSource | mAutoParamDataSource |
Utility class for calculating automatic parameters for gpu programs. | |
Friends | |
class | DefaultIntersectionSceneQuery |
class | DefaultRaySceneQuery |
class | DefaultSphereSceneQuery |
class | DefaultAxisAlignedBoxSceneQuery |
a collection of primitives.
Subclasses may use various techniques to organise the scene depending on how they are designed (e.g. BSPs, octrees etc). As with other classes, methods preceded with '_' are designed to be called by other classes in the Ogre system, not by user applications, although this is not forbidden.
Definition at line 73 of file OgreSceneManager.h.
|
Storage of animations, lookup by name.
Definition at line 206 of file OgreSceneManager.h. |
|
Definition at line 1141 of file OgreSceneManager.h. |
|
Definition at line 122 of file OgreSceneManager.h. |
|
Definition at line 1140 of file OgreSceneManager.h. |
|
Definition at line 103 of file OgreSceneManager.h. |
|
Definition at line 1139 of file OgreSceneManager.h. |
|
Definition at line 116 of file OgreSceneManager.h. |
|
Definition at line 1138 of file OgreSceneManager.h. |
|
Definition at line 217 of file OgreSceneManager.h. |
|
Definition at line 109 of file OgreSceneManager.h. |
|
Definition at line 128 of file OgreSceneManager.h. |
|
Definition at line 178 of file OgreSceneManager.h. Referenced by setSkyBox(), and setSkyDome(). |
|
Prefab shapes available without loading a model.
Definition at line 465 of file OgreSceneManager.h. |
|
Default constructor.
Definition at line 60 of file OgreSceneManager.cpp. References Ogre::FOG_NONE, mDisplayNodes, mFogMode, mSceneRoot, mShowBoundingBoxes, mSkyBoxEnabled, mSkyBoxEntity, mSkyBoxNode, mSkyDomeEnabled, mSkyDomeEntity, mSkyDomeNode, mSkyPlaneEnabled, mSkyPlaneEntity, mSkyPlaneNode, and Ogre::uint. |
|
Default destructor.
Definition at line 94 of file OgreSceneManager.cpp. References clearScene(), and mSceneRoot. |
|
Internal method for applying animations to scene nodes.
Definition at line 1574 of file OgreSceneManager.cpp. References Ogre::Animation::_getTrackList(), Ogre::Animation::apply(), getAnimation(), mAnimationStates, and Ogre::Node::resetToInitialState(). Referenced by _renderScene(). |
|
Internal method which parses the scene to find visible objects to render.
Reimplemented in Ogre::BspSceneManager, Ogre::OctreeSceneManager, and Ogre::TerrainSceneManager. Definition at line 1111 of file OgreSceneManager.cpp. References Ogre::SceneNode::_findVisibleObjects(), mDisplayNodes, mRenderQueue, and mSceneRoot. Referenced by _renderScene(). |
|
Populate a light list with an ordered set of the lights which are closest to the position specified.
Definition at line 235 of file OgreSceneManager.cpp. References Ogre::Light::getAttenuationRange(), Ogre::Light::getDerivedPosition(), Ogre::Light::getType(), Ogre::MovableObject::isVisible(), Ogre::LightList, mLights, Ogre::Real, and Ogre::Light::tempSquareDist. Referenced by Ogre::SceneNode::getLights(). |
|
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome.
Definition at line 1757 of file OgreSceneManager.cpp. References Ogre::RenderQueue::addRenderable(), Ogre::Camera::getDerivedPosition(), Ogre::Entity::getSubEntity(), mRenderQueue, mSkyBoxDrawFirst, mSkyBoxEntity, mSkyBoxNode, mSkyDomeDrawFirst, mSkyDomeEntity, mSkyDomeNode, mSkyPlaneDrawFirst, mSkyPlaneEntity, mSkyPlaneNode, Ogre::RENDER_QUEUE_1, Ogre::RENDER_QUEUE_9, RENDERABLE_DEFAULT_PRIORITY, Ogre::RenderQueueGroupID, Ogre::Node::setPosition(), and Ogre::uint. Referenced by _renderScene(). |
|
|
Sends visible objects found in _findVisibleObjects to the rendering engine.
Reimplemented in Ogre::BspSceneManager, and Ogre::TerrainSceneManager. Definition at line 1118 of file OgreSceneManager.cpp. References Ogre::RenderQueue::_getQueueGroupIterator(), fireRenderQueueEnded(), fireRenderQueueStarted(), Ogre::RenderQueueGroup::getIterator(), mCameraInProgress, mRenderQueue, Ogre::RenderPriorityGroup::mSolidPasses, Ogre::RenderPriorityGroup::mTransparentPasses, Ogre::RenderQueueGroupID, renderSingleObject(), setPass(), and Ogre::RenderPriorityGroup::sort(). Referenced by _renderScene(). |
|
Notifies the scene manager of its destination render system.
Definition at line 700 of file OgreSceneManager.cpp. References mDestRenderSystem. Referenced by Ogre::SceneManagerEnumerator::setSceneManager(). |
|
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class.
Reimplemented in Ogre::OctreeSceneManager, and Ogre::TerrainSceneManager. Definition at line 1100 of file OgreSceneManager.cpp. References Ogre::SceneNode::_update(), and mSceneRoot. Referenced by _renderScene(). |
|
Registers a new RenderQueueListener which will be notified when render queues are processed.
Definition at line 1811 of file OgreSceneManager.cpp. References mRenderQueueListeners. |
|
Empties the entire scene, inluding all SceneNodes, Cameras, Entities and Lights etc.
Definition at line 369 of file OgreSceneManager.cpp. References destroyAllAnimations(), Ogre::SceneNode::detachAllObjects(), mBillboardSets, mCameras, mEntities, mSceneNodes, mSceneRoot, mSkyBoxEnabled, mSkyBoxNode, mSkyDomeEnabled, mSkyDomeNode, mSkyPlaneEnabled, mSkyPlaneNode, Ogre::Node::removeAllChildren(), and removeAllLights(). Referenced by ~SceneManager(). |
|
Creates an AxisAlignedBoxSceneQuery for this scene manager.
Reimplemented in Ogre::BspSceneManager. Definition at line 1874 of file OgreSceneManager.cpp. References DefaultAxisAlignedBoxSceneQuery, and Ogre::SceneQuery::setQueryMask(). |
|
Creates an animation which can be used to animate scene nodes.
Definition at line 1454 of file OgreSceneManager.cpp. References mAnimationsList, and Ogre::Real. |
|
Create an AnimationState object for managing application of animations.
Definition at line 1501 of file OgreSceneManager.cpp. References Except, getAnimation(), Ogre::Animation::getLength(), and mAnimationStates. |
|
Creates a new BillboardSet for use with this scene manager.
Definition at line 1401 of file OgreSceneManager.cpp. References mBillboardSets. |
|
Creates a camera to be managed by this scene manager.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 101 of file OgreSceneManager.cpp. References mCameras. |
|
Create an Entity (instance of a discrete mesh) from a range of prefab shapes.
Definition at line 273 of file OgreSceneManager.cpp. References createEntity(), and PT_PLANE. |
|
Create an Entity (instance of a discrete mesh).
Definition at line 287 of file OgreSceneManager.cpp. References Except, and mEntities. Referenced by Ogre::Entity::clone(), createEntity(), Ogre::OverlayManager::parseNewMesh(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Creates an IntersectionSceneQuery for this scene manager.
Reimplemented in Ogre::BspSceneManager. Definition at line 1898 of file OgreSceneManager.cpp. References DefaultIntersectionSceneQuery, and Ogre::SceneQuery::setQueryMask(). |
|
Creates a light for use in the scene.
Definition at line 167 of file OgreSceneManager.cpp. References mLights. |
|
Creates a new material with default settings with the specified name.
Definition at line 419 of file OgreSceneManager.cpp. Referenced by Ogre::Quake3Shader::createAsMaterial(), Ogre::BspLevel::loadQuake3Level(), and Ogre::TerrainSceneManager::setWorldGeometry(). |
|
Creates a new Overlay.
Definition at line 1626 of file OgreSceneManager.cpp. References Ogre::Overlay::setZOrder(), and Ogre::ushort. |
|
Creates a RaySceneQuery for this scene manager.
Reimplemented in Ogre::BspSceneManager. Definition at line 1890 of file OgreSceneManager.cpp. References DefaultRaySceneQuery, and Ogre::SceneQuery::setQueryMask(). |
|
Creates an instance of a SceneNode with a given name.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 452 of file OgreSceneManager.cpp. References Ogre::Node::getName(), and mSceneNodes. |
|
Creates an instance of a SceneNode.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 445 of file OgreSceneManager.cpp. References Ogre::Node::getName(), and mSceneNodes. Referenced by Ogre::SceneNode::createChildImpl(), Ogre::OverlayManager::parseNewMesh(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Definition at line 956 of file OgreSceneManager.cpp. References BP_BACK, BP_DOWN, BP_FRONT, BP_LEFT, BP_RIGHT, BP_UP, Ogre::MeshManager::createPlane(), Ogre::Plane::d, Ogre::ResourceManager::getByName(), Ogre::Plane::normal, Ogre::Real, and Ogre::ResourceManager::unload(). Referenced by setSkyBox(). |
|
Definition at line 1026 of file OgreSceneManager.cpp. References BP_BACK, BP_DOWN, BP_FRONT, BP_LEFT, BP_RIGHT, BP_UP, Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::Plane::d, Ogre::ResourceManager::getByName(), Ogre::Plane::normal, Ogre::Real, and Ogre::ResourceManager::unload(). Referenced by setSkyDome(). |
|
Creates a SphereSceneQuery for this scene manager.
Reimplemented in Ogre::BspSceneManager. Definition at line 1882 of file OgreSceneManager.cpp. References DefaultSphereSceneQuery, and Ogre::SceneQuery::setQueryMask(). |
|
Removes all animations created using this SceneManager.
Definition at line 1490 of file OgreSceneManager.cpp. References mAnimationsList. Referenced by clearScene(). |
|
Removes all animation states created using this SceneManager.
Definition at line 1569 of file OgreSceneManager.cpp. References mAnimationStates. |
|
Destroys all the overlays.
Definition at line 1702 of file OgreSceneManager.cpp. |
|
Destroys an Animation.
Definition at line 1473 of file OgreSceneManager.cpp. References Except, and mAnimationsList. |
|
Destroys an AnimationState.
Definition at line 1553 of file OgreSceneManager.cpp. References Except, and mAnimationStates. |
|
Destroys the named Overlay.
Definition at line 1676 of file OgreSceneManager.cpp. References Except. |
|
Destroys a scene query of any type.
Definition at line 1906 of file OgreSceneManager.cpp. |
|
Destroys a SceneNode with a given name.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 459 of file OgreSceneManager.cpp. References Except, and mSceneNodes. Referenced by Ogre::SceneNode::removeAndDestroyAllChildren(), and Ogre::SceneNode::removeAndDestroyChild(). |
|
Internal method for firing the queue end event, returns true if queue is to be repeated.
Definition at line 1844 of file OgreSceneManager.cpp. References mRenderQueueListeners, and Ogre::RenderQueueGroupID. Referenced by _renderVisibleObjects(). |
|
Internal method for firing the queue start event, returns true if queue is to be skipped.
Definition at line 1831 of file OgreSceneManager.cpp. References mRenderQueueListeners, and Ogre::RenderQueueGroupID. Referenced by _renderVisibleObjects(). |
|
Returns the ambient light level to be used for the scene.
Definition at line 1353 of file OgreSceneManager.cpp. References mAmbientLight. |
|
Looks up an Animation object previously created with createAnimation.
Definition at line 1461 of file OgreSceneManager.cpp. References Except, and mAnimationsList. Referenced by _applySceneAnimations(), and createAnimationState(). |
|
Retrieves animation state as previously created using createAnimationState.
Definition at line 1538 of file OgreSceneManager.cpp. References Except, and mAnimationStates. |
|
Retrieves a pointer to the named BillboardSet.
Definition at line 1409 of file OgreSceneManager.cpp. References mBillboardSets. |
|
Returns a specialised MapIterator over all cameras in the scene.
Definition at line 1156 of file OgreSceneManager.h. |
|
Retrieves a pointer to the named camera.
Definition at line 111 of file OgreSceneManager.cpp. References mCameras. Referenced by Ogre::OctreeSceneManager::_findVisibleObjects(). |
|
Returns a specialised MapIterator over all cameras in the scene.
Definition at line 1152 of file OgreSceneManager.h. |
|
Returns a pointer to the default Material settings.
Definition at line 428 of file OgreSceneManager.cpp. |
|
Retrieves a pointer to the named Entity.
Definition at line 314 of file OgreSceneManager.cpp. References mEntities. |
|
Returns a specialised MapIterator over all entities in the scene.
Definition at line 1148 of file OgreSceneManager.h. |
|
Returns the fog colour for the scene.
Definition at line 1381 of file OgreSceneManager.cpp. References mFogColour. |
|
Returns the fog density for the scene.
Definition at line 1396 of file OgreSceneManager.cpp. References mFogDensity, and Ogre::Real. |
|
Returns the fog end distance for the scene.
Definition at line 1391 of file OgreSceneManager.cpp. References mFogEnd, and Ogre::Real. |
|
Returns the fog mode for the scene.
Definition at line 1376 of file OgreSceneManager.cpp. References Ogre::FogMode, and mFogMode. |
|
Returns the fog start distance for the scene.
Definition at line 1386 of file OgreSceneManager.cpp. References mFogStart, and Ogre::Real. |
|
Returns a pointer to the named Light which has previously been added to the scene.
Definition at line 175 of file OgreSceneManager.cpp. References mLights. |
|
Returns a specialised MapIterator over all lights in the scene.
Definition at line 1144 of file OgreSceneManager.h. |
|
Gets a reference to a material by it's numerical handle.
Definition at line 439 of file OgreSceneManager.cpp. |
|
Gets a reference to a named Material.
Definition at line 433 of file OgreSceneManager.cpp. Referenced by Ogre::BspLevel::loadQuake3Level(), Ogre::BspSceneManager::processVisibleLeaf(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Method for getting the value of an implementation-specific Scene Manager option.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 593 of file OgreSceneManager.h. |
|
Method for getting all the implementation-specific options of the scene manager.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 627 of file OgreSceneManager.h. |
|
Method for getting all possible values for a specific option. When this list is too large (i.e. the option expects, for example, a float), the return value will be true, but the list will contain just one element whose size will be set to 0. Otherwise, the list will be filled with all the possible values the option can accept.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 619 of file OgreSceneManager.h. |
|
Gets a pointer to the named Overlay, previously created using createOverlay.
Definition at line 1651 of file OgreSceneManager.cpp. References Except. |
|
Gets the SceneNode at the root of the scene hierarchy.
Definition at line 473 of file OgreSceneManager.cpp. References mSceneRoot. Referenced by Ogre::TerrainSceneManager::setWorldGeometry(). |
|
Retrieves a named SceneNode from the scene graph.
Definition at line 478 of file OgreSceneManager.cpp. References Except, and mSceneNodes. Referenced by Ogre::OctreeSceneManager::destroySceneNode(). |
|
Returns if all bounding boxes of scene nodes are to be displayed.
Definition at line 1868 of file OgreSceneManager.cpp. References mShowBoundingBoxes. Referenced by Ogre::SceneNode::_findVisibleObjects(). |
|
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.
Reimplemented in Ogre::BspSceneManager. Definition at line 1358 of file OgreSceneManager.cpp. References Ogre::ViewPoint::orientation, and Ogre::ViewPoint::position. |
|
Method for verifying wether the scene manager has an implementation-specific option.
Definition at line 604 of file OgreSceneManager.h. |
|
Manual rendering method, for advanced users only.
Definition at line 1608 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_beginFrame(), Ogre::RenderSystem::_endFrame(), Ogre::RenderSystem::_render(), Ogre::RenderSystem::_setProjectionMatrix(), Ogre::RenderSystem::_setViewMatrix(), Ogre::RenderSystem::_setViewport(), Ogre::RenderSystem::_setWorldMatrix(), mDestRenderSystem, and setPass(). |
|
Removes (and destroys) all cameras from the scene.
Definition at line 155 of file OgreSceneManager.cpp. References mCameras. |
|
Removes & destroys all Entities.
Definition at line 358 of file OgreSceneManager.cpp. References mEntities. |
|
Removes and destroys all lights in the scene.
Definition at line 219 of file OgreSceneManager.cpp. References mLights. Referenced by clearScene(). |
|
Removes & destroys an BillboardSet from the SceneManager by name.
Definition at line 1438 of file OgreSceneManager.cpp. References mBillboardSets. |
|
Removes & destroys an BillboardSet from the SceneManager.
Definition at line 1422 of file OgreSceneManager.cpp. References mBillboardSets. |
|
Removes a camera from the scene.
Definition at line 142 of file OgreSceneManager.cpp. References mCameras. |
|
Removes a camera from the scene.
Definition at line 125 of file OgreSceneManager.cpp. References mCameras. |
|
Removes & destroys an Entity from the SceneManager by name.
Definition at line 345 of file OgreSceneManager.cpp. References mEntities. |
|
Removes & destroys an Entity from the SceneManager.
Definition at line 328 of file OgreSceneManager.cpp. References mEntities. Referenced by setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Removes the light from the scene and destroys it based on a pointer.
Definition at line 189 of file OgreSceneManager.cpp. References mLights. |
|
Removes the named light from the scene and destroys it.
Definition at line 206 of file OgreSceneManager.cpp. References mLights. |
|
Removes a listener previously added with addRenderQueueListener.
Definition at line 1816 of file OgreSceneManager.cpp. References mRenderQueueListeners. |
|
Internal utility method for rendering a single object.
Definition at line 1207 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_render(), Ogre::RenderSystem::_setRasterisationMode(), Ogre::RenderSystem::_setTextureUnitSettings(), Ogre::RenderSystem::_setWorldMatrices(), Ogre::RenderSystem::_setWorldMatrix(), Ogre::Pass::_updateAutoParamsLightsOnly(), Ogre::Pass::_updateAutoParamsNoLights(), Ogre::RenderSystem::_useLights(), Ogre::RenderSystem::bindGpuProgramParameters(), Ogre::Camera::getDetailLevel(), Ogre::Pass::getFragmentProgramParameters(), Ogre::Pass::getLightingEnabled(), Ogre::Renderable::getLights(), Ogre::Pass::getMaxSimultaneousLights(), Ogre::Renderable::getNormaliseNormals(), Ogre::Renderable::getNumWorldTransforms(), Ogre::Pass::getOnlyLightType(), Ogre::Renderable::getRenderDetail(), Ogre::Renderable::getRenderOperation(), Ogre::Pass::getRunOncePerLight(), Ogre::Pass::getRunOnlyForOneLightType(), Ogre::Pass::getTextureUnitStateIterator(), Ogre::Pass::getVertexProgramParameters(), Ogre::Renderable::getWorldTransforms(), Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_VERTEX_PROGRAM, Ogre::Pass::hasFragmentProgram(), Ogre::Pass::hasVertexProgram(), Ogre::TextureUnitState::hasViewRelativeTextureCoordinateGeneration(), Ogre::Pass::isProgrammable(), Ogre::LightList, mAutoParamDataSource, mCameraInProgress, mDestRenderSystem, Ogre::SceneDetailLevel, Ogre::AutoParamDataSource::setCurrentLightList(), Ogre::AutoParamDataSource::setCurrentRenderable(), Ogre::RenderSystem::setNormaliseNormals(), Ogre::RenderOperation::srcRenderable, and useRenderableViewProjMode(). Referenced by _renderVisibleObjects(). |
|
Sets the ambient light level to be used for the scene.
Definition at line 1347 of file OgreSceneManager.cpp. References Ogre::ColourValue::b, Ogre::ColourValue::g, mAmbientLight, mDestRenderSystem, Ogre::ColourValue::r, and Ogre::RenderSystem::setAmbientLight(). |
|
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene.
Definition at line 1449 of file OgreSceneManager.cpp. References mDisplayNodes. |
|
Sets the fogging mode applied to the scene.
Definition at line 1367 of file OgreSceneManager.cpp. References Ogre::FogMode, mFogColour, mFogDensity, mFogEnd, mFogMode, mFogStart, and Ogre::Real. |
|
Method for setting a specific option of the Scene Manager. These options are usually specific for a certain implemntation of the Scene Manager class, and may (and probably will) not exist across different implementations.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 578 of file OgreSceneManager.h. |
|
Internal method for setting up the renderstate for a rendering pass.
Definition at line 492 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_disableTextureUnitsFrom(), Ogre::GpuProgram::_getBindingDelegate(), Ogre::RenderSystem::_setColourBufferWriteEnabled(), Ogre::RenderSystem::_setCullingMode(), Ogre::RenderSystem::_setDepthBias(), Ogre::RenderSystem::_setDepthBufferCheckEnabled(), Ogre::RenderSystem::_setDepthBufferFunction(), Ogre::RenderSystem::_setDepthBufferWriteEnabled(), Ogre::RenderSystem::_setFog(), Ogre::RenderSystem::_setSceneBlending(), Ogre::RenderSystem::_setSurfaceParams(), Ogre::RenderSystem::_setTextureUnitSettings(), Ogre::RenderSystem::bindGpuProgram(), Ogre::FogMode, Ogre::Pass::getAmbient(), Ogre::Pass::getColourWriteEnabled(), Ogre::Pass::getCullingMode(), Ogre::Pass::getDepthBias(), Ogre::Pass::getDepthCheckEnabled(), Ogre::Pass::getDepthFunction(), Ogre::Pass::getDepthWriteEnabled(), Ogre::Pass::getDestBlendFactor(), Ogre::Pass::getDiffuse(), Ogre::Pass::getFogColour(), Ogre::Pass::getFogDensity(), Ogre::Pass::getFogEnd(), Ogre::Pass::getFogMode(), Ogre::Pass::getFogOverride(), Ogre::Pass::getFogStart(), Ogre::Pass::getFragmentProgram(), Ogre::Pass::getLightingEnabled(), Ogre::Pass::getNumTextureUnitStates(), Ogre::Pass::getSelfIllumination(), Ogre::Pass::getShadingMode(), Ogre::Pass::getShininess(), Ogre::Pass::getSourceBlendFactor(), Ogre::Pass::getSpecular(), Ogre::Pass::getTextureUnitStateIterator(), Ogre::Pass::getVertexProgram(), Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_VERTEX_PROGRAM, Ogre::Pass::hasFragmentProgram(), Ogre::Pass::hasVertexProgram(), mDestRenderSystem, mFogColour, mFogDensity, mFogEnd, mFogMode, mFogStart, Ogre::Real, Ogre::RenderSystem::setLightingEnabled(), Ogre::RenderSystem::setShadingType(), and Ogre::RenderSystem::unbindGpuProgram(). Referenced by _renderVisibleObjects(), manualRender(), and Ogre::BspSceneManager::renderStaticGeometry(). |
|
Enables / disables a 'sky box' i.e. a 6-sided box at constant distance from the camera representing the sky.
Definition at line 816 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), BoxPlane, Ogre::Material::clone(), Ogre::Material::copyDetailsTo(), createEntity(), createSceneNode(), createSkyboxPlane(), Ogre::SceneNode::detachAllObjects(), Except, Ogre::Material::getBestTechnique(), Ogre::ResourceManager::getByName(), getMaterial(), Ogre::Material::getName(), Ogre::Resource::getName(), Ogre::Technique::getPass(), Ogre::Pass::getTextureUnitState(), Ogre::Material::load(), mSkyBoxDrawFirst, mSkyBoxEnabled, mSkyBoxEntity, mSkyBoxNode, Ogre::Real, removeEntity(), Ogre::TextureUnitState::setCurrentFrame(), Ogre::Material::setDepthWriteEnabled(), Ogre::Entity::setMaterialName(), and Ogre::TextureUnitState::setTextureAddressingMode(). |
|
Enables / disables a 'sky dome' i.e. an illusion of a curved sky.
Definition at line 897 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), BoxPlane, createEntity(), createSceneNode(), createSkydomePlane(), Ogre::SceneNode::detachAllObjects(), Except, getMaterial(), Ogre::Material::getName(), Ogre::Resource::getName(), Ogre::Material::load(), mSkyDomeDrawFirst, mSkyDomeEnabled, mSkyDomeEntity, mSkyDomeNode, Ogre::Real, removeEntity(), Ogre::Material::setDepthWriteEnabled(), and Ogre::Entity::setMaterialName(). Referenced by Ogre::Quake3Shader::createAsMaterial(). |
|
Enables / disables a 'sky plane' i.e. a plane at constant distance from the camera representing the sky.
Definition at line 738 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), createEntity(), createSceneNode(), Ogre::Vector3::crossProduct(), Ogre::SceneNode::detachAllObjects(), Except, getMaterial(), Ogre::Material::load(), mSkyPlane, mSkyPlaneDrawFirst, mSkyPlaneEnabled, mSkyPlaneEntity, mSkyPlaneNode, Ogre::Plane::normal, Ogre::Real, removeEntity(), Ogre::Material::setDepthWriteEnabled(), and Ogre::Entity::setMaterialName(). |
|
Internal method for setting the destination viewport for the next render.
Definition at line 1857 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setViewport(), and mDestRenderSystem. Referenced by _renderScene(). |
|
Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc.
Reimplemented in Ogre::BspSceneManager, and Ogre::TerrainSceneManager. Definition at line 707 of file OgreSceneManager.cpp. References Except. |
|
Allows all bounding boxes of scene nodes to be displayed.
Definition at line 1863 of file OgreSceneManager.cpp. References mShowBoundingBoxes. |
|
Internal method used by _renderVisibleObjects to deal with renderables which override the camera's own view / projection materices.
Definition at line 1718 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setProjectionMatrix(), Ogre::RenderSystem::_setViewMatrix(), Ogre::Camera::getProjectionMatrix(), Ogre::Camera::getViewMatrix(), mCamChanged, mCameraInProgress, mDestRenderSystem, Ogre::Renderable::useIdentityProjection(), and Ogre::Renderable::useIdentityView(). Referenced by renderSingleObject(). |
|
Definition at line 78 of file OgreSceneManager.h. Referenced by createAABBQuery(). |
|
Definition at line 75 of file OgreSceneManager.h. Referenced by createIntersectionQuery(). |
|
Definition at line 76 of file OgreSceneManager.h. Referenced by createRayQuery(). |
|
Definition at line 77 of file OgreSceneManager.h. Referenced by createSphereQuery(). |
|
Current ambient light, cached for RenderSystem.
Definition at line 98 of file OgreSceneManager.h. Referenced by _renderScene(), getAmbientLight(), and setAmbientLight(). |
|
Definition at line 207 of file OgreSceneManager.h. Referenced by createAnimation(), destroyAllAnimations(), destroyAnimation(), and getAnimation(). |
|
Definition at line 208 of file OgreSceneManager.h. Referenced by _applySceneAnimations(), createAnimationState(), destroyAllAnimationStates(), destroyAnimationState(), and getAnimationState(). |
|
Utility class for calculating automatic parameters for gpu programs.
Definition at line 238 of file OgreSceneManager.h. Referenced by _renderScene(), and renderSingleObject(). |
|
Central list of billboard sets - for easy memory management and lookup.
Definition at line 126 of file OgreSceneManager.h. Referenced by clearScene(), createBillboardSet(), getBillboardSet(), and removeBillboardSet(). |
|
Controller flag for determining if we need to set view/proj matrices.
Definition at line 215 of file OgreSceneManager.h. Referenced by _renderScene(), and useRenderableViewProjMode(). |
|
Camera in progress.
Definition at line 139 of file OgreSceneManager.h. Referenced by _renderScene(), _renderVisibleObjects(), renderSingleObject(), Ogre::BspSceneManager::renderStaticGeometry(), and useRenderableViewProjMode(). |
|
Central list of cameras - for easy memory management and lookup.
Definition at line 107 of file OgreSceneManager.h. Referenced by clearScene(), createCamera(), Ogre::OctreeSceneManager::createCamera(), getCamera(), removeAllCameras(), and removeCamera(). |
|
The rendering system to send the scene to.
Definition at line 101 of file OgreSceneManager.h. Referenced by _renderScene(), Ogre::TerrainSceneManager::_renderVisibleObjects(), _setDestinationRenderSystem(), manualRender(), renderSingleObject(), Ogre::BspSceneManager::renderStaticGeometry(), setAmbientLight(), setPass(), setViewport(), and useRenderableViewProjMode(). |
|
Definition at line 203 of file OgreSceneManager.h. Referenced by _findVisibleObjects(), SceneManager(), and setDisplaySceneNodes(). |
|
Central list of entities - for easy memory management and lookup.
Definition at line 120 of file OgreSceneManager.h. Referenced by clearScene(), createEntity(), Ogre::DefaultSphereSceneQuery::execute(), Ogre::DefaultRaySceneQuery::execute(), Ogre::DefaultAxisAlignedBoxSceneQuery::execute(), Ogre::DefaultIntersectionSceneQuery::execute(), getEntity(), removeAllEntities(), and removeEntity(). |
|
Definition at line 167 of file OgreSceneManager.h. Referenced by getFogColour(), setFog(), and setPass(). |
|
Definition at line 170 of file OgreSceneManager.h. Referenced by getFogDensity(), setFog(), and setPass(). |
|
Definition at line 169 of file OgreSceneManager.h. |
|
Definition at line 166 of file OgreSceneManager.h. Referenced by getFogMode(), SceneManager(), setFog(), and setPass(). |
|
Definition at line 168 of file OgreSceneManager.h. Referenced by getFogStart(), setFog(), and setPass(). |
|
Central list of lights - for easy memory management and lookup.
Definition at line 113 of file OgreSceneManager.h. Referenced by _populateLightList(), createLight(), getLight(), removeAllLights(), and removeLight(). |
|
Queue of objects for rendering.
Definition at line 95 of file OgreSceneManager.h. Referenced by _findVisibleObjects(), Ogre::OctreeSceneManager::_findVisibleObjects(), _queueSkiesForRendering(), _renderScene(), _renderVisibleObjects(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
Definition at line 218 of file OgreSceneManager.h. Referenced by addRenderQueueListener(), fireRenderQueueEnded(), fireRenderQueueStarted(), and removeRenderQueueListener(). |
|
Central list of SceneNodes - for easy memory management.
Definition at line 136 of file OgreSceneManager.h. Referenced by clearScene(), createSceneNode(), Ogre::OctreeSceneManager::createSceneNode(), Ogre::BspSceneManager::createSceneNode(), destroySceneNode(), and getSceneNode(). |
|
Root scene node.
Definition at line 142 of file OgreSceneManager.h. Referenced by _findVisibleObjects(), _updateSceneGraph(), clearScene(), getRootSceneNode(), Ogre::OctreeSceneManager::init(), SceneManager(), and ~SceneManager(). |
|
Flag that indicates if all of the scene node's bounding boxes should be shown as a wireframe.
Definition at line 229 of file OgreSceneManager.h. Referenced by getShowBoundingBoxes(), Ogre::BspSceneManager::processVisibleLeaf(), SceneManager(), showBoundingBoxes(), and Ogre::OctreeSceneManager::walkOctree(). |
|
Definition at line 159 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyBox(). |
|
Definition at line 158 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), SceneManager(), and setSkyBox(). |
|
Definition at line 148 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), SceneManager(), and setSkyBox(). |
|
Definition at line 152 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), SceneManager(), and setSkyBox(). |
|
Definition at line 160 of file OgreSceneManager.h. |
|
Definition at line 163 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyDome(). |
|
Definition at line 162 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), SceneManager(), and setSkyDome(). |
|
Definition at line 147 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), SceneManager(), and setSkyDome(). |
|
Definition at line 151 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), SceneManager(), and setSkyDome(). |
|
Definition at line 164 of file OgreSceneManager.h. |
|
Definition at line 156 of file OgreSceneManager.h. Referenced by setSkyPlane(). |
|
Definition at line 155 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyPlane(). |
|
Definition at line 154 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), SceneManager(), and setSkyPlane(). |
|
Definition at line 146 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), SceneManager(), and setSkyPlane(). |
|
Definition at line 150 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), SceneManager(), and setSkyPlane(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:20:01 2004