Manages the organisation and rendering of a 'scene' i.e. More...
#include <OgreSceneManager.h>
Classes | |
struct | LightClippingInfo |
Struct for caching light clipping information for re-use in a frame. More... | |
struct | LightInfo |
Cached light information, used to tracking light's changes. More... | |
struct | lightLess |
Comparator for sorting lights relative to a point. More... | |
struct | lightsForShadowTextureLess |
Default sorting routine which sorts lights which cast shadows to the front of a list, sub-sorting by distance. More... | |
class | Listener |
Class that allows listening in on the various stages of SceneManager processing, so that custom behaviour can be implemented from outside. More... | |
struct | materialLess |
Comparator for material map, for sorting materials into render order (e.g. More... | |
struct | MovableObjectCollection |
Simple structure to hold MovableObject map and a mutex to go with it. More... | |
struct | RenderContext |
class | SceneMgrQueuedRenderableVisitor |
Inner helper class to implement the visitor pattern for rendering objects in a queue. More... | |
class | ShadowCasterSceneQueryListener |
Inner class to use as callback for shadow caster scene query. More... | |
struct | SkyBoxGenParameters |
struct | SkyDomeGenParameters |
struct | SkyPlaneGenParameters |
Public Types | |
typedef MapIterator < AnimationList > | AnimationIterator |
typedef MapIterator< CameraList > | CameraIterator |
enum | IlluminationRenderStage { IRS_NONE, IRS_RENDER_TO_TEXTURE, IRS_RENDER_RECEIVER_PASS } |
Describes the stage of rendering when performing complex illumination. More... | |
typedef MapIterator < MovableObjectMap > | MovableObjectIterator |
enum | PrefabType { PT_PLANE, PT_CUBE, PT_SPHERE } |
Prefab shapes available without loading a model. More... | |
enum | SpecialCaseRenderQueueMode { SCRQM_INCLUDE, SCRQM_EXCLUDE } |
Enumeration of the possible modes allowed for processing the special case render queue list. More... | |
Public Member Functions | |
SceneManager (const String &instanceName) | |
Constructor. More... | |
virtual | ~SceneManager () |
Default destructor. More... | |
void | _addDirtyInstanceManager (InstanceManager *dirtyManager) |
Called by an InstanceManager when it has at least one InstanceBatch that needs their bounds to be updated for proper culling. More... | |
virtual void | _applySceneAnimations (void) |
Internal method for applying animations to scene nodes. More... | |
virtual bool | _areRenderStateChangesSuppressed (void) const |
Are render state changes suppressed? More... | |
virtual bool | _areShadowsSuppressed (void) const |
Are shadows suppressed? More... | |
virtual void | _findVisibleObjects (Camera *cam, VisibleObjectsBoundsInfo *visibleBounds, bool onlyShadowCasters) |
Internal method which parses the scene to find visible objects to render. More... | |
virtual CompositorChain * | _getActiveCompositorChain () const |
Gets the active compositor chain of the current scene being rendered. More... | |
uint32 | _getCombinedVisibilityMask (void) const |
Internal method for getting the combination between the global visibility mask and the per-viewport visibility mask. More... | |
IlluminationRenderStage | _getCurrentRenderStage () |
virtual const LightList & | _getLightsAffectingFrustum (void) const |
Get the list of lights which could be affecting the frustum. More... | |
ulong | _getLightsDirtyCounter (void) const |
Advance method to gets the lights dirty counter. More... | |
void | _handleLodEvents () |
Handle LOD events. More... | |
virtual void | _injectRenderWithPass (Pass *pass, Renderable *rend, bool shadowDerivation=true, bool doLightIteration=false, const LightList *manualLightList=0) |
Render something as if it came from the current queue. 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... | |
virtual void | _notifyAutotrackingSceneNode (SceneNode *node, bool autoTrack) |
Internal method for notifying the manager that a SceneNode is autotracking. 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... | |
virtual void | _notifyLightsDirty (void) |
Advance method to increase the lights dirty counter due lights changed. 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 | _populateLightList (const Vector3 &position, Real radius, LightList &destList, uint32 lightMask=0xFFFFFFFF) |
Populate a light list with an ordered set of the lights which are closest to the position specified. More... | |
virtual void | _populateLightList (const SceneNode *sn, Real radius, LightList &destList, uint32 lightMask=0xFFFFFFFF) |
Populates a light list with an ordered set of the lights which are closest to the position of the SceneNode given. More... | |
virtual void | _queueSkiesForRendering (Camera *cam) |
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome. More... | |
virtual void | _renderQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render the objects in a given queue group. More... | |
virtual void | _renderScene (Camera *camera, Viewport *vp, bool includeOverlays) |
Prompts the class to send its contents to the renderer. More... | |
virtual void | _renderVisibleObjects (void) |
Sends visible objects found in _findVisibleObjects to the rendering engine. More... | |
virtual void | _resumeRendering (RenderContext *context) |
Resume rendering of the frame. More... | |
virtual void | _setActiveCompositorChain (CompositorChain *chain) |
Sets the active compositor chain of the current scene being rendered. More... | |
virtual void | _setDestinationRenderSystem (RenderSystem *sys) |
Notifies the scene manager of its destination render system. More... | |
virtual const Pass * | _setPass (const Pass *pass, bool evenIfSuppressed=false, bool shadowDerivation=true) |
Internal method for setting up the renderstate for a rendering pass. More... | |
virtual void | _setSkyBox (bool enable, const String &materialName, Real distance=5000, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, const Quaternion &orientation=Quaternion::IDENTITY, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky box' i.e. More... | |
virtual void | _setSkyDome (bool enable, const String &materialName, Real curvature=10, Real tiling=8, Real distance=4000, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, const Quaternion &orientation=Quaternion::IDENTITY, int xsegments=16, int ysegments=16, int ysegments_keep=-1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky dome' i.e. More... | |
virtual void | _setSkyPlane (bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, Real bow=0, int xsegments=1, int ysegments=1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky plane' i.e. More... | |
virtual void | _suppressRenderStateChanges (bool suppress) |
Indicates to the SceneManager whether it should suppress changing the RenderSystem states when rendering objects. More... | |
virtual void | _suppressShadows (bool suppress) |
Indicates to the SceneManager whether it should suppress the active shadow rendering technique until told otherwise. More... | |
virtual void | _updateSceneGraph (Camera *cam) |
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class. More... | |
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... | |
virtual void | addSpecialCaseRenderQueue (uint8 qid) |
Adds an item to the 'special case' render queue list. More... | |
virtual void | clearScene (void) |
Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc. More... | |
virtual void | clearSpecialCaseRenderQueues (void) |
Clears the 'special case' render queue list. More... | |
virtual AxisAlignedBoxSceneQuery * | createAABBQuery (const AxisAlignedBox &box, uint32 mask=0xFFFFFFFF) |
Creates an AxisAlignedBoxSceneQuery for this scene manager. More... | |
virtual Animation * | createAnimation (const String &name, Real length) |
Creates an animation which can be used to animate scene nodes. More... | |
virtual AnimationState * | createAnimationState (const String &animName) |
Create an AnimationState object for managing application of animations. More... | |
virtual BillboardChain * | createBillboardChain (const String &name) |
Create a BillboardChain, an object which you can use to render a linked chain of billboards. More... | |
virtual BillboardChain * | createBillboardChain () |
Create a BillboardChain, an object which you can use to render a linked chain of billboards, with a generated name. More... | |
virtual BillboardSet * | createBillboardSet (const String &name, unsigned int poolSize=20) |
Creates a new BillboardSet for use with this scene manager. More... | |
virtual BillboardSet * | createBillboardSet (unsigned int poolSize=20) |
Creates a new BillboardSet for use with this scene manager, with a generated name. More... | |
virtual Camera * | createCamera (const String &name) |
Creates a camera to be managed by this scene manager. More... | |
virtual Entity * | createEntity (const String &entityName, const String &meshName, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME) |
Create an Entity (instance of a discrete mesh). More... | |
virtual Entity * | createEntity (const String &entityName, const MeshPtr &pMesh) |
Create an Entity (instance of a discrete mesh). More... | |
virtual Entity * | createEntity (const String &meshName) |
Create an Entity (instance of a discrete mesh) with an autogenerated name. More... | |
virtual Entity * | createEntity (const MeshPtr &pMesh) |
Create an Entity (instance of a discrete mesh) with an autogenerated name. More... | |
virtual Entity * | createEntity (const String &entityName, PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes. More... | |
virtual Entity * | createEntity (PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes, generating the name. More... | |
virtual InstancedEntity * | createInstancedEntity (const String &materialName, const String &managerName) |
Creates an InstancedEntity based on an existing InstanceManager (. More... | |
virtual InstancedGeometry * | createInstancedGeometry (const String &name) |
Creates a InstancedGeometry instance suitable for use with this SceneManager. More... | |
virtual InstanceManager * | createInstanceManager (const String &customName, const String &meshName, const String &groupName, InstanceManager::InstancingTechnique technique, size_t numInstancesPerBatch, uint16 flags=0, unsigned short subMeshIdx=0) |
Creates an InstanceManager interface to create & manipulate instanced entities You need to call this function at least once before start calling createInstancedEntity to build up an instance based on the given mesh. More... | |
virtual IntersectionSceneQuery * | createIntersectionQuery (uint32 mask=0xFFFFFFFF) |
Creates an IntersectionSceneQuery for this scene manager. More... | |
virtual Light * | createLight (const String &name) |
Creates a light for use in the scene. More... | |
virtual Light * | createLight () |
Creates a light with a generated name. More... | |
virtual ManualObject * | createManualObject (const String &name) |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface. More... | |
virtual ManualObject * | createManualObject () |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface, generating the name. More... | |
virtual MovableObject * | createMovableObject (const String &name, const String &typeName, const NameValuePairList *params=0) |
Create a movable object of the type specified. More... | |
virtual MovableObject * | createMovableObject (const String &typeName, const NameValuePairList *params=0) |
Create a movable object of the type specified without a name. More... | |
virtual ParticleSystem * | createParticleSystem (const String &name, const String &templateName) |
Creates a particle system based on a template. More... | |
virtual ParticleSystem * | createParticleSystem (const String &name, size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Create a blank particle system. More... | |
virtual ParticleSystem * | createParticleSystem (size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Create a blank particle system with a generated name. More... | |
virtual PlaneBoundedVolumeListSceneQuery * | createPlaneBoundedVolumeQuery (const PlaneBoundedVolumeList &volumes, uint32 mask=0xFFFFFFFF) |
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager. More... | |
virtual RaySceneQuery * | createRayQuery (const Ray &ray, uint32 mask=0xFFFFFFFF) |
Creates a RaySceneQuery for this scene manager. More... | |
virtual RibbonTrail * | createRibbonTrail (const String &name) |
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follows one or more nodes. More... | |
virtual RibbonTrail * | createRibbonTrail () |
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follows one or more nodes, generating the name. More... | |
virtual SceneNode * | createSceneNode (void) |
Creates an instance of a SceneNode. More... | |
virtual SceneNode * | createSceneNode (const String &name) |
Creates an instance of a SceneNode with a given name. More... | |
virtual SphereSceneQuery * | createSphereQuery (const Sphere &sphere, uint32 mask=0xFFFFFFFF) |
Creates a SphereSceneQuery for this scene manager. More... | |
virtual StaticGeometry * | createStaticGeometry (const String &name) |
Creates a StaticGeometry instance suitable for use with this SceneManager. More... | |
virtual void | destroyAllAnimations (void) |
Removes all animations created using this SceneManager. More... | |
virtual void | destroyAllAnimationStates (void) |
Removes all animation states created using this SceneManager. More... | |
virtual void | destroyAllBillboardChains (void) |
Removes & destroys all BillboardChains from the SceneManager. More... | |
virtual void | destroyAllBillboardSets (void) |
Removes & destroys all BillboardSets. More... | |
virtual void | destroyAllCameras (void) |
Removes (and destroys) all cameras from the scene. More... | |
virtual void | destroyAllEntities (void) |
Removes & destroys all Entities. More... | |
virtual void | destroyAllInstancedGeometry (void) |
Remove & destroy all InstancedGeometry instances. More... | |
virtual void | destroyAllInstanceManagers (void) |
virtual void | destroyAllLights (void) |
Removes and destroys all lights in the scene. More... | |
virtual void | destroyAllManualObjects (void) |
Removes & destroys all ManualObjects from the SceneManager. More... | |
virtual void | destroyAllMovableObjects (void) |
Destroy all MovableObjects. More... | |
virtual void | destroyAllMovableObjectsByType (const String &typeName) |
Destroy all MovableObjects of a given type. More... | |
virtual void | destroyAllParticleSystems (void) |
Removes & destroys all ParticleSystems from the SceneManager. More... | |
virtual void | destroyAllRibbonTrails (void) |
Removes & destroys all RibbonTrails from the SceneManager. More... | |
virtual void | destroyAllStaticGeometry (void) |
Remove & destroy all StaticGeometry instances. More... | |
virtual void | destroyAnimation (const String &name) |
Destroys an Animation. More... | |
virtual void | destroyAnimationState (const String &name) |
Destroys an AnimationState. More... | |
virtual void | destroyBillboardChain (BillboardChain *obj) |
Removes & destroys a BillboardChain from the SceneManager. More... | |
virtual void | destroyBillboardChain (const String &name) |
Removes & destroys a BillboardChain from the SceneManager. More... | |
virtual void | destroyBillboardSet (BillboardSet *set) |
Removes & destroys an BillboardSet from the SceneManager. More... | |
virtual void | destroyBillboardSet (const String &name) |
Removes & destroys an BillboardSet from the SceneManager by name. More... | |
virtual void | destroyCamera (Camera *cam) |
Removes a camera from the scene. More... | |
virtual void | destroyCamera (const String &name) |
Removes a camera from the scene. More... | |
virtual void | destroyEntity (Entity *ent) |
Removes & destroys an Entity from the SceneManager. More... | |
virtual void | destroyEntity (const String &name) |
Removes & destroys an Entity from the SceneManager by name. More... | |
virtual void | destroyInstancedEntity (InstancedEntity *instancedEntity) |
Removes an InstancedEntity,. More... | |
virtual void | destroyInstancedGeometry (InstancedGeometry *geom) |
Remove & destroy a InstancedGeometry instance. More... | |
virtual void | destroyInstancedGeometry (const String &name) |
Remove & destroy a InstancedGeometry instance. More... | |
virtual void | destroyInstanceManager (const String &name) |
Destroys an InstanceManager if it was created with createInstanceManager() More... | |
virtual void | destroyInstanceManager (InstanceManager *instanceManager) |
virtual void | destroyLight (const String &name) |
Removes the named light from the scene and destroys it. 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 | destroyManualObject (const String &name) |
Removes & destroys a ManualObject from the SceneManager. More... | |
virtual void | destroyMovableObject (const String &name, const String &typeName) |
Destroys a MovableObject with the name specified, of the type specified. More... | |
virtual void | destroyMovableObject (MovableObject *m) |
Destroys a MovableObject. More... | |
virtual void | destroyParticleSystem (ParticleSystem *obj) |
Removes & destroys a ParticleSystem from the SceneManager. More... | |
virtual void | destroyParticleSystem (const String &name) |
Removes & destroys a ParticleSystem from the SceneManager. More... | |
virtual void | destroyQuery (SceneQuery *query) |
Destroys a scene query of any type. More... | |
virtual void | destroyRibbonTrail (RibbonTrail *obj) |
Removes & destroys a RibbonTrail from the SceneManager. More... | |
virtual void | destroyRibbonTrail (const String &name) |
Removes & destroys a RibbonTrail from the SceneManager. More... | |
virtual void | destroySceneNode (const String &name) |
Destroys a SceneNode with a given name. More... | |
virtual void | destroySceneNode (SceneNode *sn) |
Destroys a SceneNode. More... | |
virtual void | destroyStaticGeometry (StaticGeometry *geom) |
Remove & destroy a StaticGeometry instance. More... | |
virtual void | destroyStaticGeometry (const String &name) |
Remove & destroy a StaticGeometry instance. More... | |
virtual size_t | estimateWorldGeometry (const String &filename) |
Estimate the number of loading stages required to load the named world geometry. More... | |
virtual size_t | estimateWorldGeometry (DataStreamPtr &stream, const String &typeName=StringUtil::BLANK) |
Estimate the number of loading stages required to load the named world geometry. More... | |
virtual void | extractAllMovableObjectsByType (const String &typeName) |
Extract all injected MovableObjects of a given type. More... | |
virtual void | extractMovableObject (const String &name, const String &typeName) |
Extract a previously injected MovableObject. More... | |
virtual void | extractMovableObject (MovableObject *m) |
Extract a previously injected MovableObject. More... | |
const ColourValue & | getAmbientLight (void) const |
Returns the ambient light level to be used for the scene. More... | |
virtual Animation * | getAnimation (const String &name) const |
Looks up an Animation object previously created with createAnimation. More... | |
AnimationIterator | getAnimationIterator (void) |
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 AnimationState * | getAnimationState (const String &animName) const |
Retrieves animation state as previously created using createAnimationState. More... | |
AnimationStateIterator | getAnimationStateIterator (void) |
Returns a specialised MapIterator over all animation states in the scene. More... | |
virtual BillboardChain * | getBillboardChain (const String &name) const |
Retrieves a pointer to the named BillboardChain. More... | |
virtual BillboardSet * | getBillboardSet (const String &name) const |
Retrieves a pointer to the named BillboardSet. More... | |
virtual Camera * | getCamera (const String &name) const |
Retrieves a pointer to the named camera. More... | |
CameraIterator | getCameraIterator (void) |
Returns a specialised MapIterator over all cameras in the scene. More... | |
virtual bool | getCameraRelativeRendering () const |
Get whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it. More... | |
const CameraList & | getCameras () const |
Returns a const version of the camera list. More... | |
Viewport * | getCurrentViewport (void) const |
Gets the current viewport being rendered (advanced use only, only valid during viewport update. More... | |
RenderSystem * | getDestinationRenderSystem () |
Get the rendersystem subclass to which the output of this Scene Manager gets sent. More... | |
virtual bool | getDisplaySceneNodes (void) const |
Returns true if all scene nodes axis are to be displayed. More... | |
virtual Entity * | getEntity (const String &name) const |
Retrieves a pointer to the named Entity. More... | |
virtual bool | getFindVisibleObjects (void) |
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... | |
virtual const ColourValue & | getFogColour (void) const |
Returns the fog colour for the scene. More... | |
virtual Real | getFogDensity (void) const |
Returns the fog density for the scene. More... | |
virtual Real | getFogEnd (void) const |
Returns the fog end distance for the scene. More... | |
virtual FogMode | getFogMode (void) const |
Returns the fog mode for the scene. More... | |
virtual Real | getFogStart (void) const |
Returns the fog start distance for the scene. More... | |
virtual InstancedGeometry * | getInstancedGeometry (const String &name) const |
Retrieve a previously created InstancedGeometry instance. More... | |
virtual InstanceManager * | getInstanceManager (const String &managerName) const |
Retrieves an existing InstanceManager by it's name. More... | |
virtual Light * | getLight (const String &name) const |
Returns a pointer to the named Light which has previously been added to the scene. More... | |
virtual const PlaneList & | getLightClippingPlanes (Light *l) |
Retrieve a set of clipping planes for a given light. More... | |
virtual const RealRect & | getLightScissorRect (Light *l, const Camera *cam) |
Retrieve a scissor rectangle for a given light and camera. More... | |
virtual ManualObject * | getManualObject (const String &name) const |
Retrieves a pointer to the named ManualObject. More... | |
virtual MovableObject * | getMovableObject (const String &name, const String &typeName) const |
Get a reference to a previously created MovableObject. More... | |
virtual MovableObjectIterator | getMovableObjectIterator (const String &typeName) |
Get an iterator over all MovableObect instances of a given type. More... | |
const String & | getName (void) const |
Return the instance name of this SceneManager. More... | |
virtual bool | getNormaliseNormalsOnScale () const |
Get whether to automatically normalise normals on objects whenever they are scaled. More... | |
virtual size_t | getNumInstancesPerBatch (const String &meshName, const String &groupName, const String &materialName, InstanceManager::InstancingTechnique technique, size_t numInstancesPerBatch, uint16 flags=0, unsigned short subMeshIdx=0) |
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... | |
virtual ParticleSystem * | getParticleSystem (const String &name) const |
Retrieves a pointer to the named ParticleSystem. More... | |
SceneMgrQueuedRenderableVisitor * | getQueuedRenderableVisitor (void) const |
Gets the current visitor object which processes queued renderables. More... | |
virtual RenderQueue * | getRenderQueue (void) |
Retrieves the internal render queue, for advanced users only. More... | |
virtual RibbonTrail * | getRibbonTrail (const String &name) const |
Retrieves a pointer to the named RibbonTrail. More... | |
virtual SceneNode * | getRootSceneNode (void) |
Gets the SceneNode at the root of the scene hierarchy. More... | |
virtual SceneNode * | getSceneNode (const String &name) const |
Retrieves a named SceneNode from the scene graph. More... | |
virtual const ShadowCameraSetupPtr & | getShadowCameraSetup () const |
Get the shadow camera setup in use for all lights which don't have their own shadow camera setup. More... | |
const VisibleObjectsBoundsInfo & | getShadowCasterBoundsInfo (const Light *light, size_t iteration=0) const |
Returns the shadow caster AAB for a specific light-camera combination. More... | |
virtual bool | getShadowCasterRenderBackFaces () const |
Gets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces. More... | |
virtual const ColourValue & | getShadowColour (void) const |
Get the colour used to modulate areas in shadow. More... | |
virtual Real | getShadowDirectionalLightExtrusionDistance (void) const |
Gets the distance a shadow volume is extruded for a directional light. More... | |
virtual Real | getShadowDirLightTextureOffset (void) 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 (void) const |
Gets the default maximum distance away from the camera that shadows will be visible. More... | |
virtual Real | getShadowFarDistanceSquared (void) const |
virtual size_t | getShadowIndexBufferSize (void) const |
Get the size of the shadow index buffer. More... | |
virtual ShadowTechnique | getShadowTechnique (void) const |
Gets the current shadow technique. More... | |
virtual const TexturePtr & | getShadowTexture (size_t shadowIndex) |
Get a reference to the shadow texture currently in use at the given index. More... | |
ConstShadowTextureConfigIterator | getShadowTextureConfigIterator () const |
Get an iterator over the current shadow texture settings. More... | |
size_t | getShadowTextureCount (void) const |
Get the number of the textures allocated for texture based shadows. More... | |
size_t | getShadowTextureCountPerLightType (Light::LightTypes type) const |
Get the number of shadow textures is assigned for the given light type. More... | |
virtual bool | getShadowTextureSelfShadow (void) const |
Gets whether or not texture shadows attempt to self-shadow. More... | |
virtual bool | getShadowUseLightClipPlanes () const |
Gets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering. More... | |
virtual bool | getShowBoundingBoxes () const |
Returns if all bounding boxes of scene nodes are to be displayed. More... | |
virtual bool | getShowDebugShadows (void) const |
Are debug shadows shown? More... | |
virtual const SkyBoxGenParameters & | getSkyBoxGenParameters (void) const |
Get the parameters used to generate the current SkyBox, if any. More... | |
virtual SceneNode * | getSkyBoxNode (void) const |
Get the skybox node, if enabled. More... | |
virtual const SkyDomeGenParameters & | getSkyDomeGenParameters (void) const |
Get the parameters used to generate the current SkyDome, if any. More... | |
virtual SceneNode * | getSkyDomeNode (void) const |
Get the sky dome node, if enabled. More... | |
virtual const SkyPlaneGenParameters & | getSkyPlaneGenParameters (void) const |
Get the parameters used to construct the SkyPlane, if any. More... | |
virtual SceneNode * | getSkyPlaneNode (void) const |
Get the sky plane node, if enabled. More... | |
virtual SpecialCaseRenderQueueMode | getSpecialCaseRenderQueueMode (void) |
Gets the way the special case render queue list is processed. More... | |
virtual StaticGeometry * | getStaticGeometry (const String &name) const |
Retrieve a previously created StaticGeometry instance. More... | |
virtual ViewPoint | getSuggestedViewpoint (bool random=false) |
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed. More... | |
virtual const String & | getTypeName (void) const =0 |
Retrieve the type name of this scene manager. More... | |
virtual uint32 | getVisibilityMask (void) |
Gets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is visible. More... | |
const VisibleObjectsBoundsInfo & | getVisibleObjectsBoundsInfo (const Camera *cam) const |
Returns a visibility boundary box for a specific camera. More... | |
virtual uint8 | getWorldGeometryRenderQueue (void) |
Gets the render queue that the world geometry (if any) this SceneManager renders will be associated with. 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 | hasBillboardChain (const String &name) const |
Returns whether a billboard chain with the given name exists. More... | |
virtual bool | hasBillboardSet (const String &name) const |
Returns whether a billboardset with the given name exists. More... | |
virtual bool | hasCamera (const String &name) const |
Returns whether a camera with the given name exists. More... | |
virtual bool | hasEntity (const String &name) const |
Returns whether an entity with the given name exists. More... | |
virtual bool | hasInstanceManager (const String &managerName) const |
Returns whether an InstanceManager with the given name exists. More... | |
virtual bool | hasLight (const String &name) const |
Returns whether a light with the given name exists. More... | |
virtual bool | hasManualObject (const String &name) const |
Returns whether a manual object with the given name exists. More... | |
virtual bool | hasMovableObject (const String &name, const String &typeName) const |
Returns whether a movable object instance with the given name exists. More... | |
virtual bool | hasOption (const String &strKey) const |
Method for verifying whether the scene manager has an implementation-specific option. More... | |
virtual bool | hasParticleSystem (const String &name) const |
Returns whether a particle system with the given name exists. More... | |
virtual bool | hasRibbonTrail (const String &name) const |
Returns whether a ribbon trail with the given name exists. More... | |
virtual bool | hasSceneNode (const String &name) const |
Returns whether a scene node with the given name exists. More... | |
virtual bool | hasStaticGeometry (const String &name) const |
Returns whether a static geometry instance with the given name exists. More... | |
virtual void | injectMovableObject (MovableObject *m) |
Inject a MovableObject instance created externally. More... | |
virtual bool | isLateMaterialResolving () const |
Gets whether using late material resolving or not. More... | |
virtual bool | isRenderQueueToBeProcessed (uint8 qid) |
Returns whether or not the named queue will be rendered based on the current 'special case' render queue list and mode. More... | |
virtual bool | isShadowTechniqueAdditive (void) const |
Is there an additive shadowing technique in use? More... | |
virtual bool | isShadowTechniqueIntegrated (void) const |
Is the shadow technique integrated into primary materials? More... | |
virtual bool | isShadowTechniqueInUse (void) const |
Is there any shadowing technique in use? More... | |
virtual bool | isShadowTechniqueModulative (void) const |
Is there a modulative shadowing technique in use? More... | |
virtual bool | isShadowTechniqueStencilBased (void) const |
Is there a stencil shadow based shadowing technique in use? More... | |
virtual bool | isShadowTechniqueTextureBased (void) const |
Is there a texture shadow based shadowing technique in use? More... | |
virtual bool | isSkyBoxEnabled (void) const |
Return whether a skybox is enabled. More... | |
virtual bool | isSkyDomeEnabled (void) const |
Return whether a skydome is enabled. More... | |
virtual bool | isSkyPlaneEnabled (void) const |
Return whether a key plane is enabled. More... | |
virtual void | manualRender (RenderOperation *rend, Pass *pass, Viewport *vp, const Matrix4 &worldMatrix, const Matrix4 &viewMatrix, const Matrix4 &projMatrix, bool doBeginEndFrame=false) |
Manual rendering method, for advanced users only. More... | |
virtual void | manualRender (Renderable *rend, const Pass *pass, Viewport *vp, const Matrix4 &viewMatrix, const Matrix4 &projMatrix, bool doBeginEndFrame=false, bool lightScissoringClipping=true, bool doLightIteration=true, const LightList *manualLightList=0) |
Manual rendering method for rendering a single object. More... | |
OGRE_MUTEX (sceneGraphMutex) | |
Mutex to protect the scene graph from simultaneous access from multiple threads. More... | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info More... | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *ptr) |
placement operator new More... | |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info More... | |
void * | operator new[] (size_t sz) |
virtual void | prepareShadowTextures (Camera *cam, Viewport *vp, const LightList *lightList=0) |
Method for preparing shadow textures ready for use in a regular render Do not call manually unless before frame start or rendering is paused If lightList is not supplied, will render all lights in frustum. More... | |
virtual void | prepareWorldGeometry (const String &filename) |
Sets the source of the 'world' geometry, i.e. More... | |
virtual void | prepareWorldGeometry (DataStreamPtr &stream, const String &typeName=StringUtil::BLANK) |
Sets the source of the 'world' geometry, i.e. 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... | |
virtual void | removeSpecialCaseRenderQueue (uint8 qid) |
Removes an item to the 'special case' render queue list. More... | |
void | setAmbientLight (const ColourValue &colour) |
Sets the ambient light level to be used for the scene. More... | |
virtual void | setCameraRelativeRendering (bool rel) |
Set whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it. 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=0.001, Real linearStart=0.0, Real linearEnd=1.0) |
Sets the fogging mode applied to the scene. More... | |
virtual void | setLateMaterialResolving (bool isLate) |
Sets whether to use late material resolving or not. More... | |
virtual void | setNormaliseNormalsOnScale (bool n) |
Set whether to automatically normalise normals on objects whenever they are scaled. More... | |
virtual bool | setOption (const String &strKey, const void *pValue) |
Method for setting a specific option of the Scene Manager. More... | |
void | setQueuedRenderableVisitor (SceneMgrQueuedRenderableVisitor *visitor) |
Advanced method for supplying an alternative visitor, used for parsing the render queues and sending the results to the renderer. More... | |
virtual void | setShadowCameraSetup (const ShadowCameraSetupPtr &shadowSetup) |
Set the shadow camera setup to use for all lights which don't have their own shadow camera setup. More... | |
virtual void | setShadowCasterRenderBackFaces (bool bf) |
Sets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces. 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 | setShadowIndexBufferSize (size_t size) |
Sets the maximum size of the index buffer used to render shadow primitives. More... | |
virtual void | setShadowTechnique (ShadowTechnique technique) |
Sets the general shadow technique to be used in this scene. More... | |
virtual void | setShadowTextureCasterMaterial (const String &name) |
Sets the default material to use for rendering shadow casters. More... | |
virtual void | setShadowTextureConfig (size_t shadowIndex, unsigned short width, unsigned short height, PixelFormat format, unsigned short fsaa=0, uint16 depthBufferPoolId=1) |
Set the detailed configuration for a shadow texture. More... | |
virtual void | setShadowTextureConfig (size_t shadowIndex, const ShadowTextureConfig &config) |
Set the detailed configuration for a shadow texture. More... | |
virtual void | setShadowTextureCount (size_t count) |
Set the number of textures allocated for texture-based shadows. More... | |
void | setShadowTextureCountPerLightType (Light::LightTypes type, size_t count) |
Set the number of shadow textures a light type uses. 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... | |
virtual void | setShadowTextureFSAA (unsigned short fsaa) |
Set the level of multisample AA of the textures used for texture-based shadows. More... | |
virtual void | setShadowTexturePixelFormat (PixelFormat fmt) |
Set the pixel format of the textures used for texture-based shadows. More... | |
virtual void | setShadowTextureReceiverMaterial (const String &name) |
Sets the default material to use for rendering shadow receivers. More... | |
virtual void | setShadowTextureSelfShadow (bool selfShadow) |
Sets whether or not texture shadows should attempt to self-shadow. More... | |
virtual void | setShadowTextureSettings (unsigned short size, unsigned short count, PixelFormat fmt=PF_X8R8G8B8, unsigned short fsaa=0, uint16 depthBufferPoolId=1) |
Sets the size and count of textures used in texture-based shadows. More... | |
virtual void | setShadowTextureSize (unsigned short size) |
Set the size of the texture used for all texture-based shadows. More... | |
virtual void | setShadowUseInfiniteFarPlane (bool enable) |
Sets whether we should use an inifinite camera far plane when rendering stencil shadows. More... | |
virtual void | setShadowUseLightClipPlanes (bool enabled) |
Sets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering. More... | |
virtual void | setShowDebugShadows (bool debug) |
Enables / disables the rendering of debug information for shadows. More... | |
virtual void | setSkyBox (bool enable, const String &materialName, Real distance=5000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky box' i.e. More... | |
virtual void | setSkyBoxEnabled (bool enable) |
Enables / disables a 'sky box'. More... | |
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, int xsegments=16, int ysegments=16, int ysegments_keep=-1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky dome' i.e. More... | |
virtual void | setSkyDomeEnabled (bool enable) |
Enables / disables a 'sky dome'. More... | |
virtual void | setSkyPlane (bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, bool drawFirst=true, Real bow=0, int xsegments=1, int ysegments=1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky plane' i.e. More... | |
virtual void | setSkyPlaneEnabled (bool enable) |
Enables / disables a 'sky plane'. More... | |
virtual void | setSpecialCaseRenderQueueMode (SpecialCaseRenderQueueMode mode) |
Sets the way the special case render queue list is processed. More... | |
virtual 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 | setWorldGeometry (const String &filename) |
Sets the source of the 'world' geometry, i.e. More... | |
virtual void | setWorldGeometry (DataStreamPtr &stream, const String &typeName=StringUtil::BLANK) |
Sets the source of the 'world' geometry, i.e. More... | |
virtual void | setWorldGeometryRenderQueue (uint8 qid) |
Sets the render queue that the world geometry (if any) this SceneManager renders will be associated with. More... | |
virtual void | showBoundingBoxes (bool bShow) |
Allows all bounding boxes of scene nodes to be displayed. More... | |
Static Public Attributes | |
static uint32 | ENTITY_TYPE_MASK |
Query type mask which will be used for entities. More... | |
static uint32 | FRUSTUM_TYPE_MASK |
Query type mask which will be used for frusta and cameras. More... | |
static uint32 | FX_TYPE_MASK |
Query type mask which will be used for effects like billboardsets / particle systems. More... | |
static uint32 | LIGHT_TYPE_MASK |
Query type mask which will be used for lights. More... | |
static uint32 | STATICGEOMETRY_TYPE_MASK |
Query type mask which will be used for StaticGeometry. More... | |
static uint32 | USER_TYPE_MASK_LIMIT |
User type mask limit. More... | |
static uint32 | WORLD_GEOMETRY_TYPE_MASK |
Query type mask which will be used for world geometry. More... | |
Protected Member Functions | |
virtual void | bindGpuProgram (GpuProgram *prog) |
virtual ClipResult | buildAndSetLightClip (const LightList &ll) |
Build a set of user clip planes from a single non-directional light. More... | |
virtual ClipResult | buildAndSetScissor (const LightList &ll, const Camera *cam) |
Set up a scissor rectangle from a group of lights. More... | |
virtual void | buildLightClip (const Light *l, PlaneList &planes) |
virtual void | buildScissor (const Light *l, const Camera *cam, RealRect &rect) |
Update a scissor rectangle from a single light. More... | |
virtual void | checkCachedLightClippingInfo () |
virtual AutoParamDataSource * | createAutoParamDataSource (void) const |
Internal method for creating the AutoParamDataSource instance. More... | |
virtual SceneNode * | createSceneNodeImpl (void) |
Subclasses can override this to ensure their specialised SceneNode is used. More... | |
virtual SceneNode * | createSceneNodeImpl (const String &name) |
Subclasses can override this to ensure their specialised SceneNode is used. More... | |
virtual MeshPtr | createSkyboxPlane (BoxPlane bp, Real distance, const Quaternion &orientation, const String &groupName) |
virtual MeshPtr | createSkydomePlane (BoxPlane bp, Real curvature, Real tiling, Real distance, const Quaternion &orientation, int xsegments, int ysegments, int ySegmentsToKeep, const String &groupName) |
virtual const Pass * | deriveShadowCasterPass (const Pass *pass) |
Internal method for turning a regular pass into a shadow caster pass. More... | |
virtual const Pass * | deriveShadowReceiverPass (const Pass *pass) |
Internal method for turning a regular pass into a shadow receiver pass. More... | |
virtual void | destroyShadowTextures (void) |
Internal method for destroying shadow textures (texture-based shadows) More... | |
virtual void | ensureShadowTexturesCreated () |
Internal method for creating shadow textures (texture-based shadows) More... | |
virtual void | findLightsAffectingFrustum (const Camera *camera) |
Internal method for locating a list of lights which could be affecting the frustum. More... | |
virtual const ShadowCasterList & | findShadowCastersForLight (const Light *light, const Camera *camera) |
Internal method for locating a list of shadow casters which could be affecting the frustum for a given light. More... | |
virtual void | firePostFindVisibleObjects (Viewport *v) |
Internal method for firing find visible objects event. More... | |
virtual void | firePostRenderQueues () |
Internal method for firing the queue end event. More... | |
virtual void | firePostUpdateSceneGraph (Camera *camera) |
Internal method for firing post update scene graph event. More... | |
virtual void | firePreFindVisibleObjects (Viewport *v) |
Internal method for firing find visible objects event. More... | |
virtual void | firePreRenderQueues () |
Internal method for firing the queue start event. More... | |
virtual void | firePreUpdateSceneGraph (Camera *camera) |
Internal method for firing pre update scene graph event. More... | |
virtual bool | fireRenderQueueEnded (uint8 id, const String &invocation) |
Internal method for firing the queue end event, returns true if queue is to be repeated. More... | |
virtual bool | fireRenderQueueStarted (uint8 id, const String &invocation) |
Internal method for firing the queue start event, returns true if queue is to be skipped. More... | |
virtual void | fireRenderSingleObject (Renderable *rend, const Pass *pass, const AutoParamDataSource *source, const LightList *pLightList, bool suppressRenderStateChanges) |
Internal method for firing when rendering a single object. More... | |
virtual void | fireSceneManagerDestroyed () |
Internal method for firing destruction event. More... | |
virtual void | fireShadowTexturesPreCaster (Light *light, Camera *camera, size_t iteration) |
Internal method for firing the pre caster texture shadows event. More... | |
virtual void | fireShadowTexturesPreReceiver (Light *light, Frustum *f) |
Internal method for firing the pre receiver texture shadows event. More... | |
virtual void | fireShadowTexturesUpdated (size_t numberOfShadowTextures) |
Internal method for firing the texture shadows updated event. More... | |
MovableObjectCollection * | getMovableObjectCollection (const String &typeName) |
Gets the movable object collection for the given type name. More... | |
const MovableObjectCollection * | getMovableObjectCollection (const String &typeName) const |
Gets the movable object collection for the given type name. More... | |
virtual void | initRenderQueue (void) |
Internal method for initialising the render queue. More... | |
virtual void | initShadowVolumeMaterials (void) |
Internal method for setting up materials for shadows. More... | |
OGRE_MUTEX (mMovableObjectCollectionMapMutex) | |
Mutex over the collection of MovableObject types. More... | |
OGRE_MUTEX (mAnimationsListMutex) | |
virtual void | prepareRenderQueue (void) |
Internal method for preparing the render queue for use with each render. More... | |
virtual void | renderAdditiveStencilShadowedQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group with the added complexity of additive stencil shadows. More... | |
virtual void | renderAdditiveTextureShadowedQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group with additive texture shadows. More... | |
virtual void | renderBasicQueueGroupObjects (RenderQueueGroup *pGroup, QueuedRenderableCollection::OrganisationMode om) |
Render a group in the ordinary way. More... | |
virtual void | renderModulativeStencilShadowedQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group with the added complexity of modulative stencil shadows. More... | |
virtual void | renderModulativeTextureShadowedQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group with the added complexity of modulative texture shadows. More... | |
virtual void | renderObjects (const QueuedRenderableCollection &objs, QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0) |
Render a set of objects, see renderSingleObject for param definitions. More... | |
void | renderShadowVolumeObjects (ShadowCaster::ShadowRenderableListIterator iShadowRenderables, Pass *pass, const LightList *manualLightList, unsigned long flags, bool secondpass, bool zfail, bool twosided) |
Render a set of shadow renderables. More... | |
virtual void | renderShadowVolumesToStencil (const Light *light, const Camera *cam, bool calcScissor) |
Internal method for rendering all the objects for a given light into the stencil buffer. More... | |
virtual void | renderSingleObject (Renderable *rend, const Pass *pass, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0) |
Internal utility method for rendering a single object. More... | |
virtual void | renderTextureShadowCasterQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group rendering only shadow casters. More... | |
virtual void | renderTextureShadowReceiverQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render a group rendering only shadow receivers. More... | |
virtual void | renderTransparentShadowCasterObjects (const QueuedRenderableCollection &objs, QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0) |
Render those objects in the transparent pass list which have shadow casting forced on. More... | |
virtual void | renderVisibleObjectsCustomSequence (RenderQueueInvocationSequence *s) |
Internal method for rendering all objects using a custom queue sequence. More... | |
virtual void | renderVisibleObjectsDefaultSequence (void) |
Internal method for rendering all objects using the default queue sequence. More... | |
virtual void | resetLightClip () |
virtual void | resetScissor () |
virtual void | resetViewProjMode (bool fixedFunction) |
Internal method used by _renderSingleObject to deal with renderables which override the camera's own view / projection matrices. More... | |
virtual void | setShadowVolumeStencilState (bool secondpass, bool zfail, bool twosided) |
Internal utility method for setting stencil state for rendering shadow volumes. More... | |
virtual void | setViewMatrix (const Matrix4 &m) |
virtual void | setViewport (Viewport *vp) |
Internal method for setting the destination viewport for the next render. More... | |
void | updateDirtyInstanceManagers (void) |
Updates all instance managaers with dirty instance batches. More... | |
virtual void | updateGpuProgramParameters (const Pass *p) |
virtual void | updateRenderQueueGroupSplitOptions (RenderQueueGroup *group, bool suppressShadows, bool suppressRenderState) |
Update the state of the render queue group splitting based on a shadow option change. More... | |
virtual void | updateRenderQueueSplitOptions (void) |
Update the state of the global render queue splitting based on a shadow option change. More... | |
virtual void | useLights (const LightList &lights, unsigned short limit) |
virtual void | useLightsGpuProgram (const Pass *pass, const LightList *lights) |
virtual void | useRenderableViewProjMode (const Renderable *pRend, bool fixedFunction) |
Internal method used by _renderSingleObject to deal with renderables which override the camera's own view / projection materices. More... | |
virtual bool | validatePassForRendering (const Pass *pass) |
Internal method to validate whether a Pass should be allowed to render. More... | |
virtual bool | validateRenderableForRendering (const Pass *pass, const Renderable *rend) |
Internal method to validate whether a Renderable should be allowed to render. More... | |
Friends | |
class | SceneMgrQueuedRenderableVisitor |
Allow visitor helper to access protected methods. More... | |
Manages the organisation and rendering of a 'scene' i.e.
a collection of objects and potentially world geometry.
Definition at line 143 of file OgreSceneManager.h.
Definition at line 2649 of file OgreSceneManager.h.
|
protected |
Storage of animations, lookup by name.
Definition at line 638 of file OgreSceneManager.h.
|
protected |
Autotracking scene nodes.
Definition at line 438 of file OgreSceneManager.h.
Definition at line 2648 of file OgreSceneManager.h.
|
protected |
Definition at line 405 of file OgreSceneManager.h.
|
protected |
Visible objects bounding box list.
Definition at line 497 of file OgreSceneManager.h.
|
protected |
List of entity material LOD changed events.
Definition at line 1024 of file OgreSceneManager.h.
|
protected |
List of entity mesh LOD changed events.
Definition at line 1020 of file OgreSceneManager.h.
|
protected |
Definition at line 413 of file OgreSceneManager.h.
|
protected |
Definition at line 416 of file OgreSceneManager.h.
|
protected |
Definition at line 799 of file OgreSceneManager.h.
|
protected |
Definition at line 764 of file OgreSceneManager.h.
|
protected |
Definition at line 531 of file OgreSceneManager.h.
|
protected |
Definition at line 657 of file OgreSceneManager.h.
|
protected |
Set of registered LOD listeners.
Definition at line 1012 of file OgreSceneManager.h.
|
protected |
Definition at line 546 of file OgreSceneManager.h.
Definition at line 3285 of file OgreSceneManager.h.
|
protected |
List of movable object LOD changed events.
Definition at line 1016 of file OgreSceneManager.h.
|
protected |
Definition at line 539 of file OgreSceneManager.h.
|
protected |
Definition at line 655 of file OgreSceneManager.h.
|
protected |
Definition at line 652 of file OgreSceneManager.h.
|
protected |
Definition at line 419 of file OgreSceneManager.h.
|
protected |
ShadowCamera to light mapping.
Definition at line 501 of file OgreSceneManager.h.
|
protected |
Definition at line 851 of file OgreSceneManager.h.
|
protected |
Definition at line 748 of file OgreSceneManager.h.
|
protected |
Definition at line 474 of file OgreSceneManager.h.
|
protected |
Definition at line 411 of file OgreSceneManager.h.
|
protected |
Enumerator | |
---|---|
BP_FRONT | |
BP_BACK | |
BP_LEFT | |
BP_RIGHT | |
BP_UP | |
BP_DOWN |
Definition at line 607 of file OgreSceneManager.h.
Describes the stage of rendering when performing complex illumination.
Definition at line 173 of file OgreSceneManager.h.
Prefab shapes available without loading a model.
Enumerator | |
---|---|
PT_PLANE | |
PT_CUBE | |
PT_SPHERE |
Definition at line 1371 of file OgreSceneManager.h.
Enumeration of the possible modes allowed for processing the special case render queue list.
Enumerator | |
---|---|
SCRQM_INCLUDE |
Render only the queues in the special case list. |
SCRQM_EXCLUDE |
Render all except the queues in the special case list. |
Definition at line 187 of file OgreSceneManager.h.
Ogre::SceneManager::SceneManager | ( | const String & | instanceName | ) |
Constructor.
|
virtual |
Default destructor.
void Ogre::SceneManager::_addDirtyInstanceManager | ( | InstanceManager * | dirtyManager | ) |
Called by an InstanceManager when it has at least one InstanceBatch that needs their bounds to be updated for proper culling.
dirtyManager | The manager with dirty batches to update |
|
virtual |
Internal method for applying animations to scene nodes.
|
inlinevirtual |
Are render state changes suppressed?
Definition at line 3418 of file OgreSceneManager.h.
|
inlinevirtual |
Are shadows suppressed?
Definition at line 3460 of file OgreSceneManager.h.
|
virtual |
Internal method which parses the scene to find visible objects to render.
Reimplemented in Ogre::PCZSceneManager, Ogre::BspSceneManager, and Ogre::OctreeSceneManager.
|
inlinevirtual |
Gets the active compositor chain of the current scene being rendered.
Definition at line 3103 of file OgreSceneManager.h.
uint32 Ogre::SceneManager::_getCombinedVisibilityMask | ( | void | ) | const |
Internal method for getting the combination between the global visibility mask and the per-viewport visibility mask.
|
inline |
Definition at line 3549 of file OgreSceneManager.h.
|
virtual |
Get the list of lights which could be affecting the frustum.
|
inline |
Advance method to gets the lights dirty counter.
Definition at line 1191 of file OgreSceneManager.h.
void Ogre::SceneManager::_handleLodEvents | ( | ) |
Handle LOD events.
|
virtual |
Render something as if it came from the current queue.
pass | Material pass to use for setting up this quad. |
rend | Renderable to render |
shadowDerivation | Whether passes should be replaced with shadow caster / receiver passes |
|
virtual |
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.
Only really useful if you're controlling parameter state in inner rendering loop callbacks.
mask | Some combination of GpuParamVariability which is bitwise OR'ed with the current dirty state. |
|
virtual |
Internal method for notifying the manager that a SceneNode is autotracking.
void Ogre::SceneManager::_notifyEntityMaterialLodChanged | ( | EntityMaterialLodChangedEvent & | evt | ) |
Notify that an entity material LOD change event has occurred.
void Ogre::SceneManager::_notifyEntityMeshLodChanged | ( | EntityMeshLodChangedEvent & | evt | ) |
Notify that an entity mesh LOD change event has occurred.
|
virtual |
Advance method to increase the lights dirty counter due lights changed.
void Ogre::SceneManager::_notifyMovableObjectLodChanged | ( | MovableObjectLodChangedEvent & | evt | ) |
Notify that a movable object LOD change event has occurred.
|
virtual |
Pause rendering of the frame.
This has to be called when inside a renderScene call (Usually using a listener of some sort)
|
virtual |
Populate a light list with an ordered set of the lights which are closest to the position specified.
position | The position at which to evaluate the list of lights |
radius | The bounding radius to test |
destList | List to be populated with ordered set of lights; will be cleared by this method before population. |
lightMask | The mask with which to include / exclude lights |
|
virtual |
Populates a light list with an ordered set of the lights which are closest to the position of the SceneNode given.
sn | The SceneNode for which to evaluate the list of lights |
radius | The bounding radius to test |
destList | List to be populated with ordered set of lights; will be cleared by this method before population. |
lightMask | The mask with which to include / exclude lights |
|
virtual |
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome.
|
virtual |
Render the objects in a given queue group.
|
virtual |
Prompts the class to send its contents to the renderer.
camera | Pointer to a camera from whose viewpoint the scene is to be rendered. |
vp | The target viewport |
includeOverlays | Whether or not overlay objects should be rendered |
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Sends visible objects found in _findVisibleObjects to the rendering engine.
|
virtual |
Resume rendering of the frame.
This has to be called after a _pauseRendering call
context | The rendring context, as returned by the _pauseRendering call |
|
inlinevirtual |
Sets the active compositor chain of the current scene being rendered.
Definition at line 3089 of file OgreSceneManager.h.
|
virtual |
Notifies the scene manager of its destination render system.
sys | Pointer to the RenderSystem subclass to be used as a render target. |
|
virtual |
Internal method for setting up the renderstate for a rendering pass.
pass | The Pass details to set. |
evenIfSuppressed | Sets the pass details even if render state changes are suppressed; if you are using this to manually set state when render state changes are suppressed, you should set this to true. |
shadowDerivation | If false, disables the derivation of shadow passes from original passes |
|
virtual |
Enables / disables a 'sky box' i.e.
a 6-sided box at constant distance from the camera representing the sky.
enable | True to enable the skybox, false to disable it |
materialName | The name of the material the box will use |
distance | Distance in world coorinates from the camera to each plane of the box. The default is normally OK. |
renderQueue | The render queue to use when rendering this object |
orientation | Optional parameter to specify the orientation of the box. By default the 'top' of the box is deemed to be in the +y direction, and the 'front' at the -z direction. You can use this parameter to rotate the sky if you want. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
virtual |
Enables / disables a 'sky dome' i.e.
an illusion of a curved sky.
enable | True to enable the skydome, false to disable it |
materialName | The name of the material the dome will use |
curvature | The curvature of the dome. Good values are between 2 and 65. Higher values are more curved leading to a smoother effect, lower values are less curved meaning more distortion at the horizons but a better distance effect. |
tiling | How many times to tile the texture(s) across the dome. |
distance | Distance in world coorinates from the camera to each plane of the box the dome is rendered on. The default is normally OK. |
renderQueue | The render queue to use when rendering this object |
orientation | Optional parameter to specify the orientation of the dome. By default the 'top' of the dome is deemed to be in the +y direction, and the 'front' at the -z direction. You can use this parameter to rotate the sky if you want. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
virtual |
Enables / disables a 'sky plane' i.e.
a plane at constant distance from the camera representing the sky.
enable | True to enable the plane, false to disable it |
plane | Details of the plane, i.e. it's normal and it's distance from the camera. |
materialName | The name of the material the plane will use |
scale | The scaling applied to the sky plane - higher values mean a bigger sky plane - you may want to tweak this depending on the size of plane.d and the other characteristics of your scene |
tiling | How many times to tile the texture across the sky. Applies to all texture layers. If you need finer control use the TextureUnitState texture coordinate transformation methods. |
renderQueue | The render queue to use when rendering this object |
bow | If zero, the plane will be completely flat (like previous versions. If above zero, the plane will be curved, allowing the sky to appear below camera level. Curved sky planes are simular to skydomes, but are more compatible with fog. |
xsegments,ysegments | Determines the number of segments the plane will have to it. This is most important when you are bowing the plane, but may also be useful if you need tesselation on the plane to perform per-vertex effects. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
virtual |
Indicates to the SceneManager whether it should suppress changing the RenderSystem states when rendering objects.
suppress | If true, no RenderSystem state changes will be issued until this method is called again with a parameter of false. |
|
virtual |
Indicates to the SceneManager whether it should suppress the active shadow rendering technique until told otherwise.
suppress | If true, no shadow rendering will occur until this method is called again with a parameter of false. |
|
virtual |
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class.
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
Add a listener which will get called back on scene manager events.
void Ogre::SceneManager::addLodListener | ( | LodListener * | listener | ) |
Add a level of detail listener.
|
virtual |
Registers a new Render Object Listener which will be notified when rendering an object.
|
virtual |
Registers a new RenderQueueListener which will be notified when render queues are processed.
|
virtual |
Adds an item to the 'special case' render queue list.
qid | The identifier of the queue which should be added to the special case list. Nothing happens if the queue is already in the list. |
|
protectedvirtual |
|
protectedvirtual |
Build a set of user clip planes from a single non-directional light.
|
protectedvirtual |
Set up a scissor rectangle from a group of lights.
|
protectedvirtual |
|
protectedvirtual |
Update a scissor rectangle from a single light.
|
protectedvirtual |
|
virtual |
Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc.
Cameras are not deleted at this stage since they are still referenced by viewports, which are not destroyed during this process.
Reimplemented in Ogre::OctreeSceneManager, Ogre::PCZSceneManager, and Ogre::BspSceneManager.
|
virtual |
Clears the 'special case' render queue list.
|
virtual |
Creates an AxisAlignedBoxSceneQuery for this scene manager.
box | Details of the box which describes the region for this query. |
mask | The query mask to apply to this query; can be used to filter out certain objects; see SceneQuery for details. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Creates an animation which can be used to animate scene nodes.
name | The name of the animation, must be unique within this SceneManager. |
length | The total length of the animation. |
|
virtual |
Create an AnimationState object for managing application of animations.
animName | The name of an animation created already with createAnimation. |
|
inlineprotectedvirtual |
Internal method for creating the AutoParamDataSource instance.
Definition at line 720 of file OgreSceneManager.h.
References OGRE_NEW.
|
virtual |
Create a BillboardChain, an object which you can use to render a linked chain of billboards.
name | The name to be given to the object (must be unique). |
|
virtual |
Create a BillboardChain, an object which you can use to render a linked chain of billboards, with a generated name.
|
virtual |
Creates a new BillboardSet for use with this scene manager.
name | The name to give to this billboard set. Must be unique. |
poolSize | The initial size of the pool of billboards (see BillboardSet for more information) |
|
virtual |
Creates a new BillboardSet for use with this scene manager, with a generated name.
poolSize | The initial size of the pool of billboards (see BillboardSet for more information) |
Creates a camera to be managed by this scene manager.
name | Name to give the new camera. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
|
virtual |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes.
entityName | The name to be given to the entity (must be unique). |
ptype | The prefab type. |
|
virtual |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes, generating the name.
ptype | The prefab type. |
|
virtual |
Creates an InstancedEntity based on an existing InstanceManager (.
materialName | Material name |
managerName | Name of the instance manager |
|
virtual |
Creates a InstancedGeometry instance suitable for use with this SceneManager.
name | The name to give the new object |
|
virtual |
Creates an InstanceManager interface to create & manipulate instanced entities You need to call this function at least once before start calling createInstancedEntity to build up an instance based on the given mesh.
customName | Custom name for referencing. Must be unique |
meshName | The mesh name the instances will be based upon |
groupName | The resource name where the mesh lives |
technique | Technique to use, which may be shader based, or hardware based. |
numInstancesPerBatch | Suggested number of instances per batch. The actual number may end up being lower if the technique doesn't support having so many. It can't be zero |
flags | Flags to pass to the InstanceManager |
subMeshIdx | InstanceManager only supports using one submesh from the base mesh. This parameter says which submesh to pick (must be <= Mesh::getNumSubMeshes()) |
|
virtual |
Creates an IntersectionSceneQuery for this scene manager.
mask | The query mask to apply to this query; can be used to filter out certain objects; see SceneQuery for details. |
Reimplemented in Ogre::PCZSceneManager, Ogre::BspSceneManager, and Ogre::OctreeSceneManager.
Creates a light for use in the scene.
name | The name of the new light, to identify it later. |
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Creates a light with a generated name.
|
virtual |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface.
name | The name to be given to the object (must be unique). |
|
virtual |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface, generating the name.
|
virtual |
Create a movable object of the type specified.
name | The name to give the object. Must be unique within type. |
typeName | The type of object to create |
params | Optional name/value pair list to give extra parameters to the created object. |
|
virtual |
Create a movable object of the type specified without a name.
typeName | The type of object to create |
params | Optional name/value pair list to give extra parameters to the created object. |
|
virtual |
Creates a particle system based on a template.
name | The name to give the new particle system instance. |
templateName | The name of the template to base the new instance on. |
|
virtual |
Create a blank particle system.
name | The name to give the ParticleSystem. |
quota | The maximum number of particles to allow in this system. |
resourceGroup | The resource group which will be used to load dependent resources |
|
virtual |
Create a blank particle system with a generated name.
quota | The maximum number of particles to allow in this system. |
resourceGroup | The resource group which will be used to load dependent resources |
|
virtual |
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
volumes | Details of the volumes which describe the region for this query. |
mask | The query mask to apply to this query; can be used to filter out certain objects; see SceneQuery for details. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
Creates a RaySceneQuery for this scene manager.
ray | Details of the ray which describes the region for this query. |
mask | The query mask to apply to this query; can be used to filter out certain objects; see SceneQuery for details. |
Reimplemented in Ogre::PCZSceneManager, Ogre::BspSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follows one or more nodes.
name | The name to be given to the object (must be unique). |
|
virtual |
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follows one or more nodes, generating the name.
|
virtual |
Creates an instance of a SceneNode.
Reimplemented in Ogre::PCZSceneManager.
Creates an instance of a SceneNode with a given name.
Reimplemented in Ogre::PCZSceneManager.
|
protectedvirtual |
Subclasses can override this to ensure their specialised SceneNode is used.
Reimplemented in Ogre::BspSceneManager, Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Subclasses can override this to ensure their specialised SceneNode is used.
Reimplemented in Ogre::BspSceneManager, Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
protectedvirtual |
|
protectedvirtual |
|
virtual |
Creates a SphereSceneQuery for this scene manager.
sphere | Details of the sphere which describes the region for this query. |
mask | The query mask to apply to this query; can be used to filter out certain objects; see SceneQuery for details. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
Creates a StaticGeometry instance suitable for use with this SceneManager.
name | The name to give the new object |
|
protectedvirtual |
Internal method for turning a regular pass into a shadow caster pass.
|
protectedvirtual |
Internal method for turning a regular pass into a shadow receiver pass.
|
virtual |
Removes all animations created using this SceneManager.
|
virtual |
Removes all animation states created using this SceneManager.
|
virtual |
Removes & destroys all BillboardChains from the SceneManager.
|
virtual |
Removes & destroys all BillboardSets.
|
virtual |
Removes (and destroys) all cameras from the scene.
|
virtual |
Removes & destroys all Entities.
|
virtual |
Remove & destroy all InstancedGeometry instances.
|
virtual |
|
virtual |
Removes and destroys all lights in the scene.
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Removes & destroys all ManualObjects from the SceneManager.
|
virtual |
Destroy all MovableObjects.
|
virtual |
Destroy all MovableObjects of a given type.
|
virtual |
Removes & destroys all ParticleSystems from the SceneManager.
|
virtual |
Removes & destroys all RibbonTrails from the SceneManager.
|
virtual |
Remove & destroy all StaticGeometry instances.
|
virtual |
Destroys an Animation.
|
virtual |
Destroys an AnimationState.
|
virtual |
Removes & destroys a BillboardChain from the SceneManager.
|
virtual |
Removes & destroys a BillboardChain from the SceneManager.
|
virtual |
Removes & destroys an BillboardSet from the SceneManager.
|
virtual |
Removes & destroys an BillboardSet from the SceneManager by name.
|
virtual |
Removes a camera from the scene.
cam | Pointer to the camera to remove |
|
virtual |
Removes a camera from the scene.
|
virtual |
Removes & destroys an Entity from the SceneManager.
|
virtual |
Removes & destroys an Entity from the SceneManager by name.
|
virtual |
Removes an InstancedEntity,.
instancedEntity | Instance to remove |
|
virtual |
Remove & destroy a InstancedGeometry instance.
|
virtual |
Remove & destroy a InstancedGeometry instance.
|
virtual |
Destroys an InstanceManager if it was created with createInstanceManager()
name | Name of the manager to remove |
|
virtual |
|
virtual |
Removes the named light from the scene and destroys it.
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Removes the light from the scene and destroys it based on a pointer.
|
virtual |
Removes & destroys a ManualObject from the SceneManager.
|
virtual |
Removes & destroys a ManualObject from the SceneManager.
|
virtual |
Destroys a MovableObject with the name specified, of the type specified.
|
virtual |
Destroys a MovableObject.
|
virtual |
Removes & destroys a ParticleSystem from the SceneManager.
|
virtual |
Removes & destroys a ParticleSystem from the SceneManager.
|
virtual |
Destroys a scene query of any type.
|
virtual |
Removes & destroys a RibbonTrail from the SceneManager.
|
virtual |
Removes & destroys a RibbonTrail from the SceneManager.
|
virtual |
Destroys a SceneNode with a given name.
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
|
virtual |
Destroys a SceneNode.
Reimplemented in Ogre::PCZSceneManager.
|
protectedvirtual |
Internal method for destroying shadow textures (texture-based shadows)
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Remove & destroy a StaticGeometry instance.
|
virtual |
Remove & destroy a StaticGeometry instance.
|
protectedvirtual |
Internal method for creating shadow textures (texture-based shadows)
Reimplemented in Ogre::PCZSceneManager.
|
inlinevirtual |
Estimate the number of loading stages required to load the named world geometry.
Reimplemented in Ogre::BspSceneManager.
Definition at line 1698 of file OgreSceneManager.h.
|
inlinevirtual |
Estimate the number of loading stages required to load the named world geometry.
stream | Data stream containing data to load |
typeName | String identifying the type of world geometry contained in the stream - not required if this manager only supports one type of world geometry. |
Reimplemented in Ogre::BspSceneManager.
Definition at line 1713 of file OgreSceneManager.h.
|
virtual |
Extract all injected MovableObjects of a given type.
|
virtual |
Extract a previously injected MovableObject.
|
virtual |
Extract a previously injected MovableObject.
|
protectedvirtual |
Internal method for locating a list of lights which could be affecting the frustum.
Reimplemented in Ogre::PCZSceneManager.
|
protectedvirtual |
Internal method for locating a list of shadow casters which could be affecting the frustum for a given light.
|
protectedvirtual |
Internal method for firing find visible objects event.
|
protectedvirtual |
Internal method for firing the queue end event.
|
protectedvirtual |
Internal method for firing post update scene graph event.
|
protectedvirtual |
Internal method for firing find visible objects event.
|
protectedvirtual |
Internal method for firing the queue start event.
|
protectedvirtual |
Internal method for firing pre update scene graph event.
|
protectedvirtual |
Internal method for firing the queue end event, returns true if queue is to be repeated.
Reimplemented in Ogre::BspSceneManager.
|
protectedvirtual |
Internal method for firing the queue start event, returns true if queue is to be skipped.
|
protectedvirtual |
Internal method for firing when rendering a single object.
|
protectedvirtual |
Internal method for firing destruction event.
|
protectedvirtual |
Internal method for firing the pre caster texture shadows event.
Reimplemented in Ogre::PCZSceneManager.
|
protectedvirtual |
Internal method for firing the pre receiver texture shadows event.
|
protectedvirtual |
Internal method for firing the texture shadows updated event.
const ColourValue& Ogre::SceneManager::getAmbientLight | ( | void | ) | const |
Returns the ambient light level to be used for the scene.
Looks up an Animation object previously created with createAnimation.
|
inline |
Returns a specialised MapIterator over all animations in the scene.
Definition at line 2660 of file OgreSceneManager.h.
|
inline |
Returns a const version of the animation list.
Definition at line 2665 of file OgreSceneManager.h.
|
virtual |
Retrieves animation state as previously created using createAnimationState.
|
inline |
Returns a specialised MapIterator over all animation states in the scene.
Definition at line 2667 of file OgreSceneManager.h.
|
virtual |
Retrieves a pointer to the named BillboardChain.
|
virtual |
Retrieves a pointer to the named BillboardSet.
Retrieves a pointer to the named camera.
|
inline |
Returns a specialised MapIterator over all cameras in the scene.
Definition at line 2653 of file OgreSceneManager.h.
|
inlinevirtual |
Get whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it.
Definition at line 3524 of file OgreSceneManager.h.
|
inline |
Returns a const version of the camera list.
Definition at line 2658 of file OgreSceneManager.h.
|
inline |
Gets the current viewport being rendered (advanced use only, only valid during viewport update.
Definition at line 3497 of file OgreSceneManager.h.
RenderSystem* Ogre::SceneManager::getDestinationRenderSystem | ( | ) |
Get the rendersystem subclass to which the output of this Scene Manager gets sent.
|
inlinevirtual |
Returns true if all scene nodes axis are to be displayed.
Definition at line 2330 of file OgreSceneManager.h.
Retrieves a pointer to the named Entity.
|
inlinevirtual |
Gets whether the SceneManager should search for visible objects, or whether they are being manually handled.
Definition at line 3355 of file OgreSceneManager.h.
|
inlinevirtual |
Get whether to automatically flip the culling mode on objects whenever they are negatively scaled.
Definition at line 3385 of file OgreSceneManager.h.
|
virtual |
Returns the fog colour for the scene.
|
virtual |
Returns the fog density for the scene.
|
virtual |
Returns the fog end distance for the scene.
|
virtual |
Returns the fog mode for the scene.
|
virtual |
Returns the fog start distance for the scene.
|
virtual |
Retrieve a previously created InstancedGeometry instance.
|
virtual |
Retrieves an existing InstanceManager by it's name.
Returns a pointer to the named Light which has previously been added to the scene.
Reimplemented in Ogre::PCZSceneManager.
Retrieve a set of clipping planes for a given light.
|
virtual |
Retrieve a scissor rectangle for a given light and camera.
|
virtual |
Retrieves a pointer to the named ManualObject.
|
virtual |
Get a reference to a previously created MovableObject.
|
protected |
Gets the movable object collection for the given type name.
|
protected |
Gets the movable object collection for the given type name.
|
virtual |
Get an iterator over all MovableObect instances of a given type.
|
inline |
Return the instance name of this SceneManager.
Definition at line 1065 of file OgreSceneManager.h.
|
inlinevirtual |
Get whether to automatically normalise normals on objects whenever they are scaled.
Definition at line 3370 of file OgreSceneManager.h.
|
virtual |
|
inlinevirtual |
Method for getting the value of an implementation-specific Scene Manager option.
strKey | The name of the option |
pDestValue | A pointer to a memory location where the value will be copied. Currently, the memory will be allocated by the scene manager, but this may change |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Definition at line 1762 of file OgreSceneManager.h.
|
inlinevirtual |
Method for getting all the implementation-specific options of the scene manager.
refKeys | A reference to a list that will be filled with all the available options. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Definition at line 1800 of file OgreSceneManager.h.
|
inlinevirtual |
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.
strKey | The name of the option to get the values for. |
refValueList | A reference to a list that will be filled with the available values. |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Definition at line 1791 of file OgreSceneManager.h.
|
virtual |
Retrieves a pointer to the named ParticleSystem.
SceneMgrQueuedRenderableVisitor* Ogre::SceneManager::getQueuedRenderableVisitor | ( | void | ) | const |
Gets the current visitor object which processes queued renderables.
|
virtual |
Retrieves the internal render queue, for advanced users only.
|
virtual |
Retrieves a pointer to the named RibbonTrail.
|
virtual |
Gets the SceneNode at the root of the scene hierarchy.
|
virtual |
Get the shadow camera setup in use for all lights which don't have their own shadow camera setup.
const VisibleObjectsBoundsInfo& Ogre::SceneManager::getShadowCasterBoundsInfo | ( | const Light * | light, |
size_t | iteration = 0 |
||
) | const |
Returns the shadow caster AAB for a specific light-camera combination.
|
inlinevirtual |
Gets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces.
Definition at line 3006 of file OgreSceneManager.h.
|
virtual |
Get the colour used to modulate areas in shadow.
|
virtual |
Gets the distance a shadow volume is extruded for a directional light.
|
inlinevirtual |
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.
Definition at line 2910 of file OgreSceneManager.h.
|
inlinevirtual |
Gets the default maximum distance away from the camera that shadows will be visible.
Definition at line 2762 of file OgreSceneManager.h.
|
inlinevirtual |
Definition at line 2764 of file OgreSceneManager.h.
|
inlinevirtual |
Get the size of the shadow index buffer.
Definition at line 2794 of file OgreSceneManager.h.
|
inlinevirtual |
Gets the current shadow technique.
Definition at line 2706 of file OgreSceneManager.h.
|
virtual |
Get a reference to the shadow texture currently in use at the given index.
ConstShadowTextureConfigIterator Ogre::SceneManager::getShadowTextureConfigIterator | ( | ) | const |
Get an iterator over the current shadow texture settings.
|
inline |
Get the number of the textures allocated for texture based shadows.
Definition at line 2857 of file OgreSceneManager.h.
|
inline |
Get the number of shadow textures is assigned for the given light type.
Definition at line 2871 of file OgreSceneManager.h.
|
inlinevirtual |
Gets whether or not texture shadows attempt to self-shadow.
Definition at line 2945 of file OgreSceneManager.h.
|
inlinevirtual |
Gets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering.
Definition at line 3084 of file OgreSceneManager.h.
|
virtual |
Returns if all bounding boxes of scene nodes are to be displayed.
|
inlinevirtual |
Are debug shadows shown?
Definition at line 2711 of file OgreSceneManager.h.
|
inlinevirtual |
Get the parameters used to generate the current SkyBox, if any.
Definition at line 2082 of file OgreSceneManager.h.
|
inlinevirtual |
Get the skybox node, if enabled.
Definition at line 2079 of file OgreSceneManager.h.
|
inlinevirtual |
Get the parameters used to generate the current SkyDome, if any.
Definition at line 2209 of file OgreSceneManager.h.
|
inlinevirtual |
Get the sky dome node, if enabled.
Definition at line 2206 of file OgreSceneManager.h.
|
inlinevirtual |
Get the parameters used to construct the SkyPlane, if any.
Definition at line 1987 of file OgreSceneManager.h.
|
inlinevirtual |
Get the sky plane node, if enabled.
Definition at line 1984 of file OgreSceneManager.h.
|
virtual |
Gets the way the special case render queue list is processed.
|
virtual |
Retrieve a previously created StaticGeometry instance.
|
virtual |
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.
random | If true, and there is more than one possible suggestion, a random one will be used. If false the same one will always be suggested. |
Reimplemented in Ogre::BspSceneManager.
|
pure virtual |
Retrieve the type name of this scene manager.
Implemented in Ogre::BspSceneManager, Ogre::OctreeSceneManager, Ogre::PCZSceneManager, and Ogre::DefaultSceneManager.
|
inlinevirtual |
Gets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is visible.
Definition at line 3337 of file OgreSceneManager.h.
const VisibleObjectsBoundsInfo& Ogre::SceneManager::getVisibleObjectsBoundsInfo | ( | const Camera * | cam | ) | const |
Returns a visibility boundary box for a specific camera.
|
virtual |
Gets the render queue that the world geometry (if any) this SceneManager renders will be associated with.
|
virtual |
Returns whether an animation with the given name exists.
|
virtual |
Returns whether an animation state with the given name exists.
|
virtual |
Returns whether a billboard chain with the given name exists.
|
virtual |
Returns whether a billboardset with the given name exists.
|
virtual |
Returns whether a camera with the given name exists.
|
virtual |
Returns whether an entity with the given name exists.
|
virtual |
Returns whether an InstanceManager with the given name exists.
|
virtual |
Returns whether a light with the given name exists.
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Returns whether a manual object with the given name exists.
|
virtual |
Returns whether a movable object instance with the given name exists.
|
inlinevirtual |
Method for verifying whether the scene manager has an implementation-specific option.
strKey | The name of the option to check for. |
Definition at line 1774 of file OgreSceneManager.h.
|
virtual |
Returns whether a particle system with the given name exists.
|
virtual |
Returns whether a ribbon trail with the given name exists.
|
virtual |
Returns whether a scene node with the given name exists.
|
virtual |
Returns whether a static geometry instance with the given name exists.
|
protectedvirtual |
Internal method for initialising the render queue.
|
protectedvirtual |
Internal method for setting up materials for shadows.
|
virtual |
Inject a MovableObject instance created externally.
|
inlinevirtual |
Gets whether using late material resolving or not.
Definition at line 3100 of file OgreSceneManager.h.
|
virtual |
Returns whether or not the named queue will be rendered based on the current 'special case' render queue list and mode.
qid | The identifier of the queue which should be tested |
|
inlinevirtual |
Is there an additive shadowing technique in use?
Definition at line 3069 of file OgreSceneManager.h.
References Ogre::SHADOWDETAILTYPE_ADDITIVE.
|
inlinevirtual |
Is the shadow technique integrated into primary materials?
Definition at line 3072 of file OgreSceneManager.h.
References Ogre::SHADOWDETAILTYPE_INTEGRATED.
|
inlinevirtual |
Is there any shadowing technique in use?
Definition at line 3075 of file OgreSceneManager.h.
References Ogre::SHADOWTYPE_NONE.
|
inlinevirtual |
Is there a modulative shadowing technique in use?
Definition at line 3066 of file OgreSceneManager.h.
References Ogre::SHADOWDETAILTYPE_MODULATIVE.
|
inlinevirtual |
Is there a stencil shadow based shadowing technique in use?
Definition at line 3060 of file OgreSceneManager.h.
References Ogre::SHADOWDETAILTYPE_STENCIL.
|
inlinevirtual |
Is there a texture shadow based shadowing technique in use?
Definition at line 3063 of file OgreSceneManager.h.
References Ogre::SHADOWDETAILTYPE_TEXTURE.
|
inlinevirtual |
Return whether a skybox is enabled.
Definition at line 2076 of file OgreSceneManager.h.
|
inlinevirtual |
Return whether a skydome is enabled.
Definition at line 2203 of file OgreSceneManager.h.
|
inlinevirtual |
Return whether a key plane is enabled.
Definition at line 1981 of file OgreSceneManager.h.
|
virtual |
Manual rendering method, for advanced users only.
rend | A RenderOperation object describing the rendering op |
pass | The Pass to use for this render |
vp | Pointer to the viewport to render to, or 0 to use the current viewport |
worldMatrix | The transform to apply from object to world space |
viewMatrix | The transform to apply from world to view space |
projMatrix | The transform to apply from view to screen space |
doBeginEndFrame | If true, beginFrame() and endFrame() are called, otherwise not. You should leave this as false if you are calling this within the main render loop. |
|
virtual |
Manual rendering method for rendering a single object.
rend | The renderable to issue to the pipeline |
pass | The pass to use |
vp | Pointer to the viewport to render to, or 0 to use the existing viewport |
doBeginEndFrame | If true, beginFrame() and endFrame() are called, otherwise not. You should leave this as false if you are calling this within the main render loop. |
viewMatrix | The transform to apply from world to view space |
projMatrix | The transform to apply from view to screen space |
lightScissoringClipping | If true, passes that have the getLightScissorEnabled and/or getLightClipPlanesEnabled flags will cause calculation and setting of scissor rectangle and user clip planes. |
doLightIteration | If true, this method will issue the renderable to the pipeline possibly multiple times, if the pass indicates it should be done once per light |
manualLightList | Only applicable if doLightIteration is false, this method allows you to pass in a previously determined set of lights which will be used for a single render of this object. |
|
protected |
Mutex over the collection of MovableObject types.
|
protected |
Ogre::SceneManager::OGRE_MUTEX | ( | sceneGraphMutex | ) |
Mutex to protect the scene graph from simultaneous access from multiple threads.
|
inlineinherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
protectedvirtual |
Internal method for preparing the render queue for use with each render.
|
virtual |
Method for preparing shadow textures ready for use in a regular render Do not call manually unless before frame start or rendering is paused If lightList is not supplied, will render all lights in frustum.
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Sets the source of the 'world' geometry, i.e.
the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.
|
virtual |
Sets the source of the 'world' geometry, i.e.
the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.
stream | Data stream containing data to load |
typeName | String identifying the type of world geometry contained in the stream - not required if this manager only supports one type of world geometry. |
|
virtual |
Remove a listener.
void Ogre::SceneManager::removeLodListener | ( | LodListener * | listener | ) |
Remove a level of detail listener.
|
virtual |
Removes a listener previously added with addRenderObjectListener.
|
virtual |
Removes a listener previously added with addRenderQueueListener.
|
virtual |
Removes an item to the 'special case' render queue list.
qid | The identifier of the queue which should be removed from the special case list. Nothing happens if the queue is not in the list. |
|
protectedvirtual |
Render a group with the added complexity of additive stencil shadows.
|
protectedvirtual |
Render a group with additive texture shadows.
|
protectedvirtual |
Render a group in the ordinary way.
|
protectedvirtual |
Render a group with the added complexity of modulative stencil shadows.
|
protectedvirtual |
Render a group with the added complexity of modulative texture shadows.
|
protectedvirtual |
Render a set of objects, see renderSingleObject for param definitions.
|
protected |
Render a set of shadow renderables.
|
protectedvirtual |
Internal method for rendering all the objects for a given light into the stencil buffer.
light | The light source |
cam | The camera being viewed from |
calcScissor | Whether the method should set up any scissor state, or false if that's already been done |
|
protectedvirtual |
Internal utility method for rendering a single object.
rend | The renderable to issue to the pipeline |
pass | The pass which is being used |
lightScissoringClipping | If true, passes that have the getLightScissorEnabled and/or getLightClipPlanesEnabled flags will cause calculation and setting of scissor rectangle and user clip planes. |
doLightIteration | If true, this method will issue the renderable to the pipeline possibly multiple times, if the pass indicates it should be done once per light |
manualLightList | Only applicable if doLightIteration is false, this method allows you to pass in a previously determined set of lights which will be used for a single render of this object. |
|
protectedvirtual |
Render a group rendering only shadow casters.
|
protectedvirtual |
Render a group rendering only shadow receivers.
|
protectedvirtual |
Render those objects in the transparent pass list which have shadow casting forced on.
|
protectedvirtual |
Internal method for rendering all objects using a custom queue sequence.
|
protectedvirtual |
Internal method for rendering all objects using the default queue sequence.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Internal method used by _renderSingleObject to deal with renderables which override the camera's own view / projection matrices.
void Ogre::SceneManager::setAmbientLight | ( | const ColourValue & | colour | ) |
Sets the ambient light level to be used for the scene.
|
inlinevirtual |
Set whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it.
Definition at line 3519 of file OgreSceneManager.h.
|
virtual |
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene.
|
inlinevirtual |
Sets whether the SceneManager should search for visible objects, or whether they are being manually handled.
Definition at line 3350 of file OgreSceneManager.h.
|
inlinevirtual |
Set whether to automatically flip the culling mode on objects whenever they are negatively scaled.
Definition at line 3380 of file OgreSceneManager.h.
void Ogre::SceneManager::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.
mode | Set up the mode of fog as described in the FogMode enum, or set to FOG_NONE to turn off. |
colour | The colour of the fog. Either set this to the same as your viewport background colour, or to blend in with a skydome or skybox. |
expDensity | The density of the fog in FOG_EXP or FOG_EXP2 mode, as a value between 0 and 1. The default is 0.001. |
linearStart | Distance in world units at which linear fog starts to encroach. Only applicable if mode is FOG_LINEAR. |
linearEnd | Distance in world units at which linear fog becomes completely opaque. Only applicable if mode is FOG_LINEAR. |
|
inlinevirtual |
Sets whether to use late material resolving or not.
If set, materials will be resolved from the materials at the pass-setting stage and not at the render queue building stage. This is useful when the active material scheme during the render queue building stage is different from the one during the rendering stage.
Definition at line 3096 of file OgreSceneManager.h.
|
inlinevirtual |
Set whether to automatically normalise normals on objects whenever they are scaled.
Definition at line 3365 of file OgreSceneManager.h.
|
inlinevirtual |
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.
strKey | The name of the option to set |
pValue | A pointer to the value - the size should be calculated by the scene manager based on the key |
Reimplemented in Ogre::PCZSceneManager, and Ogre::OctreeSceneManager.
Definition at line 1746 of file OgreSceneManager.h.
void Ogre::SceneManager::setQueuedRenderableVisitor | ( | SceneMgrQueuedRenderableVisitor * | visitor | ) |
Advanced method for supplying an alternative visitor, used for parsing the render queues and sending the results to the renderer.
visitor | Your implementation of SceneMgrQueuedRenderableVisitor. If you pass 0, the default implementation will be used. |
|
virtual |
Set the shadow camera setup to use for all lights which don't have their own shadow camera setup.
|
inlinevirtual |
Sets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces.
Definition at line 3001 of file OgreSceneManager.h.
|
virtual |
Set the colour used to modulate areas in shadow.
|
virtual |
Sets the distance a shadow volume is extruded for a directional light.
|
inlinevirtual |
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.
Definition at line 2906 of file OgreSceneManager.h.
|
virtual |
Sets the default maximum distance away from the camera that shadows will be visible.
You have to call this function before you create lights or the default distance of zero will be used.
|
virtual |
Sets the maximum size of the index buffer used to render shadow primitives.
size | The number of indexes; divide this by 3 to determine the number of triangles. |
|
virtual |
Sets the general shadow technique to be used in this scene.
technique | The shadowing technique to use for the scene. |
|
virtual |
Sets the default material to use for rendering shadow casters.
|
virtual |
Set the detailed configuration for a shadow texture.
shadowIndex | The index of the texture to configure, must be < the number of shadow textures setting |
width | The width of the texture |
height | The height of the texture |
format | The pixel format of the texture |
fsaa | The level of multisampling to use. Ignored if the device does not support it. |
depthBufferPoolId | The pool # it should query the depth buffers from |
|
virtual |
Set the detailed configuration for a shadow texture.
shadowIndex | The index of the texture to configure, must be < the number of shadow textures setting |
config | Configuration structure |
|
virtual |
Set the number of textures allocated for texture-based shadows.
|
inline |
Set the number of shadow textures a light type uses.
Definition at line 2868 of file OgreSceneManager.h.
|
inlinevirtual |
Sets the proportional distance at which texture shadows finish to fading out.
Definition at line 2927 of file OgreSceneManager.h.
|
inlinevirtual |
Sets the proportional distance at which texture shadows begin to fade out.
Definition at line 2918 of file OgreSceneManager.h.
|
virtual |
Set the level of multisample AA of the textures used for texture-based shadows.
|
virtual |
Set the pixel format of the textures used for texture-based shadows.
|
virtual |
Sets the default material to use for rendering shadow receivers.
|
virtual |
Sets whether or not texture shadows should attempt to self-shadow.
selfShadow | Whether to attempt self-shadowing with texture shadows |
|
virtual |
Sets the size and count of textures used in texture-based shadows.
|
virtual |
Set the size of the texture used for all texture-based shadows.
|
inlinevirtual |
Sets whether we should use an inifinite camera far plane when rendering stencil shadows.
Definition at line 3056 of file OgreSceneManager.h.
|
inlinevirtual |
Sets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering.
Definition at line 3080 of file OgreSceneManager.h.
|
protectedvirtual |
Internal utility method for setting stencil state for rendering shadow volumes.
secondpass | Is this the second pass? |
zfail | Should we be using the zfail method? |
twosided | Should we use a 2-sided stencil? |
|
inlinevirtual |
Enables / disables the rendering of debug information for shadows.
Definition at line 2709 of file OgreSceneManager.h.
|
virtual |
Enables / disables a 'sky box' i.e.
a 6-sided box at constant distance from the camera representing the sky.
enable | True to enable the skybox, false to disable it |
materialName | The name of the material the box will use |
distance | Distance in world coorinates from the camera to each plane of the box. The default is normally OK. |
drawFirst | If true, the box is drawn before all other geometry in the scene, without updating the depth buffer. This is the safest rendering method since all other objects will always appear in front of the sky. However this is not the most efficient way if most of the sky is often occluded by other objects. If this is the case, you can set this parameter to false meaning it draws after all other geometry which can be an optimisation - however you must ensure that the distance value is large enough that no objects will 'poke through' the sky box when it is rendered. |
orientation | Optional parameter to specify the orientation of the box. By default the 'top' of the box is deemed to be in the +y direction, and the 'front' at the -z direction. You can use this parameter to rotate the sky if you want. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
inlinevirtual |
Enables / disables a 'sky box'.
Definition at line 2073 of file OgreSceneManager.h.
|
virtual |
Enables / disables a 'sky dome' i.e.
an illusion of a curved sky.
enable | True to enable the skydome, false to disable it |
materialName | The name of the material the dome will use |
curvature | The curvature of the dome. Good values are between 2 and 65. Higher values are more curved leading to a smoother effect, lower values are less curved meaning more distortion at the horizons but a better distance effect. |
tiling | How many times to tile the texture(s) across the dome. |
distance | Distance in world coorinates from the camera to each plane of the box the dome is rendered on. The default is normally OK. |
drawFirst | If true, the dome is drawn before all other geometry in the scene, without updating the depth buffer. This is the safest rendering method since all other objects will always appear in front of the sky. However this is not the most efficient way if most of the sky is often occluded by other objects. If this is the case, you can set this parameter to false meaning it draws after all other geometry which can be an optimisation - however you must ensure that the distance value is large enough that no objects will 'poke through' the sky when it is rendered. |
orientation | Optional parameter to specify the orientation of the dome. By default the 'top' of the dome is deemed to be in the +y direction, and the 'front' at the -z direction. You can use this parameter to rotate the sky if you want. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
inlinevirtual |
Enables / disables a 'sky dome'.
Definition at line 2200 of file OgreSceneManager.h.
|
virtual |
Enables / disables a 'sky plane' i.e.
a plane at constant distance from the camera representing the sky.
enable | True to enable the plane, false to disable it |
plane | Details of the plane, i.e. it's normal and it's distance from the camera. |
materialName | The name of the material the plane will use |
scale | The scaling applied to the sky plane - higher values mean a bigger sky plane - you may want to tweak this depending on the size of plane.d and the other characteristics of your scene |
tiling | How many times to tile the texture across the sky. Applies to all texture layers. If you need finer control use the TextureUnitState texture coordinate transformation methods. |
drawFirst | If true, the plane is drawn before all other geometry in the scene, without updating the depth buffer. This is the safest rendering method since all other objects will always appear in front of the sky. However this is not the most efficient way if most of the sky is often occluded by other objects. If this is the case, you can set this parameter to false meaning it draws after all other geometry which can be an optimisation - however you must ensure that the plane.d value is large enough that no objects will 'poke through' the sky plane when it is rendered. |
bow | If zero, the plane will be completely flat (like previous versions. If above zero, the plane will be curved, allowing the sky to appear below camera level. Curved sky planes are simular to skydomes, but are more compatible with fog. |
xsegments,ysegments | Determines the number of segments the plane will have to it. This is most important when you are bowing the plane, but may also be useful if you need tesselation on the plane to perform per-vertex effects. |
groupName | The name of the resource group to which to assign the plane mesh. |
|
inlinevirtual |
Enables / disables a 'sky plane'.
Definition at line 1978 of file OgreSceneManager.h.
|
virtual |
Sets the way the special case render queue list is processed.
mode | The mode of processing |
|
protectedvirtual |
|
protectedvirtual |
Internal method for setting the destination viewport for the next render.
|
inlinevirtual |
Sets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is visible.
Definition at line 3332 of file OgreSceneManager.h.
|
virtual |
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.
|
virtual |
Sets the source of the 'world' geometry, i.e.
the large, mainly static geometry making up the world e.g. rooms, landscape etc.
stream | Data stream containing data to load |
typeName | String identifying the type of world geometry contained in the stream - not required if this manager only supports one type of world geometry. |
Reimplemented in Ogre::BspSceneManager.
|
virtual |
Sets the render queue that the world geometry (if any) this SceneManager renders will be associated with.
Reimplemented in Ogre::PCZSceneManager.
|
virtual |
Allows all bounding boxes of scene nodes to be displayed.
|
protected |
Updates all instance managaers with dirty instance batches.
|
protectedvirtual |
|
protectedvirtual |
Update the state of the render queue group splitting based on a shadow option change.
|
protectedvirtual |
Update the state of the global render queue splitting based on a shadow option change.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Internal method used by _renderSingleObject to deal with renderables which override the camera's own view / projection materices.
|
protectedvirtual |
Internal method to validate whether a Pass should be allowed to render.
|
protectedvirtual |
Internal method to validate whether a Renderable should be allowed to render.
|
friend |
Allow visitor helper to access protected methods.
Definition at line 383 of file OgreSceneManager.h.
|
static |
Query type mask which will be used for entities.
Definition at line 149 of file OgreSceneManager.h.
|
static |
Query type mask which will be used for frusta and cameras.
Definition at line 157 of file OgreSceneManager.h.
|
static |
Query type mask which will be used for effects like billboardsets / particle systems.
Definition at line 151 of file OgreSceneManager.h.
|
static |
Query type mask which will be used for lights.
Definition at line 155 of file OgreSceneManager.h.
|
protected |
Definition at line 728 of file OgreSceneManager.h.
|
protected |
The active renderable visitor class - subclasses could override this.
Definition at line 982 of file OgreSceneManager.h.
|
protected |
Current ambient light, cached for RenderSystem.
Definition at line 400 of file OgreSceneManager.h.
|
protected |
Definition at line 639 of file OgreSceneManager.h.
|
protected |
Definition at line 641 of file OgreSceneManager.h.
|
protected |
Utility class for calculating automatic parameters for gpu programs.
Definition at line 726 of file OgreSceneManager.h.
|
protected |
Definition at line 439 of file OgreSceneManager.h.
|
protected |
Definition at line 534 of file OgreSceneManager.h.
|
protected |
Definition at line 988 of file OgreSceneManager.h.
|
protected |
Camera in progress.
Definition at line 430 of file OgreSceneManager.h.
|
protected |
Definition at line 989 of file OgreSceneManager.h.
|
protected |
Whether to use camera-relative rendering.
Definition at line 987 of file OgreSceneManager.h.
|
protected |
Central list of cameras - for easy memory management and lookup.
Definition at line 409 of file OgreSceneManager.h.
|
protected |
Definition at line 498 of file OgreSceneManager.h.
|
protected |
Definition at line 750 of file OgreSceneManager.h.
|
protected |
Current Viewport.
Definition at line 432 of file OgreSceneManager.h.
|
protected |
Definition at line 732 of file OgreSceneManager.h.
|
protected |
Storage for default renderable visitor.
Definition at line 984 of file OgreSceneManager.h.
|
protected |
default shadow camera setup
Definition at line 769 of file OgreSceneManager.h.
|
protected |
Definition at line 855 of file OgreSceneManager.h.
|
protected |
Definition at line 856 of file OgreSceneManager.h.
|
protected |
The rendering system to send the scene to.
Definition at line 403 of file OgreSceneManager.h.
|
protected |
Definition at line 800 of file OgreSceneManager.h.
|
protected |
Definition at line 801 of file OgreSceneManager.h.
|
protected |
Flag indicating whether SceneNodes will be rendered as a set of 3 axes.
Definition at line 635 of file OgreSceneManager.h.
|
protected |
Definition at line 1025 of file OgreSceneManager.h.
|
protected |
Definition at line 1021 of file OgreSceneManager.h.
|
protected |
Definition at line 874 of file OgreSceneManager.h.
|
protected |
Definition at line 883 of file OgreSceneManager.h.
|
protected |
Definition at line 485 of file OgreSceneManager.h.
|
protected |
Definition at line 469 of file OgreSceneManager.h.
|
protected |
Definition at line 472 of file OgreSceneManager.h.
|
protected |
Definition at line 471 of file OgreSceneManager.h.
|
protected |
Definition at line 468 of file OgreSceneManager.h.
|
protected |
Definition at line 470 of file OgreSceneManager.h.
|
protected |
Definition at line 741 of file OgreSceneManager.h.
|
protected |
Gpu params that need rebinding (mask of GpuParamVariability)
Definition at line 996 of file OgreSceneManager.h.
|
protected |
Definition at line 743 of file OgreSceneManager.h.
|
protected |
Definition at line 882 of file OgreSceneManager.h.
|
protected |
Definition at line 414 of file OgreSceneManager.h.
|
protected |
Definition at line 417 of file OgreSceneManager.h.
|
protected |
Definition at line 479 of file OgreSceneManager.h.
|
protected |
Last light sets.
Definition at line 992 of file OgreSceneManager.h.
|
protected |
Definition at line 994 of file OgreSceneManager.h.
|
protected |
Definition at line 993 of file OgreSceneManager.h.
|
protected |
Definition at line 397 of file OgreSceneManager.h.
|
protected |
Definition at line 729 of file OgreSceneManager.h.
|
protected |
Definition at line 765 of file OgreSceneManager.h.
|
protected |
Definition at line 766 of file OgreSceneManager.h.
|
protected |
Definition at line 533 of file OgreSceneManager.h.
|
protected |
Definition at line 536 of file OgreSceneManager.h.
|
protected |
Definition at line 658 of file OgreSceneManager.h.
|
protected |
Definition at line 1013 of file OgreSceneManager.h.
|
protected |
Definition at line 548 of file OgreSceneManager.h.
|
protected |
Definition at line 547 of file OgreSceneManager.h.
|
protected |
Definition at line 1017 of file OgreSceneManager.h.
|
protected |
Instance name.
Definition at line 393 of file OgreSceneManager.h.
|
protected |
Definition at line 484 of file OgreSceneManager.h.
|
protected |
Definition at line 747 of file OgreSceneManager.h.
|
protected |
Definition at line 486 of file OgreSceneManager.h.
|
protected |
Definition at line 656 of file OgreSceneManager.h.
|
protected |
Queue of objects for rendering.
Definition at line 396 of file OgreSceneManager.h.
|
protected |
Definition at line 653 of file OgreSceneManager.h.
|
protected |
Definition at line 482 of file OgreSceneManager.h.
|
protected |
Definition at line 481 of file OgreSceneManager.h.
|
protected |
Central list of SceneNodes - for easy memory management.
Definition at line 427 of file OgreSceneManager.h.
|
protected |
Root scene node.
Definition at line 435 of file OgreSceneManager.h.
|
protected |
Definition at line 753 of file OgreSceneManager.h.
|
protected |
Definition at line 502 of file OgreSceneManager.h.
|
protected |
Definition at line 854 of file OgreSceneManager.h.
|
protected |
Definition at line 852 of file OgreSceneManager.h.
|
protected |
A pass designed to let us render shadow colour on white for texture shadows.
Definition at line 568 of file OgreSceneManager.h.
|
protected |
Definition at line 917 of file OgreSceneManager.h.
|
protected |
Definition at line 752 of file OgreSceneManager.h.
|
protected |
Definition at line 853 of file OgreSceneManager.h.
|
protected |
Definition at line 733 of file OgreSceneManager.h.
|
protected |
Definition at line 734 of file OgreSceneManager.h.
|
protected |
Definition at line 742 of file OgreSceneManager.h.
|
protected |
Definition at line 738 of file OgreSceneManager.h.
|
protected |
Definition at line 739 of file OgreSceneManager.h.
|
protected |
Definition at line 740 of file OgreSceneManager.h.
|
protected |
Definition at line 737 of file OgreSceneManager.h.
|
protected |
Definition at line 736 of file OgreSceneManager.h.
|
protected |
A pass designed to let us render shadow receivers for texture shadows.
Definition at line 570 of file OgreSceneManager.h.
|
protected |
Definition at line 735 of file OgreSceneManager.h.
|
protected |
Definition at line 731 of file OgreSceneManager.h.
|
protected |
Definition at line 749 of file OgreSceneManager.h.
|
protected |
Definition at line 745 of file OgreSceneManager.h.
|
protected |
Definition at line 744 of file OgreSceneManager.h.
|
protected |
Array defining shadow count per light type.
Definition at line 505 of file OgreSceneManager.h.
|
protected |
Definition at line 537 of file OgreSceneManager.h.
|
protected |
Definition at line 868 of file