OGRE
13.6
Object-Oriented Graphics Rendering Engine
|
Specialized SceneManager that uses Portal-Connected-Zones to divide the scene spatially. More...
#include <OgrePCZSceneManager.h>
Public Types | |
typedef MapIterator< ZoneMap > | ZoneIterator |
ZoneMap iterator for read-only access to the zonemap. More... | |
Public Types inherited from Ogre::SceneManager | |
typedef MapIterator< AnimationList > | AnimationIterator |
typedef std::map< String, Animation * > | AnimationList |
typedef MapIterator< CameraList > | CameraIterator |
typedef std::map< String, Camera * > | CameraList |
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 |
typedef std::map< String, MovableObject * > | MovableObjectMap |
enum | PrefabType { PT_PLANE , PT_CUBE , PT_SPHERE } |
Prefab shapes available without loading a model. More... | |
enum | QueryTypeMask : uint32 { WORLD_GEOMETRY_TYPE_MASK = 0x80000000 , ENTITY_TYPE_MASK = 0x40000000 , FX_TYPE_MASK = 0x20000000 , STATICGEOMETRY_TYPE_MASK = 0x10000000 , LIGHT_TYPE_MASK = 0x08000000 , FRUSTUM_TYPE_MASK = 0x04000000 , USER_TYPE_MASK_LIMIT = FRUSTUM_TYPE_MASK } |
enum | SpecialCaseRenderQueueMode { SCRQM_INCLUDE , SCRQM_EXCLUDE } |
Enumeration of the possible modes allowed for processing the special case render queue list. More... | |
Public Member Functions | |
PCZSceneManager (const String &name) | |
Standard Constructor. More... | |
~PCZSceneManager () | |
Standard destructor. More... | |
virtual void | _alertVisibleObjects (void) |
Alerts each unculled object, notifying it that it will be drawn. More... | |
void | _calcZonesAffectedByLights (Camera *cam) |
Calculate which zones are affected by each light. More... | |
void | _clearAllZonesPortalUpdateFlag (void) |
Clear portal update flag from all zones. More... | |
void | _dirtyNodeByMovingPortals (void) |
Mark nodes dirty for every zone with moving portal in the scene. More... | |
void | _findVisibleObjects (Camera *cam, VisibleObjectsBoundsInfo *visibleBounds, bool onlyShadowCasters) override |
Recurses through the PCZTree determining which nodes are visible. More... | |
void | _renderScene (Camera *cam, Viewport *vp, bool includeOverlays) override |
Overridden from basic scene manager. More... | |
void | _updateHomeZone (PCZSceneNode *, bool) |
Make sure the home zone for the PCZSceneNode is up-to-date. More... | |
void | _updatePCZSceneNode (PCZSceneNode *) |
Checks the given SceneNode, and determines if it needs to be moved to a different PCZone or be added to the visitors list of other PCZone(s). More... | |
void | _updatePCZSceneNodes (void) |
Update the PCZSceneNodes. More... | |
void | _updatePortalZoneData (void) |
Check/Update the zone data for every portal in the scene. More... | |
void | _updateSceneGraph (Camera *cam) override |
Update Scene Graph (does several things now) More... | |
void | addPCZSceneNode (PCZSceneNode *sn, PCZone *zone) |
add a PCZSceneNode to the scene by putting it in a zone NOTE: This zone will be the scene node's home zone More... | |
void | clearScene (void) override |
Overridden to clean up zones. More... | |
void | connectPortalsToTargetZonesByLocation (void) |
AxisAlignedBoxSceneQuery * | createAABBQuery (const AxisAlignedBox &box, uint32 mask=0xFFFFFFFF) override |
Overridden from SceneManager. More... | |
AntiPortal * | createAntiPortal (const String &name, PortalBase::PORTAL_TYPE type=PortalBase::PORTAL_TYPE_QUAD) |
Create a new anti portal instance. More... | |
Camera * | createCamera (const String &name) override |
Creates a specialized PCZCamera. More... | |
IntersectionSceneQuery * | createIntersectionQuery (uint32 mask=0xFFFFFFFF) override |
Creates an IntersectionSceneQuery for this scene manager. More... | |
Light * | createLight (const String &name) override |
Creates a light for use in the scene. More... | |
PlaneBoundedVolumeListSceneQuery * | createPlaneBoundedVolumeQuery (const PlaneBoundedVolumeList &volumes, uint32 mask=0xFFFFFFFF) override |
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager. More... | |
Portal * | createPortal (const String &name, PortalBase::PORTAL_TYPE type=PortalBase::PORTAL_TYPE_QUAD) |
Create a new portal instance. More... | |
RaySceneQuery * | createRayQuery (const Ray &ray, uint32 mask=0xFFFFFFFF) override |
Creates a RaySceneQuery for this scene manager. More... | |
SceneNode * | createSceneNodeImpl (const String &name) override |
Subclasses can override this to ensure their specialised SceneNode is used. More... | |
SceneNode * | createSceneNodeImpl (void) override |
Subclasses can override this to ensure their specialised SceneNode is used. More... | |
SphereSceneQuery * | createSphereQuery (const Sphere &sphere, uint32 mask=0xFFFFFFFF) override |
Creates a SphereSceneQuery for this scene manager. More... | |
PCZone * | createZone (const String &zoneType, const String &instanceName) |
Create a zone with the given name More... | |
PCZone * | createZoneFromFile (const String &zoneTypeName, const String &zoneName, PCZSceneNode *parentNode, const String &filename) |
Create a zone from a file (type of file depends on the zone type. More... | |
void | createZoneSpecificNodeData (PCZone *) |
Create any zone-specific data necessary for all nodes for the given zone. More... | |
void | createZoneSpecificNodeData (PCZSceneNode *) |
Create any zone-specific data necessary for all zones for the given node. More... | |
void | destroyAllLights (void) override |
Removes and destroys all lights in the scene. More... | |
void | destroyAntiPortal (AntiPortal *p) |
Delete a anti portal instance by pointer. More... | |
void | destroyAntiPortal (const String &portalName) |
Delete a anti portal instance by name. More... | |
void | destroyLight (const String &name) override |
Removes the named light from the scene and destroys it. More... | |
void | destroyPortal (const String &portalName) |
Delete a portal instance by name. More... | |
void | destroyPortal (Portal *p) |
Delete a portal instance by pointer. More... | |
void | destroySceneNode (const String &name) override |
Deletes a scene node by name & corresponding PCZSceneNode. More... | |
void | destroySceneNode (SceneNode *sn) override |
Deletes a scene node & corresponding PCZSceneNode. More... | |
void | destroyZone (PCZone *zone, bool destroySceneNodes) |
Destroy an existing zone within the scene. More... | |
void | enableSky (bool) |
Enable/disable sky rendering. More... | |
void | findNodesIn (const AxisAlignedBox &box, PCZSceneNodeList &list, PCZone *startZone, PCZSceneNode *exclude=0) |
Recurses the scene, adding any nodes intersecting with the box into the given list. More... | |
void | findNodesIn (const PlaneBoundedVolume &volume, PCZSceneNodeList &list, PCZone *startZone, PCZSceneNode *start=0) |
Recurses the PCZTree, adding any nodes intersecting with the volume into the given list. More... | |
void | findNodesIn (const Ray &ray, PCZSceneNodeList &list, PCZone *startZone, PCZSceneNode *start=0) |
Recurses the scene, starting in the given startZone, adding any nodes intersecting with the ray into the given list. More... | |
void | findNodesIn (const Sphere &sphere, PCZSceneNodeList &list, PCZone *startZone, PCZSceneNode *start=0) |
Recurses the scene, adding any nodes intersecting with the sphere into the given list. More... | |
PCZone * | findZoneForPoint (Vector3 &point) |
Find the smallest zone which contains the point. More... | |
PCZone * | getDefaultZone (void) |
Get the default zone. More... | |
Light * | getLight (const String &name) const override |
Returns a pointer to the named Light which has previously been added to the scene. More... | |
bool | getOption (const String &, void *) override |
Gets the given option for the Scene Manager. More... | |
bool | getOptionKeys (StringVector &refKeys) override |
Method for getting all the implementation-specific options of the scene manager. More... | |
bool | getOptionValues (const String &key, StringVector &refValueList) override |
Method for getting all possible values for a specific option. More... | |
const String & | getTypeName (void) const override |
Retrieve the type name of this scene manager. More... | |
PCZone * | getZoneByName (const String &zoneName) |
Get a zone by name. More... | |
ZoneIterator | getZoneIterator (void) |
bool | hasLight (const String &name) const override |
Returns whether a light with the given name exists. More... | |
void | init (const String &defaultZoneTypeName, const String &filename="none") |
Initializes the manager. More... | |
void | prepareShadowTextures (Camera *cam, Viewport *vp, const LightList *lightList=0) override |
void | removeSceneNode (SceneNode *) |
Removes the given PCZSceneNode. More... | |
void | setNodeHomeZone (SceneNode *, PCZone *) |
Set the home zone for a scene node. More... | |
bool | setOption (const String &, const void *) override |
Sets the given option for the SceneManager. More... | |
void | setShowPortals (bool b) |
Sets the portal visibility flag. More... | |
void | setSkyZone (PCZone *zone) |
Set the zone which contains the sky node. More... | |
void | setWorldGeometryRenderQueue (uint8 qid) |
Overridden from SceneManager. More... | |
virtual void | setZoneGeometry (const String &zoneName, PCZSceneNode *parentNode, const String &filename) |
Set the "main" geometry of the zone. More... | |
Public Member Functions inherited from Ogre::SceneManager | |
SceneManager (const String &instanceName) | |
Constructor. More... | |
virtual | ~SceneManager () |
Default destructor. More... | |
CompositorChain * | _getActiveCompositorChain () const |
Gets the active compositor chain of the current scene being rendered. More... | |
const AutoParamDataSource * | _getAutoParamDataSource () |
uint32 | _getCombinedVisibilityMask (void) const |
Internal method for getting the combination between the global visibility mask and the per-viewport visibility mask. More... | |
IlluminationRenderStage | _getCurrentRenderStage () |
void | _handleLodEvents () |
Handle LOD events. More... | |
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... | |
void | _issueRenderOp (Renderable *rend, const Pass *pass) |
Internal method for issuing the render operation. More... | |
void | _markGpuParamsDirty (uint16 mask) |
Method to allow you to mark gpu parameters as dirty, causing them to be updated according to the mask that you set when updateGpuProgramParameters is next called. More... | |
void | _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... | |
void | _notifyMovableObjectLodChanged (MovableObjectLodChangedEvent &evt) |
Notify that a movable object LOD change event has occurred. More... | |
RenderContext * | _pauseRendering () |
Pause rendering of the frame. More... | |
void | _releaseManualHardwareResources () |
Notifies the scene manager that hardware resources were lost. More... | |
void | _renderQueueGroupObjects (RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om) |
Render the objects in a given queue group. More... | |
void | _renderVisibleObjects (void) |
Sends visible objects found in _findVisibleObjects to the rendering engine. More... | |
void | _restoreManualHardwareResources () |
Notifies the scene manager that hardware resources should be restored. More... | |
void | _resumeRendering (RenderContext *context) |
Resume rendering of the frame. More... | |
void | _setActiveCompositorChain (CompositorChain *chain) |
Sets the active compositor chain of the current scene being rendered. More... | |
void | _setDestinationRenderSystem (RenderSystem *sys) |
Notifies the scene manager of its destination render system. More... | |
const Pass * | _setPass (const Pass *pass, bool evenIfSuppressed=false, bool shadowDerivation=true) |
Internal method for setting up the renderstate for a rendering pass. More... | |
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... | |
void | addRenderObjectListener (RenderObjectListener *newListener) |
Registers a new Render Object Listener which will be notified when rendering an object. More... | |
void | addRenderQueueListener (RenderQueueListener *newListener) |
Registers a new RenderQueueListener which will be notified when render queues are processed. More... | |
void | addShadowTextureListener (ShadowTextureListener *s) |
Add a listener which will get called back on shadow texture events. More... | |
void | addSpecialCaseRenderQueue (uint8 qid) |
Adds an item to the 'special case' render queue list. More... | |
void | clearSpecialCaseRenderQueues (void) |
Clears the 'special case' render queue list. More... | |
const ColourValue & | getAmbientLight (void) const |
Returns the ambient light level to be used for the scene. 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... | |
bool | getFindVisibleObjects (void) |
Gets whether the SceneManager should search for visible objects, or whether they are being manually handled. More... | |
bool | getFlipCullingOnNegativeScale () const |
Get whether to automatically flip the culling mode on objects whenever they are negatively scaled. More... | |
const String & | getName (void) const |
Return the instance name of this SceneManager. More... | |
bool | getNormaliseNormalsOnScale () const |
SceneMgrQueuedRenderableVisitor * | getQueuedRenderableVisitor (void) const |
Gets the current visitor object which processes queued renderables. More... | |
RenderQueue * | getRenderQueue (void) |
Retrieves the internal render queue, for advanced users only. More... | |
const VisibleObjectsBoundsInfo & | getShadowCasterBoundsInfo (const Light *light, size_t iteration=0) const |
Returns the shadow caster AAB for a specific light-camera combination. More... | |
SpecialCaseRenderQueueMode | getSpecialCaseRenderQueueMode (void) |
Gets the way the special case render queue list is processed. More... | |
virtual ViewPoint | getSuggestedViewpoint (bool random=false) |
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed. More... | |
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... | |
uint8 | getWorldGeometryRenderQueue () |
Gets the render queue that the world geometry (if any) this SceneManager renders will be associated with. More... | |
virtual bool | hasOption (const String &strKey) const |
Method for verifying whether the scene manager has an implementation-specific option. More... | |
bool | isLateMaterialResolving () const |
Gets whether using late material resolving or not. More... | |
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... | |
void | manualRender (Renderable *rend, const Pass *pass, Viewport *vp, const Affine3 &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... | |
void | manualRender (RenderOperation *rend, Pass *pass, Viewport *vp, const Affine3 &worldMatrix, const Affine3 &viewMatrix, const Matrix4 &projMatrix, bool doBeginEndFrame=false) |
Manual rendering method, for advanced users only. More... | |
OGRE_MUTEX (sceneGraphMutex) | |
Mutex to protect the scene graph from simultaneous access from multiple threads. More... | |
void | removeListener (Listener *s) |
Remove a listener. More... | |
void | removeLodListener (LodListener *listener) |
Remove a level of detail listener. More... | |
void | removeRenderObjectListener (RenderObjectListener *delListener) |
Removes a listener previously added with addRenderObjectListener. More... | |
void | removeRenderQueueListener (RenderQueueListener *delListener) |
Removes a listener previously added with addRenderQueueListener. More... | |
void | removeShadowTextureListener (ShadowTextureListener *s) |
Remove a listener. More... | |
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... | |
void | setFindVisibleObjects (bool find) |
Sets whether the SceneManager should search for visible objects, or whether they are being manually handled. More... | |
void | setFlipCullingOnNegativeScale (bool n) |
Set whether to automatically flip the culling mode on objects whenever they are negatively scaled. More... | |
void | setLateMaterialResolving (bool isLate) |
Sets whether to use late material resolving or not. More... | |
void | setNormaliseNormalsOnScale (bool n) |
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... | |
void | setSpecialCaseRenderQueueMode (SpecialCaseRenderQueueMode mode) |
Sets the way the special case render queue list is processed. More... | |
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... | |
void | setWorldGeometryRenderQueue (uint8 qid) |
Sets the render queue that the world geometry (if any) this SceneManager renders will be associated with. More... | |
Camera * | getCamera (const String &name) const |
Retrieves a pointer to the named camera. More... | |
bool | hasCamera (const String &name) const |
Returns whether a camera with the given name exists. 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 | destroyAllCameras (void) |
Removes (and destroys) all cameras from the scene. More... | |
void | setCameraRelativeRendering (bool rel) |
Set whether to use camera-relative coordinates when rendering, ie to always place the camera at the origin and move the world around it. More... | |
bool | getCameraRelativeRendering () const |
Get whether to use camera-relative coordinates when rendering, ie to always place the camera at the origin and move the world around it. More... | |
CameraIterator | getCameraIterator (void) |
Returns a specialised MapIterator over all cameras in the scene. More... | |
const CameraList & | getCameras () const |
Returns a const version of the camera list. More... | |
Light * | createLight (const String &name, Light::LightTypes type) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
virtual Light * | createLight () |
Creates a light with a generated name. More... | |
Light * | createLight (Light::LightTypes type) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
const PlaneList & | getLightClippingPlanes (Light *l) |
Retrieve a set of clipping planes for a given light. More... | |
const RealRect & | getLightScissorRect (Light *l, const Camera *cam) |
Retrieve a scissor rectangle for a given light and camera. More... | |
virtual void | invalidatePerFrameScissorRectCache () |
Scissor rects are cached during frame, and this cache should be explicitly invalidated if several renders are done during one frame using different projections matrices, for example for tiled, stereo or multiview orthographic projection rendering. More... | |
void | destroyLight (Light *light) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | _notifyLightsDirty (void) |
Advanced method to increase the lights dirty counter due to lights having changed. More... | |
ulong | _getLightsDirtyCounter (void) const |
Advanced method to gets the lights dirty counter. More... | |
const LightList & | _getLightsAffectingFrustum (void) const |
Get the list of lights which could be affecting the frustum. More... | |
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... | |
void | _populateLightList (const SceneNode *sn, Real radius, LightList &destList, uint32 lightMask=0xFFFFFFFF) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
virtual SceneNode * | createSceneNode (void) |
Creates an instance of a SceneNode. More... | |
virtual SceneNode * | createSceneNode (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
SceneNode * | getRootSceneNode (void) |
Gets the SceneNode at the root of the scene hierarchy. More... | |
SceneNode * | getSceneNode (const String &name, bool throwExceptionIfNotFound=true) const |
Retrieves a named SceneNode from the scene graph. More... | |
bool | hasSceneNode (const String &name) const |
Returns whether a scene node with the given name exists. More... | |
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... | |
bool | getDisplaySceneNodes (void) const |
Returns true if all scene nodes axis are to be displayed. More... | |
void | showBoundingBoxes (bool bShow) |
Allows all bounding boxes of scene nodes to be displayed. More... | |
bool | getShowBoundingBoxes () const |
Returns if all bounding boxes of scene nodes are to be displayed. More... | |
DebugDrawer * | getDebugDrawer () const |
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... | |
Entity * | createEntity (const String &entityName, const MeshPtr &pMesh) |
Create an Entity (instance of a discrete mesh). More... | |
Entity * | createEntity (const String &meshName) |
Create an Entity (instance of a discrete mesh) with an autogenerated name. More... | |
Entity * | createEntity (const MeshPtr &pMesh) |
Create an Entity (instance of a discrete mesh) with an autogenerated name. More... | |
Entity * | createEntity (const String &entityName, PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes. More... | |
Entity * | createEntity (PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes, generating the name. More... | |
Entity * | getEntity (const String &name) const |
Get a reference to a previously created object instance. More... | |
bool | hasEntity (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
void | destroyEntity (MovableObject *ent) |
Removes & destroys an Entity from the SceneManager. More... | |
void | destroyEntity (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
virtual void | destroyAllEntities (void) |
Removes & destroys all Entities. More... | |
ManualObject * | createManualObject (const String &name) |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface. More... | |
ManualObject * | createManualObject () |
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface, generating the name. More... | |
ManualObject * | getManualObject (const String &name) const |
Get a reference to a previously created object instance. More... | |
bool | hasManualObject (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
void | destroyManualObject (MovableObject *obj) |
Removes & destroys a ManualObject from the SceneManager. More... | |
void | destroyManualObject (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyAllManualObjects (void) |
Removes & destroys all ManualObjects from the SceneManager. More... | |
Rectangle2D * | createScreenSpaceRect (const String &name, bool includeTextureCoords=false) |
Creates a Rectangle2D that can be displayed for screen space effects or showing a basic GUI. More... | |
Rectangle2D * | createScreenSpaceRect (bool includeTextureCoords=false) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
bool | hasScreenSpaceRect (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
Rectangle2D * | getScreenSpaceRect (const String &name) const |
Get a reference to a previously created object instance. More... | |
BillboardChain * | createBillboardChain (const String &name) |
Create a BillboardChain, an object which you can use to render a linked chain of billboards. More... | |
BillboardChain * | createBillboardChain () |
Create a BillboardChain, an object which you can use to render a linked chain of billboards, with a generated name. More... | |
BillboardChain * | getBillboardChain (const String &name) const |
Get a reference to a previously created object instance. More... | |
bool | hasBillboardChain (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
void | destroyBillboardChain (MovableObject *obj) |
Removes & destroys a BillboardChain from the SceneManager. More... | |
void | destroyBillboardChain (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyAllBillboardChains (void) |
Removes & destroys all BillboardChains from the SceneManager. More... | |
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... | |
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... | |
RibbonTrail * | getRibbonTrail (const String &name) const |
Get a reference to a previously created object instance. More... | |
bool | hasRibbonTrail (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
void | destroyRibbonTrail (MovableObject *obj) |
Removes & destroys a RibbonTrail from the SceneManager. More... | |
void | destroyRibbonTrail (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyAllRibbonTrails (void) |
Removes & destroys all RibbonTrails from the SceneManager. More... | |
ParticleSystem * | createParticleSystem (const String &name, const String &templateName) |
Creates a particle system based on a template. More... | |
ParticleSystem * | createParticleSystem (const String &name, size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
Create a blank particle system. More... | |
ParticleSystem * | createParticleSystem (size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
ParticleSystem * | getParticleSystem (const String &name) const |
Get a reference to a previously created object instance. More... | |
bool | hasParticleSystem (const String &name) const |
Returns whether a object instance with the given name exists. More... | |
void | destroyParticleSystem (MovableObject *obj) |
Removes & destroys a ParticleSystem from the SceneManager. More... | |
void | destroyParticleSystem (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyAllParticleSystems (void) |
Removes & destroys all ParticleSystems from the SceneManager. 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=BLANKSTRING) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. 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=BLANKSTRING) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
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::AUTODETECT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky plane' i.e. More... | |
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::AUTODETECT_RESOURCE_GROUP_NAME) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | setSkyPlaneEnabled (bool enable) |
Enables / disables a 'sky plane'. More... | |
bool | isSkyPlaneEnabled (void) const |
Return whether a key plane is enabled. More... | |
SceneNode * | getSkyPlaneNode (void) const |
Get the sky plane node, if enabled. More... | |
const SkyPlaneGenParameters & | getSkyPlaneGenParameters (void) const |
Get the parameters used to construct the SkyPlane, if any. More... | |
void | setSkyBox (bool enable, const String &materialName, Real distance=5000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky box' i.e. More... | |
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::AUTODETECT_RESOURCE_GROUP_NAME) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | setSkyBoxEnabled (bool enable) |
Enables / disables a 'sky box'. More... | |
bool | isSkyBoxEnabled (void) const |
Return whether a skybox is enabled. More... | |
SceneNode * | getSkyBoxNode (void) const |
Get the skybox node, if enabled. More... | |
const SkyBoxGenParameters & | getSkyBoxGenParameters (void) const |
Get the parameters used to generate the current SkyBox, if any. More... | |
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::AUTODETECT_RESOURCE_GROUP_NAME) |
Enables / disables a 'sky dome' i.e. More... | |
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::AUTODETECT_RESOURCE_GROUP_NAME) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | setSkyDomeEnabled (bool enable) |
Enables / disables a 'sky dome'. More... | |
bool | isSkyDomeEnabled (void) const |
Return whether a skydome is enabled. More... | |
SceneNode * | getSkyDomeNode (void) const |
Get the sky dome node, if enabled. More... | |
const SkyDomeGenParameters & | getSkyDomeGenParameters (void) const |
Get the parameters used to generate the current SkyDome, if any. More... | |
void | setFog (FogMode mode=FOG_NONE, const ColourValue &colour=ColourValue::White, Real expDensity=0.001f, Real linearStart=0.0f, Real linearEnd=1.0f) |
Sets the fogging mode applied to the scene. More... | |
FogMode | getFogMode (void) const |
Returns the fog mode for the scene. More... | |
const ColourValue & | getFogColour (void) const |
Returns the fog colour for the scene. More... | |
Real | getFogStart (void) const |
Returns the fog start distance for the scene. More... | |
Real | getFogEnd (void) const |
Returns the fog end distance for the scene. More... | |
Real | getFogDensity (void) const |
Returns the fog density for the scene. More... | |
BillboardSet * | createBillboardSet (unsigned int poolSize=20) |
Creates a new BillboardSet for use with this scene manager. More... | |
BillboardSet * | createBillboardSet (const String &name, unsigned int poolSize=20) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
BillboardSet * | getBillboardSet (const String &name) const |
Retrieves a pointer to the named BillboardSet. More... | |
bool | hasBillboardSet (const String &name) const |
Returns whether a billboardset with the given name exists. More... | |
void | destroyBillboardSet (MovableObject *set) |
Removes & destroys an BillboardSet from the SceneManager. More... | |
void | destroyBillboardSet (const String &name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyAllBillboardSets (void) |
Removes & destroys all BillboardSets. More... | |
void | _applySceneAnimations (void) |
Internal method for applying animations to scene nodes. More... | |
Animation * | createAnimation (const String &name, Real length) |
Creates an animation which can be used to animate scene nodes. More... | |
Animation * | getAnimation (const String &name) const |
Looks up an Animation object previously created with createAnimation. More... | |
bool | hasAnimation (const String &name) const |
Returns whether an animation with the given name exists. More... | |
void | destroyAnimation (const String &name) |
Destroys an Animation. More... | |
void | destroyAllAnimations (void) |
Removes all animations created using this SceneManager. More... | |
AnimationState * | createAnimationState (const String &animName) |
Create an AnimationState object for managing application of animations. More... | |
AnimationState * | getAnimationState (const String &animName) const |
Retrieves animation state as previously created using createAnimationState. More... | |
bool | hasAnimationState (const String &name) const |
Returns whether an animation state with the given name exists. More... | |
void | destroyAnimationState (const String &name) |
Destroys an AnimationState. More... | |
void | destroyAllAnimationStates (void) |
Removes all animation states created using this SceneManager. 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... | |
AnimationStateIterator | getAnimationStateIterator (void) |
Returns a specialised MapIterator over all animation states in the scene. More... | |
const AnimationStateMap & | getAnimationStates () |
Returns a specialised Map over all animation states in the scene. More... | |
void | destroyQuery (SceneQuery *query) |
Destroys a scene query of any type. More... | |
void | setShadowTechnique (ShadowTechnique technique) |
Sets the general shadow technique to be used in this scene. More... | |
ShadowTechnique | getShadowTechnique (void) const |
Gets the current shadow technique. More... | |
void | setShowDebugShadows (bool debug) |
Enables / disables the rendering of debug information for shadows. More... | |
bool | getShowDebugShadows (void) const |
Are debug shadows shown? More... | |
void | setShadowColour (const ColourValue &colour) |
Set the colour used to modulate areas in shadow. More... | |
const ColourValue & | getShadowColour (void) const |
Get the colour used to modulate areas in shadow. More... | |
void | setShadowDirectionalLightExtrusionDistance (Real dist) |
Sets the distance a shadow volume is extruded for a directional light. More... | |
Real | getShadowDirectionalLightExtrusionDistance (void) const |
Gets the distance a shadow volume is extruded for a directional light. More... | |
void | setShadowFarDistance (Real distance) |
Sets the default maximum distance away from the camera that shadows will be visible. More... | |
Real | getShadowFarDistance (void) const |
Gets the default maximum distance away from the camera that shadows will be visible. More... | |
Real | getShadowFarDistanceSquared (void) const |
void | setShadowIndexBufferSize (size_t size) |
Sets the maximum size of the index buffer used to render shadow primitives. More... | |
size_t | getShadowIndexBufferSize (void) const |
Get the size of the shadow index buffer. More... | |
const ShadowCameraSetupPtr & | getShadowCameraSetup () const |
Get the shadow camera setup in use for all lights which don't have their own shadow camera setup. More... | |
void | setShadowUseInfiniteFarPlane (bool enable) |
Sets whether we should use an infinite camera far plane when rendering stencil shadows. More... | |
bool | isShadowTechniqueStencilBased (void) const |
Is there a stencil shadow based shadowing technique in use? More... | |
bool | isShadowTechniqueTextureBased (void) const |
Is there a texture shadow based shadowing technique in use? More... | |
bool | isShadowTechniqueModulative (void) const |
Is there a modulative shadowing technique in use? More... | |
bool | isShadowTechniqueAdditive (void) const |
Is there an additive shadowing technique in use? More... | |
bool | isShadowTechniqueIntegrated (void) const |
Is the shadow technique integrated into primary materials? More... | |
bool | isShadowTechniqueInUse (void) const |
Is there any shadowing technique in use? More... | |
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... | |
bool | getShadowUseLightClipPlanes () const |
Gets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering. More... | |
void | setShadowTextureSize (unsigned short size) |
Set the size of the texture used for all texture-based shadows. More... | |
void | setShadowTextureConfig (size_t shadowIndex, uint16 width, uint16 height, PixelFormat format, uint16 fsaa=0, uint16 depthBufferPoolId=1) |
Set the detailed configuration for a shadow texture. More... | |
void | setShadowTextureConfig (size_t shadowIndex, const ShadowTextureConfig &config) |
Set the detailed configuration for a shadow texture. More... | |
const ShadowTextureConfigList & | getShadowTextureConfigList () const |
Get the current shadow texture settings. More... | |
ConstShadowTextureConfigIterator | getShadowTextureConfigIterator () const |
void | setShadowTexturePixelFormat (PixelFormat fmt) |
Set the pixel format of the textures used for texture-based shadows. More... | |
void | setShadowTextureFSAA (unsigned short fsaa) |
Set the level of multisample AA of the textures used for texture-based shadows. More... | |
void | setShadowTextureCount (size_t count) |
Set the number of textures allocated for texture-based shadows. More... | |
size_t | getShadowTextureCount (void) const |
void | setShadowTextureCountPerLightType (Light::LightTypes type, size_t count) |
Set the number of shadow textures a light type uses. More... | |
size_t | getShadowTextureCountPerLightType (Light::LightTypes type) const |
Get the number of shadow textures is assigned for the given light type. More... | |
void | setShadowTextureSettings (uint16 size, uint16 count, PixelFormat fmt=PF_BYTE_RGBA, uint16 fsaa=0, uint16 depthBufferPoolId=1) |
Sets the size and count of textures used in texture-based shadows. More... | |
const TexturePtr & | getShadowTexture (size_t shadowIndex) |
Get a reference to the shadow texture currently in use at the given index. More... | |
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... | |
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... | |
void | setShadowTextureFadeStart (Real fadeStart) |
Sets the proportional distance at which texture shadows begin to fade out. More... | |
void | setShadowTextureFadeEnd (Real fadeEnd) |
Sets the proportional distance at which texture shadows finish to fading out. More... | |
void | setShadowTextureSelfShadow (bool selfShadow) |
Sets whether or not texture shadows should attempt to self-shadow. More... | |
bool | getShadowTextureSelfShadow (void) const |
Gets whether or not texture shadows attempt to self-shadow. More... | |
void | setShadowTextureCasterMaterial (const MaterialPtr &mat) |
Sets the default material to use for rendering shadow casters. More... | |
void | setShadowTextureReceiverMaterial (const MaterialPtr &mat) |
Sets the default material to use for rendering shadow receivers. More... | |
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... | |
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... | |
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... | |
StaticGeometry * | createStaticGeometry (const String &name) |
Creates a StaticGeometry instance suitable for use with this SceneManager. More... | |
StaticGeometry * | getStaticGeometry (const String &name) const |
Retrieve a previously created StaticGeometry instance. More... | |
bool | hasStaticGeometry (const String &name) const |
Returns whether a static geometry instance with the given name exists. More... | |
void | destroyStaticGeometry (StaticGeometry *geom) |
Remove & destroy a StaticGeometry instance. More... | |
void | destroyStaticGeometry (const String &name) |
Remove & destroy a StaticGeometry instance. More... | |
void | destroyAllStaticGeometry (void) |
Remove & destroy all StaticGeometry instances. More... | |
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... | |
InstanceManager * | getInstanceManager (const String &managerName) const |
Retrieves an existing InstanceManager by it's name. More... | |
bool | hasInstanceManager (const String &managerName) const |
Returns whether an InstanceManager with the given name exists. More... | |
void | destroyInstanceManager (const String &name) |
Destroys an InstanceManager if it was created with createInstanceManager() More... | |
void | destroyInstanceManager (InstanceManager *instanceManager) |
void | destroyAllInstanceManagers (void) |
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) |
InstancedEntity * | createInstancedEntity (const String &materialName, const String &managerName) |
Creates an InstancedEntity based on an existing InstanceManager. More... | |
void | destroyInstancedEntity (InstancedEntity *instancedEntity) |
Removes an InstancedEntity,. 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... | |
MovableObject * | createMovableObject (const String &name, const String &typeName, const NameValuePairList *params=0) |
Create a movable object of the type specified. More... | |
MovableObject * | createMovableObject (const String &typeName, const NameValuePairList *params=0) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | destroyMovableObject (const String &name, const String &typeName) |
Destroys a MovableObject with the name specified, of the type specified. More... | |
void | destroyMovableObject (MovableObject *m) |
Destroys a MovableObject. More... | |
void | destroyAllMovableObjectsByType (const String &typeName) |
Destroy all MovableObjects of a given type. More... | |
void | destroyAllMovableObjects (void) |
Destroy all MovableObjects. More... | |
MovableObject * | getMovableObject (const String &name, const String &typeName) const |
Get a reference to a previously created object instance. More... | |
bool | hasMovableObject (const String &name, const String &typeName) const |
Returns whether a object instance with the given name exists. More... | |
const MovableObjectMap & | getMovableObjects (const String &typeName) |
Get all MovableObect instances of a given type. More... | |
MovableObjectIterator | getMovableObjectIterator (const String &typeName) |
void | injectMovableObject (MovableObject *m) |
Inject a MovableObject instance created externally. More... | |
void | extractMovableObject (const String &name, const String &typeName) |
Extract a previously injected MovableObject. More... | |
void | extractMovableObject (MovableObject *m) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
void | extractAllMovableObjectsByType (const String &typeName) |
Extract all injected MovableObjects of a given type. More... | |
Public Member Functions inherited from Ogre::ShadowTextureListener | |
ShadowTextureListener () | |
virtual | ~ShadowTextureListener () |
virtual void | shadowTextureReceiverPreViewProj (Light *light, Frustum *frustum) |
This event occurs just before the view & projection matrices are set for re-rendering a shadow receiver. More... | |
virtual void | shadowTexturesUpdated (size_t numberOfShadowTextures) |
Event raised after all shadow textures have been rendered into for all queues / targets but before any other geometry has been rendered (including main scene geometry and any additional shadow receiver passes). More... | |
virtual bool | sortLightsAffectingFrustum (LightList &lightList) |
Hook to allow the listener to override the ordering of lights for the entire frustum. More... | |
Specialized SceneManager that uses Portal-Connected-Zones to divide the scene spatially.
ZoneMap iterator for read-only access to the zonemap.
Ogre::PCZSceneManager::PCZSceneManager | ( | const String & | name | ) |
Standard Constructor.
Ogre::PCZSceneManager::~PCZSceneManager | ( | ) |
Standard destructor.
|
overridevirtual |
Retrieve the type name of this scene manager.
Implements Ogre::SceneManager.
void Ogre::PCZSceneManager::init | ( | const String & | defaultZoneTypeName, |
const String & | filename = "none" |
||
) |
Initializes the manager.
Portal* Ogre::PCZSceneManager::createPortal | ( | const String & | name, |
PortalBase::PORTAL_TYPE | type = PortalBase::PORTAL_TYPE_QUAD |
||
) |
Create a new portal instance.
void Ogre::PCZSceneManager::destroyPortal | ( | Portal * | p | ) |
Delete a portal instance by pointer.
void Ogre::PCZSceneManager::destroyPortal | ( | const String & | portalName | ) |
Delete a portal instance by name.
AntiPortal* Ogre::PCZSceneManager::createAntiPortal | ( | const String & | name, |
PortalBase::PORTAL_TYPE | type = PortalBase::PORTAL_TYPE_QUAD |
||
) |
Create a new anti portal instance.
void Ogre::PCZSceneManager::destroyAntiPortal | ( | AntiPortal * | p | ) |
Delete a anti portal instance by pointer.
void Ogre::PCZSceneManager::destroyAntiPortal | ( | const String & | portalName | ) |
Delete a anti portal instance by name.
PCZone* Ogre::PCZSceneManager::createZoneFromFile | ( | const String & | zoneTypeName, |
const String & | zoneName, | ||
PCZSceneNode * | parentNode, | ||
const String & | filename | ||
) |
Create a zone from a file (type of file depends on the zone type.
|
virtual |
Set the "main" geometry of the zone.
|
overridevirtual |
Subclasses can override this to ensure their specialised SceneNode is used.
Reimplemented from Ogre::SceneManager.
Subclasses can override this to ensure their specialised SceneNode is used.
Reimplemented from Ogre::SceneManager.
Creates a specialized PCZCamera.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Deletes a scene node by name & corresponding PCZSceneNode.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Deletes a scene node & corresponding PCZSceneNode.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Overridden to clean up zones.
Reimplemented from Ogre::SceneManager.
void Ogre::PCZSceneManager::setWorldGeometryRenderQueue | ( | uint8 | qid | ) |
Overridden from SceneManager.
|
overridevirtual |
Overridden from basic scene manager.
Reimplemented from Ogre::SceneManager.
void Ogre::PCZSceneManager::enableSky | ( | bool | ) |
Enable/disable sky rendering.
void Ogre::PCZSceneManager::setSkyZone | ( | PCZone * | zone | ) |
Set the zone which contains the sky node.
|
overridevirtual |
Update Scene Graph (does several things now)
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Recurses through the PCZTree determining which nodes are visible.
Reimplemented from Ogre::SceneManager.
|
virtual |
Alerts each unculled object, notifying it that it will be drawn.
Useful for doing calculations only on nodes that will be drawn, prior to drawing them...
Creates a light for use in the scene.
name | The name of the new light, to identify it later. |
Reimplemented from Ogre::SceneManager.
Returns a pointer to the named Light which has previously been added to the scene.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Returns whether a light with the given name exists.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Removes the named light from the scene and destroys it.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Removes and destroys all lights in the scene.
Reimplemented from Ogre::SceneManager.
void Ogre::PCZSceneManager::_updatePortalZoneData | ( | void | ) |
Check/Update the zone data for every portal in the scene.
Essentially, this routine checks each portal for intersections with other portals and updates if a crossing occurs
void Ogre::PCZSceneManager::_dirtyNodeByMovingPortals | ( | void | ) |
Mark nodes dirty for every zone with moving portal in the scene.
void Ogre::PCZSceneManager::_updatePCZSceneNodes | ( | void | ) |
Update the PCZSceneNodes.
void Ogre::PCZSceneManager::_calcZonesAffectedByLights | ( | Camera * | cam | ) |
Calculate which zones are affected by each light.
void Ogre::PCZSceneManager::connectPortalsToTargetZonesByLocation | ( | void | ) |
void Ogre::PCZSceneManager::_updatePCZSceneNode | ( | PCZSceneNode * | ) |
void Ogre::PCZSceneManager::removeSceneNode | ( | SceneNode * | ) |
Removes the given PCZSceneNode.
void Ogre::PCZSceneManager::addPCZSceneNode | ( | PCZSceneNode * | sn, |
PCZone * | zone | ||
) |
add a PCZSceneNode to the scene by putting it in a zone NOTE: This zone will be the scene node's home zone
Create a zone with the given name
void Ogre::PCZSceneManager::destroyZone | ( | PCZone * | zone, |
bool | destroySceneNodes | ||
) |
Destroy an existing zone within the scene.
void Ogre::PCZSceneManager::_updateHomeZone | ( | PCZSceneNode * | , |
bool | |||
) |
Make sure the home zone for the PCZSceneNode is up-to-date.
Find the smallest zone which contains the point.
void Ogre::PCZSceneManager::createZoneSpecificNodeData | ( | PCZSceneNode * | ) |
Create any zone-specific data necessary for all zones for the given node.
void Ogre::PCZSceneManager::createZoneSpecificNodeData | ( | PCZone * | ) |
Create any zone-specific data necessary for all nodes for the given zone.
Set the home zone for a scene node.
void Ogre::PCZSceneManager::findNodesIn | ( | const AxisAlignedBox & | box, |
PCZSceneNodeList & | list, | ||
PCZone * | startZone, | ||
PCZSceneNode * | exclude = 0 |
||
) |
Recurses the scene, adding any nodes intersecting with the box into the given list.
It ignores the exclude scene node.
void Ogre::PCZSceneManager::findNodesIn | ( | const Sphere & | sphere, |
PCZSceneNodeList & | list, | ||
PCZone * | startZone, | ||
PCZSceneNode * | start = 0 |
||
) |
Recurses the scene, adding any nodes intersecting with the sphere into the given list.
It will start in the start SceneNode if given, otherwise, it will start at the root node.
void Ogre::PCZSceneManager::findNodesIn | ( | const PlaneBoundedVolume & | volume, |
PCZSceneNodeList & | list, | ||
PCZone * | startZone, | ||
PCZSceneNode * | start = 0 |
||
) |
Recurses the PCZTree, adding any nodes intersecting with the volume into the given list.
It will start in the start SceneNode if given, otherwise, it will start at the root node.
void Ogre::PCZSceneManager::findNodesIn | ( | const Ray & | ray, |
PCZSceneNodeList & | list, | ||
PCZone * | startZone, | ||
PCZSceneNode * | start = 0 |
||
) |
Recurses the scene, starting in the given startZone, adding any nodes intersecting with the ray into the given list.
It will start in the start SceneNode if given, otherwise, it will start at the root node.
|
inline |
Get the default zone.
|
inline |
Sets the portal visibility flag.
|
overridevirtual |
Sets the given option for the SceneManager.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
Gets the given option for the Scene Manager.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
overridevirtual |
Overridden from SceneManager.
Reimplemented from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
overridevirtual |
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 from Ogre::SceneManager.
|
inline |
void Ogre::PCZSceneManager::_clearAllZonesPortalUpdateFlag | ( | void | ) |
Clear portal update flag from all zones.
|
overridevirtual |
Reimplemented from Ogre::SceneManager.