OGRE-Next  4.0.0unstable
Object-Oriented Graphics Rendering Engine
Ogre::DefaultSceneManager Class Referencefinal

Default scene manager. More...

#include <OgreSceneManagerEnumerator.h>

+ Inheritance diagram for Ogre::DefaultSceneManager:

Public Member Functions

 DefaultSceneManager (const String &name, size_t numWorkerThreads)
 
 ~DefaultSceneManager () override
 
const StringgetTypeName () const override
 Retrieve the type name of this scene manager. More...
 
- Public Member Functions inherited from Ogre::SceneManager
 SceneManager (const String &instanceName, size_t numWorkerThreads)
 Constructor. More...
 
virtual ~SceneManager ()
 Default destructor. More...
 
virtual void _addAutotrackingSceneNode (SceneNode *source, SceneNode *target, const Vector3 &offset, const Vector3 &localDirection)
 Internal method for notifying the manager that a SceneNode is autotracking. More...
 
void _addCompositorTexture (IdString name, TextureGpu *tex)
 Used by Compositor, tells of which compositor textures active, so Materials can access them. More...
 
void _addWireAabb (WireAabb *wireAabb)
 
virtual void _applySceneAnimations ()
 Internal method for applying animations to scene nodes. More...
 
virtual bool _areRenderStateChangesSuppressed () const
 Are render state changes suppressed? More...
 
AxisAlignedBox _calculateCurrentCastersBox (uint32 viewportVisibilityMask, uint8 firstRq, uint8 lastRq) const
 
bool _collectForwardPlusObjects (const Camera *camera)
 Returns true if collection code was run. More...
 
virtual InternalCubemapProbe_createCubemapProbe (SceneMemoryMgrTypes sceneType)
 
virtual SceneNode_createSceneNode (SceneNode *parent, NodeMemoryManager *nodeMemoryManager)
 
virtual TagPoint_createTagPoint (SceneNode *parent, NodeMemoryManager *nodeMemoryManager)
 Don't call this function directly. More...
 
virtual void _cullPhase01 (Camera *cullCamera, Camera *renderCamera, const Camera *lodCamera, uint8 firstRq, uint8 lastRq, bool reuseCullData)
 Performs the frustum culling that will later be needed by _renderPhase02. More...
 
virtual void _destroyAllCubemapProbes ()
 
virtual void _destroyCubemapProbe (InternalCubemapProbe *probe)
 
void _fireParallelHlmsCompile ()
 
void _fireWarmUpShadersCompile ()
 
void _frameEnded ()
 Called when the frame has fully ended (ALL passes have been executed to all RTTs) More...
 
ForwardPlusBase_getActivePassForwardPlus ()
 
AutoParamDataSource_getAutoParamDataSource () const
 
uint32 _getCombinedVisibilityMask () const
 Internal method for getting the combination between the global visibility mask and the per-viewport visibility mask. More...
 
IlluminationRenderStage _getCurrentRenderStage () const
 
ObjectMemoryManager_getEntityMemoryManager (SceneMemoryMgrTypes sceneType)
 Retrieves the main entity memory manager. More...
 
ObjectMemoryManager_getLightMemoryManager ()
 
NodeMemoryManager_getNodeMemoryManager (SceneMemoryMgrTypes sceneType)
 
NodeMemoryManager_getTagPointNodeMemoryManager ()
 
VisibleObjectsPerThreadArray_getTmpVisibleObjectsList ()
 
void _handleLodEvents ()
 Handle LOD events. More...
 
virtual void _markGpuParamsDirty (uint16 mask)
 Method to allow you to mark gpu parameters as dirty, causing them to be updated according to the mask that you set when updateGpuProgramParameters is next called. More...
 
void _notifyEntityMaterialLodChanged (EntityMaterialLodChangedEvent &evt)
 Notify that an entity material LOD change event has occurred. More...
 
void _notifyEntityMeshLodChanged (EntityMeshLodChangedEvent &evt)
 Notify that an entity mesh LOD change event has occurred. More...
 
void _notifyMovableObjectLodChanged (MovableObjectLodChangedEvent &evt)
 Notify that a movable object LOD change event has occurred. More...
 
virtual RenderContext_pauseRendering ()
 Pause rendering of the frame. More...
 
virtual void _releaseManualHardwareResources ()
 Notifies the scene manager that hardware resources were lost. More...
 
virtual void _removeAutotrackingSceneNode (SceneNode *source)
 
void _removeCompositorTextures (size_t from)
 Removes all compositor textures from 'from' to end. More...
 
void _removeSkeletonDef (const SkeletonDef *skeletonDef)
 Removes a skeleton definition from its memory manager. More...
 
void _removeWireAabb (WireAabb *wireAabb)
 
virtual void _renderPhase02 (Camera *camera, const Camera *lodCamera, uint8 firstRq, uint8 lastRq, bool includeOverlays)
 Prompts the class to send its contents to the renderer. More...
 
virtual void _renderSingleObject (Renderable *pRend, const MovableObject *pMovableObject, bool casterPass, bool dualParaboloid)
 
virtual void _restoreManualHardwareResources ()
 Notifies the scene manager that hardware resources should be restored. More...
 
virtual void _resumeRendering (RenderContext *context)
 Resume rendering of the frame. More...
 
void _setAtmosphere (AtmosphereComponent *atmosphere)
 Sets an external atmosphere provider. More...
 
void _setCamerasInProgress (const CamerasInProgress &cameras)
 
void _setCurrentCompositorPass (CompositorPass *pass)
 
void _setCurrentRenderStage (IlluminationRenderStage stage)
 
void _setCurrentShadowNode (CompositorShadowNode *shadowNode)
 
virtual void _setDestinationRenderSystem (RenderSystem *sys)
 Notifies the scene manager of its destination render system. More...
 
void _setForwardPlusEnabledInPass (bool bEnable)
 For internal use. More...
 
void _setLightCullingVisibility (Camera *camera, bool collectLights, bool isCubemap)
 See Camera::setLightCullingVisibility. More...
 
void _setPrePassMode (PrePassMode mode, const TextureGpuVec &prepassTextures, TextureGpu *prepassDepthTexture, TextureGpu *ssrTexture)
 For internal use. More...
 
void _setRefractions (TextureGpu *depthTextureNoMsaa, TextureGpu *refractionsTexture)
 
virtual void _suppressRenderStateChanges (bool suppress)
 Indicates to the SceneManager whether it should suppress changing the RenderSystem states when rendering objects. More...
 
unsigned long _updateWorkerThread (ThreadHandle *threadHandle)
 Called from the worker thread, polls to process frustum culling requests when a sync is performed. More...
 
void _warmUpShadersCollect (Camera *camera, uint32_t visibilityMask, uint8 firstRq, uint8 lastRq)
 
void _warmUpShadersTrigger ()
 
virtual void addListener (Listener *s)
 Add a listener which will get called back on scene manager events. More...
 
void addLodListener (LodListener *listener)
 Add a level of detail listener. More...
 
virtual void addRenderObjectListener (RenderObjectListener *newListener)
 Registers a new Render Object Listener which will be notified when rendering an object. More...
 
virtual void addRenderQueueListener (RenderQueueListener *newListener)
 Registers a new RenderQueueListener which will be notified when render queues are processed. More...
 
void clearFrameData ()
 Clears temporary buffers and other data that needs to live every frame. More...
 
virtual void clearScene (bool deleteIndestructibleToo, bool reattachCameras=true)
 Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc. More...
 
virtual AxisAlignedBoxSceneQuerycreateAABBQuery (const AxisAlignedBox &box, uint32 mask=QUERY_ENTITY_DEFAULT_MASK)
 Creates an AxisAlignedBoxSceneQuery for this scene manager. More...
 
virtual v1::AnimationcreateAnimation (const String &name, Real length)
 Creates an animation which can be used to animate scene nodes. More...
 
virtual v1::AnimationStatecreateAnimationState (const String &animName)
 Create an AnimationState object for managing application of animations. More...
 
virtual v1::BillboardChaincreateBillboardChain ()
 Create a BillboardChain, an object which you can use to render a linked chain of billboards. More...
 
virtual v1::BillboardSetcreateBillboardSet (unsigned int poolSize=20, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Creates a new BillboardSet for use with this scene manager. More...
 
virtual CameracreateCamera (const String &name, bool notShadowCaster=true, bool forCubemapping=false)
 Creates a camera to be managed by this scene manager. More...
 
virtual DecalcreateDecal (SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 
virtual v1::EntitycreateEntity (const String &meshName, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Create an Entity (instance of a discrete mesh). More...
 
virtual v1::EntitycreateEntity (const v1::MeshPtr &pMesh, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Create an Entity (instance of a discrete mesh). More...
 
virtual v1::EntitycreateEntity (PrefabType ptype, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Create an Entity (instance of a discrete mesh) from a range of prefab shapes. More...
 
virtual IntersectionSceneQuerycreateIntersectionQuery (uint32 mask=QUERY_ENTITY_DEFAULT_MASK)
 Creates an IntersectionSceneQuery for this scene manager. More...
 
virtual ItemcreateItem (const MeshPtr &pMesh, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Create an Item (instance of a discrete mesh). More...
 
virtual ItemcreateItem (const String &meshName, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME, SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC, bool bUseMeshMat=true)
 Create an Item (instance of a discrete mesh). More...
 
virtual LightcreateLight ()
 Creates a light for use in the scene. More...
 
virtual ManualObjectcreateManualObject (SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface. More...
 
virtual MovableObjectcreateMovableObject (const String &typeName, ObjectMemoryManager *objectMemMgr, const NameValuePairList *params=0)
 Create a movable object of the type specified without a name. More...
 
virtual ParticleSystemcreateParticleSystem (const String &templateName)
 Creates a particle system based on a template. More...
 
virtual ParticleSystemcreateParticleSystem (size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
 Create a blank particle system. More...
 
virtual PlaneBoundedVolumeListSceneQuerycreatePlaneBoundedVolumeQuery (const PlaneBoundedVolumeList &volumes, uint32 mask=QUERY_ENTITY_DEFAULT_MASK)
 Creates a PlaneBoundedVolumeListSceneQuery for this scene manager. More...
 
virtual RaySceneQuerycreateRayQuery (const Ray &ray, uint32 mask=QUERY_ENTITY_DEFAULT_MASK)
 Creates a RaySceneQuery for this scene manager. More...
 
virtual Rectangle2DcreateRectangle2D (SceneMemoryMgrTypes sceneType=SCENE_STATIC)
 Creates a 2D rectangle that can be displayed for screen space effects or showing a basic GUI. More...
 
virtual v1::RibbonTrailcreateRibbonTrail ()
 Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follows one or more nodes. More...
 
virtual SceneNodecreateSceneNode (SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Creates an instance of a SceneNode. More...
 
SkeletonInstancecreateSkeletonInstance (const SkeletonDef *skeletonDef)
 Creates an instance of a skeleton based on the given definition. More...
 
virtual SphereSceneQuerycreateSphereQuery (const Sphere &sphere, uint32 mask=QUERY_ENTITY_DEFAULT_MASK)
 Creates a SphereSceneQuery for this scene manager. More...
 
virtual TagPointcreateTagPoint ()
 Creates a TagPoint that can be used like a SceneNode, or be used to be attached to a Bone. More...
 
virtual WireAabbcreateWireAabb ()
 Create an WireAabb. More...
 
void cullLights (Camera *camera, Light::LightTypes startType, Light::LightTypes endType, LightArray &outLights)
 
void defragmentMemoryPools ()
 Triggers on demand a defragmentation of the pools, so that all slots become contiguous in memory. More...
 
virtual void destroyAllAnimations ()
 Removes all animations created using this SceneManager. More...
 
virtual void destroyAllAnimationStates ()
 Removes all animation states created using this SceneManager. More...
 
virtual void destroyAllBillboardChains ()
 Removes & destroys all BillboardChains from the SceneManager. More...
 
virtual void destroyAllBillboardSets ()
 Removes & destroys all BillboardSets. More...
 
virtual void destroyAllCameras ()
 Removes (and destroys) all cameras from the scene. More...
 
virtual void destroyAllDecals ()
 
virtual void destroyAllEntities ()
 Removes & destroys all Entities. More...
 
virtual void destroyAllItems ()
 Removes & destroys all Items. More...
 
virtual void destroyAllLights ()
 Removes and destroys all lights in the scene. More...
 
virtual void destroyAllManualObjects ()
 Removes & destroys all ManualObjects from the SceneManager. More...
 
virtual void destroyAllMovableObjects ()
 Destroy all MovableObjects. More...
 
virtual void destroyAllMovableObjectsByType (const String &typeName)
 Destroy all MovableObjects of a given type. More...
 
virtual void destroyAllParticleSystems ()
 Removes & destroys all ParticleSystems from the SceneManager. More...
 
virtual void destroyAllRectangle2D ()
 Removes & destroys all Rectangle2D. More...
 
virtual void destroyAllRibbonTrails ()
 Removes & destroys all RibbonTrails from the SceneManager. More...
 
virtual void destroyAllWireAabbs ()
 Removes & destroys all WireAabbs. More...
 
virtual void destroyAnimation (const String &name)
 Destroys an Animation. More...
 
virtual void destroyAnimationState (const String &name)
 Destroys an AnimationState. More...
 
virtual void destroyBillboardChain (v1::BillboardChain *obj)
 Removes & destroys a BillboardChain from the SceneManager. More...
 
virtual void destroyBillboardSet (v1::BillboardSet *set)
 Removes & destroys an BillboardSet from the SceneManager. More...
 
virtual void destroyCamera (Camera *cam)
 Removes a camera from the scene. More...
 
virtual void destroyDecal (Decal *decal)
 
virtual void destroyEntity (v1::Entity *ent)
 Removes & destroys an Entity from the SceneManager. More...
 
virtual void destroyItem (Item *item)
 Removes & destroys an Item from the SceneManager. More...
 
virtual void destroyLight (Light *light)
 Removes the light from the scene and destroys it based on a pointer. More...
 
virtual void destroyManualObject (ManualObject *obj)
 Removes & destroys a ManualObject from the SceneManager. More...
 
virtual void destroyMovableObject (MovableObject *m)
 Destroys a MovableObject. More...
 
virtual void destroyMovableObject (MovableObject *m, const String &typeName)
 Destroys a MovableObject with the name specified, of the type specified. More...
 
virtual void destroyParticleSystem (ParticleSystem *obj)
 Removes & destroys a ParticleSystem from the SceneManager. More...
 
virtual void destroyQuery (SceneQuery *query)
 Destroys a scene query of any type. More...
 
virtual void destroyRectangle2D (Rectangle2D *rect)
 Removes & destroys an Entity from the SceneManager. More...
 
virtual void destroyRibbonTrail (v1::RibbonTrail *obj)
 Removes & destroys a RibbonTrail from the SceneManager. More...
 
virtual void destroySceneNode (SceneNode *sn)
 Destroys a SceneNode. More...
 
void destroySkeletonInstance (SkeletonInstance *skeletonInstance)
 Destroys an instance of a skeleton created with createSkeletonInstance(). More...
 
virtual void destroyWireAabb (WireAabb *wireAabb)
 Removes & destroys an WireAabb from the SceneManager. More...
 
void executeUserScalableTask (UniformScalableTask *task, bool bBlock)
 Processes a user-defined UniformScalableTask in the worker threads spawned by SceneManager. More...
 
virtual void extractAllMovableObjectsByType (const String &typeName)
 Extract all injected MovableObjects of a given type. More...
 
virtual void extractMovableObject (MovableObject *m)
 Extract a previously injected MovableObject. More...
 
virtual CamerafindCamera (IdString name) const
 Finds the camera with the given name. More...
 
virtual CamerafindCameraNoThrow (IdString name) const
 Finds the camera with the given name. More...
 
virtual MovableObjectVec findMovableObjects (const String &type, const String &name)
 Finds all the movable objects with the type and name passed as parameters. More...
 
virtual_l1 SceneNodeList findSceneNodes (const String &name) const
 Finds all the scene nodes with the name passed as parameter. More...
 
const Vector3getAmbientLightHemisphereDir () const
 
const ColourValuegetAmbientLightLowerHemisphere () const
 
const ColourValuegetAmbientLightUpperHemisphere () const
 Returns the ambient light level to be used for the scene. More...
 
virtual v1::AnimationgetAnimation (const String &name) const
 Looks up an Animation object previously created with createAnimation. More...
 
AnimationIterator getAnimationIterator ()
 Returns a specialised MapIterator over all animations in the scene. More...
 
const AnimationList & getAnimations () const
 Returns a const version of the animation list. More...
 
virtual v1::AnimationStategetAnimationState (const String &animName) const
 Retrieves animation state as previously created using createAnimationState. More...
 
v1::AnimationStateIterator getAnimationStateIterator ()
 Returns a specialised MapIterator over all animation states in the scene. More...
 
AtmosphereComponentgetAtmosphere ()
 Gets currently set atmosphere. It's never nullptr. More...
 
AtmosphereComponentgetAtmosphereRaw ()
 Gets currently set atmosphere. Can be nullptr if none is set. More...
 
CameraIterator getCameraIterator ()
 Returns a specialised MapIterator over all cameras in the scene. More...
 
const CameraList & getCameras () const
 Returns a const version of the camera list. More...
 
CamerasInProgress getCamerasInProgress () const
 Gets the current camera being rendered (advanced use only, only valid during viewport update. More...
 
const CompositorTextureVecgetCompositorTextures () const
 
const AxisAlignedBoxgetCurrentCastersBox () const
 
const CompositorPassgetCurrentCompositorPass () const
 Note: May be null. More...
 
TextureGpugetCurrentPassDepthTextureNoMsaa () const
 
TextureGpugetCurrentPrePassDepthTexture () const
 
PrePassMode getCurrentPrePassMode () const
 
const TextureGpuVecgetCurrentPrePassTextures () const
 
TextureGpugetCurrentRefractionsTexture () const
 
const CompositorShadowNodegetCurrentShadowNode () const
 
TextureGpugetCurrentSsrTexture () const
 
ViewportgetCurrentViewport0 () const
 Gets the current viewport being rendered (advanced use only, only valid during viewport update. More...
 
TextureGpugetDecalsDiffuse () const
 
TextureGpugetDecalsEmissive () const
 
TextureGpugetDecalsNormals () const
 
RenderSystemgetDestinationRenderSystem ()
 Get the rendersystem subclass to which the output of this Scene Manager gets sent. More...
 
virtual bool getDisplaySceneNodes () const
 Returns true if all scene nodes axis are to be displayed. More...
 
SceneNodegetDummySceneNode () const
 Unlike mNodeMemoryManager->_getDummyNode(), this dummy node is fully allocated, which makes it possible to actually attach objects to this dummy, while we guarantee the dummy won't change its transform. More...
 
uint32 getEnvFeatures () const
 
virtual bool getFindVisibleObjects ()
 Gets whether the SceneManager should search for visible objects, or whether they are being manually handled. More...
 
virtual bool getFlipCullingOnNegativeScale () const
 Get whether to automatically flip the culling mode on objects whenever they are negatively scaled. More...
 
ForwardPlusBasegetForwardPlus ()
 
const LightListInfogetGlobalLightList () const
 
virtual const PlaneListgetLightClippingPlanes (const Light *l)
 Retrieve a set of clipping planes for a given light. More...
 
virtual_l2 uint32 getLightMask () const
 Gets a mask which is bitwise 'and'ed with lights' own light masks to determine if the light should be casting light. More...
 
virtual const RealRectgetLightScissorRect (const Light *l, const Camera *cam)
 Retrieve a scissor rectangle for a given light and camera. More...
 
void getMinMaxDepthRange (const Frustum *shadowMapCamera, Real &outMin, Real &outMax) const
 
virtual MovableObjectIterator getMovableObjectIterator (const String &typeName)
 Get an iterator over all MovableObect instances of a given type. More...
 
const StringgetName () const
 Return the instance name of this SceneManager. More...
 
size_t getNumCompositorTextures () const
 Gets the number of currently active compositor textures. More...
 
size_t getNumWorkerThreads () const
 
virtual bool getOption (const String &strKey, void *pDestValue)
 Method for getting the value of an implementation-specific Scene Manager option. More...
 
virtual bool getOptionKeys (StringVector &refKeys)
 Method for getting all the implementation-specific options of the scene manager. More...
 
virtual bool getOptionValues (const String &strKey, StringVector &refValueList)
 Method for getting all possible values for a specific option. More...
 
RadialDensityMaskgetRadialDensityMask () const
 
Vector3 getRelativeOrigin () const
 Returns the current relative origin. (Only when non-permanent) More...
 
RenderQueuegetRenderQueue () const
 Returns the RenderQueue. More...
 
SceneNodegetRootSceneNode (SceneMemoryMgrTypes sceneType=SCENE_DYNAMIC)
 Gets the SceneNode at the root of the scene hierarchy. More...
 
virtual_l1 SceneNodegetSceneNode (IdType id)
 Retrieves a SceneNode based on it's ID from the scene graph. More...
 
virtual_l1 const SceneNodegetSceneNode (IdType id) const
 
virtual const ColourValuegetShadowColour () const
 Get the colour used to modulate areas in shadow. More...
 
virtual Real getShadowDirectionalLightExtrusionDistance () const
 Gets the distance a shadow volume is extruded for a directional light. More...
 
virtual Real getShadowDirLightTextureOffset () const
 Gets the proportional distance which a texture shadow which is generated from a directional light will be offset into the camera view to make best use of texture space. More...
 
virtual Real getShadowFarDistance () const
 Gets the default maximum distance away from the camera that shadows will be visible. More...
 
virtual Real getShadowFarDistanceSquared () const
 
virtual bool getShowBoundingBoxes () const
 Returns if all bounding boxes of scene nodes are to be displayed. More...
 
Rectangle2DgetSky ()
 
MaterialPtr getSkyMaterial ()
 
SkyMethod getSkyMethod () const
 
const float * getSphericalHarmonics () const
 
virtual ViewPoint getSuggestedViewpoint (bool random=false)
 Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed. More...
 
virtual_l2 uint32 getVisibilityMask () const
 Gets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is visible. More...
 
virtual bool hasAnimation (const String &name) const
 Returns whether an animation with the given name exists. More...
 
virtual bool hasAnimationState (const String &name) const
 Returns whether an animation state with the given name exists. More...
 
virtual bool hasMovableObject (MovableObject *m)
 Returns if this SceneManager contains the specified MovableObject. More...
 
virtual bool hasOption (const String &strKey) const
 Method for verifying whether the scene manager has an implementation-specific option. More...
 
virtual void injectMovableObject (MovableObject *m)
 Inject a MovableObject instance created externally. More...
 
bool isDecalsDiffuseEmissiveMerged () const
 
bool isSkyEnabled () const
 
bool isUsingInstancedStereo () const
 
void notifyStaticAabbDirty (MovableObject *movableObject)
 Notifies that the given MovableObject is dirty (i.e. More...
 
void notifyStaticDirty (Node *node)
 Notifies that the given Node is dirty (i.e. More...
 
 OGRE_DEPRECATED_VER (3) virtual const ColourValue &getFogColour() const
 Returns the fog colour for the scene. More...
 
 OGRE_DEPRECATED_VER (3) virtual FogMode getFogMode() const
 Returns the fog mode for the scene. More...
 
 OGRE_DEPRECATED_VER (3) virtual Real getFogDensity() const
 Returns the fog density for the scene. More...
 
 OGRE_DEPRECATED_VER (3) virtual Real getFogEnd() const
 Returns the fog end distance for the scene. More...
 
 OGRE_DEPRECATED_VER (3) virtual Real getFogStart() const
 Returns the fog start distance for the scene. More...
 
 OGRE_MUTEX (sceneGraphMutex)
 Mutex to protect the scene graph from simultaneous access from multiple threads. More...
 
virtual void registerSceneNodeListener (SceneNode *sceneNode)
 Node listeners need to be registered with us so that they can be successfully called when calling updateAllTransforms. More...
 
virtual void removeListener (Listener *s)
 Remove a listener. More...
 
void removeLodListener (LodListener *listener)
 Remove a level of detail listener. More...
 
virtual void removeRenderObjectListener (RenderObjectListener *delListener)
 Removes a listener previously added with addRenderObjectListener. More...
 
virtual void removeRenderQueueListener (RenderQueueListener *delListener)
 Removes a listener previously added with addRenderQueueListener. More...
 
void reserveSlotsInGlobalLightList (size_t addSlotsToCapacity=0)
 Allocates required memory in mGlobalLightList. More...
 
void setAmbientLight (const ColourValue &upperHemisphere, const ColourValue &lowerHemisphere, const Vector3 &hemisphereDir, Real envmapScale=1.0f, uint32 envFeatures=0xffffffff)
 Sets the ambient light level to be used for the scene. More...
 
void setBuildLegacyLightList (bool bEnable)
 Enables or disables the legace 1.9 way of building light lists which can be used by HlmsLowLevel materials. More...
 
void setDecalsDiffuse (TextureGpu *tex)
 Sets the decal texture for diffuse. More...
 
void setDecalsEmissive (TextureGpu *tex)
 See SceneManager::setDecalsDiffuse. More...
 
void setDecalsNormals (TextureGpu *tex)
 Sets the decal texture normal maps. More...
 
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. More...
 
virtual void setFindVisibleObjects (bool find)
 Sets whether the SceneManager should search for visible objects, or whether they are being manually handled. More...
 
virtual void setFlipCullingOnNegativeScale (bool n)
 Set whether to automatically flip the culling mode on objects whenever they are negatively scaled. More...
 
void setFog (FogMode mode=FOG_NONE, const ColourValue &colour=ColourValue::White, Real expDensity=Real(0.001), Real linearStart=Real(0.0), Real linearEnd=Real(1.0))
 Sets the fogging mode applied to the scene. More...
 
void setForward3D (bool bEnable, uint32 width, uint32 height, uint32 numSlices, uint32 lightsPerCell, float minDistance, float maxDistance)
 Enables or disables the Forward3D implementation for using many non-shadowed lights in the scene. More...
 
void setForwardClustered (bool bEnable, uint32 width, uint32 height, uint32 numSlices, uint32 lightsPerCell, uint32 decalsPerCell, uint32 cubemapProbesPerCel, float minDistance, float maxDistance)
 
virtual_l2 void setLightMask (uint32 mask)
 Sets a mask which is bitwise 'and'ed with lights' own light masks to determine if the light should be casting light. More...
 
virtual bool setOption (const String &strKey, const void *pValue)
 Method for setting a specific option of the Scene Manager. More...
 
void setRadialDensityMask (bool bEnabled, const float radius[3])
 Draws a Radial Density Mask to lower the quality around the edges in VR. More...
 
virtual void setRelativeOrigin (const Vector3 &relativeOrigin, bool bPermanent)
 Set whether to use relative offset co-ordinates when rendering, ie offset to subtract to the camera, lights & objects. More...
 
virtual void setShadowColour (const ColourValue &colour)
 Set the colour used to modulate areas in shadow. More...
 
virtual void setShadowDirectionalLightExtrusionDistance (Real dist)
 Sets the distance a shadow volume is extruded for a directional light. More...
 
virtual void setShadowDirLightTextureOffset (Real offset)
 Sets the proportional distance which a texture shadow which is generated from a directional light will be offset into the camera view to make best use of texture space. More...
 
virtual void setShadowFarDistance (Real distance)
 Sets the default maximum distance away from the camera that shadows will be visible. More...
 
virtual void setShadowTextureFadeEnd (Real fadeEnd)
 Sets the proportional distance at which texture shadows finish to fading out. More...
 
virtual void setShadowTextureFadeStart (Real fadeStart)
 Sets the proportional distance at which texture shadows begin to fade out. More...
 
void setSky (bool bEnabled, SkyMethod skyMethod, const String &texName, const String &resourceGroup)
 
void setSky (bool bEnabled, SkyMethod skyMethod, TextureGpu *texture)
 Sets a sky, to use a particular material based on SkyMethod. More...
 
void setSphericalHarmonics (Vector3 ambientSphericalHarmonics[9])
 
virtual_l2 void setVisibilityMask (uint32 vmask)
 Sets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is visible. More...
 
virtual void showBoundingBoxes (bool bShow)
 Allows all bounding boxes of scene nodes to be displayed. More...
 
void shrinkToFitMemoryPools ()
 Defragments memory, then reallocates a smaller pool that tightly fits the current number of objects. More...
 
virtual void unregisterSceneNodeListener (SceneNode *sceneNode)
 Unregisters a registered node for listening. More...
 
void updateAllAnimations ()
 Updates all skeletal animations in the scene. More...
 
void updateAllBounds (const ObjectMemoryManagerVec &objectMemManager)
 Updates the world aabbs from all entities in the scene. More...
 
void updateAllLods (const Camera *lodCamera, Real lodBias, uint8 firstRq, uint8 lastRq)
 Updates the Lod values of all objects relative to the given camera. More...
 
void updateAllTagPoints ()
 Updates all TagPoints, both TagPoints that are children of bones, and TagPoints that are children of other TagPoints. More...
 
void updateAllTransforms ()
 Updates the derived transforms of all nodes in the scene. More...
 
void updateSceneGraph ()
 Updates the scene: Perform high level culling, Node transforms and entity animations. More...
 
void waitForParallelHlmsCompile ()
 
void waitForPendingUserScalableTask ()
 Blocks until the the task from processUserScalableTask finishes. More...
 
- Public Member Functions inherited from Ogre::IdObject
 IdObject (IdType id)
 We don't call generateNewId() here, to prevent objects in the stack (i.e. More...
 
IdType getId () const
 Get the unique id of this object. More...
 
bool operator() (const IdObject &left, const IdObject &right)
 
bool operator() (const IdObject *left, const IdObject *right)
 

Additional Inherited Members

- Public Types inherited from Ogre::SceneManager
typedef MapIterator< AnimationList > AnimationIterator
 
typedef VectorIterator< CameraList > CameraIterator
 
enum  EnvFeatures { EnvFeatures_DiffuseGiFromReflectionProbe = 1u << 0u }
 
enum  IlluminationRenderStage { IRS_NONE , IRS_RENDER_TO_TEXTURE }
 Describes the stage of rendering when performing complex illumination. More...
 
typedef VectorIterator< MovableObjectVecMovableObjectIterator
 
typedef vector< MovableObject * >::type MovableObjectVec
 
enum  PrefabType { PT_PLANE , PT_CUBE , PT_SPHERE }
 Prefab shapes available without loading a model. More...
 
typedef vector< SceneNode * >::type SceneNodeList
 
enum  SkyMethod { SkyCubemap , SkyEquirectangular }
 
- Static Public Attributes inherited from Ogre::SceneManager
static uint32 QUERY_ENTITY_DEFAULT_MASK
 Default query mask for entities. More...
 
static uint32 QUERY_FRUSTUM_DEFAULT_MASK
 Default query mask for frusta and cameras. More...
 
static uint32 QUERY_FX_DEFAULT_MASK
 Default query mask for effects like billboardsets / particle systems. More...
 
static uint32 QUERY_LIGHT_DEFAULT_MASK
 Default query mask for lights. More...
 
static uint32 QUERY_STATICGEOMETRY_DEFAULT_MASK
 Default query mask for StaticGeometry. More...
 

Detailed Description

Default scene manager.

Constructor & Destructor Documentation

◆ DefaultSceneManager()

Ogre::DefaultSceneManager::DefaultSceneManager ( const String name,
size_t  numWorkerThreads 
)

◆ ~DefaultSceneManager()

Ogre::DefaultSceneManager::~DefaultSceneManager ( )
override

Member Function Documentation

◆ getTypeName()

const String& Ogre::DefaultSceneManager::getTypeName ( ) const
overridevirtual

Retrieve the type name of this scene manager.

Remarks
This method has to be implemented by subclasses. It should return the type name of this SceneManager which agrees with the type name of the SceneManagerFactory which created it.

Implements Ogre::SceneManager.


The documentation for this class was generated from the following file: