#include <OgreSceneManager.h>
Inheritance diagram for Ogre::SceneManager:
Public Types | |
typedef MapIterator< SceneLightList > | LightIterator |
typedef MapIterator< EntityList > | EntityIterator |
typedef MapIterator< CameraList > | CameraIterator |
typedef MapIterator< BillboardSetList > | BillboardSetIterator |
typedef MapIterator< AnimationList > | AnimationIterator |
enum | IlluminationRenderStage { IRS_NONE, IRS_AMBIENT, IRS_PER_LIGHT, IRS_DECAL, IRS_RENDER_TO_TEXTURE, IRS_RENDER_MODULATIVE_PASS } |
Describes the stage of rendering when performing complex illumination. More... | |
enum | PrefabType { PT_PLANE } |
Prefab shapes available without loading a model. More... | |
Public Methods | |
SceneManager () | |
Default constructor. | |
virtual | ~SceneManager () |
Default destructor. | |
virtual Camera * | createCamera (const String &name) |
Creates a camera to be managed by this scene manager. | |
virtual Camera * | getCamera (const String &name) |
Retrieves a pointer to the named camera. | |
virtual void | removeCamera (Camera *cam) |
Removes a camera from the scene. | |
virtual void | removeCamera (const String &name) |
Removes a camera from the scene. | |
virtual void | removeAllCameras (void) |
Removes (and destroys) all cameras from the scene. | |
virtual Light * | createLight (const String &name) |
Creates a light for use in the scene. | |
virtual Light * | getLight (const String &name) |
Returns a pointer to the named Light which has previously been added to the scene. | |
virtual void | removeLight (const String &name) |
Removes the named light from the scene and destroys it. | |
virtual void | removeLight (Light *light) |
Removes the light from the scene and destroys it based on a pointer. | |
virtual void | removeAllLights (void) |
Removes and destroys all lights in the scene. | |
virtual void | _populateLightList (const Vector3 &position, Real radius, LightList &destList) |
Populate a light list with an ordered set of the lights which are closest to the position specified. | |
virtual Material * | createMaterial (const String &name) |
Creates a new material with default settings with the specified name. | |
virtual Material * | getDefaultMaterialSettings (void) |
Returns a pointer to the default Material settings. | |
virtual Material * | getMaterial (const String &name) |
Gets a reference to a named Material. | |
virtual Material * | getMaterial (int handle) |
Gets a reference to a material by it's numerical handle. | |
virtual SceneNode * | createSceneNode (void) |
Creates an instance of a SceneNode. | |
virtual SceneNode * | createSceneNode (const String &name) |
Creates an instance of a SceneNode with a given name. | |
virtual void | destroySceneNode (const String &name) |
Destroys a SceneNode with a given name. | |
virtual SceneNode * | getRootSceneNode (void) const |
Gets the SceneNode at the root of the scene hierarchy. | |
virtual SceneNode * | getSceneNode (const String &name) const |
Retrieves a named SceneNode from the scene graph. | |
virtual Entity * | createEntity (const String &entityName, const String &meshName) |
Create an Entity (instance of a discrete mesh). | |
virtual Entity * | createEntity (const String &entityName, PrefabType ptype) |
Create an Entity (instance of a discrete mesh) from a range of prefab shapes. | |
virtual Entity * | getEntity (const String &name) |
Retrieves a pointer to the named Entity. | |
virtual void | removeEntity (Entity *ent) |
Removes & destroys an Entity from the SceneManager. | |
virtual void | removeEntity (const String &name) |
Removes & destroys an Entity from the SceneManager by name. | |
virtual void | removeAllEntities (void) |
Removes & destroys all Entities. | |
virtual void | clearScene (void) |
Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc. | |
void | setAmbientLight (const ColourValue &colour) |
Sets the ambient light level to be used for the scene. | |
const ColourValue & | getAmbientLight (void) const |
Returns the ambient light level to be used for the scene. | |
virtual void | setWorldGeometry (const String &filename) |
Sets the source of the 'world' geometry, i.e. | |
virtual ViewPoint | getSuggestedViewpoint (bool random=false) |
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed. | |
virtual bool | setOption (const String &strKey, const void *pValue) |
Method for setting a specific option of the Scene Manager. | |
virtual bool | getOption (const String &strKey, void *pDestValue) |
Method for getting the value of an implementation-specific Scene Manager option. | |
virtual bool | hasOption (const String &strKey) const |
Method for verifying wether the scene manager has an implementation-specific option. | |
virtual bool | getOptionValues (const String &strKey, std::list< SDDataChunk > &refValueList) |
Method for getting all possible values for a specific option. | |
virtual bool | getOptionKeys (std::list< String > &refKeys) |
Method for getting all the implementation-specific options of the scene manager. | |
virtual void | _updateSceneGraph (Camera *cam) |
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class. | |
virtual void | _findVisibleObjects (Camera *cam, bool onlyShadowCasters) |
Internal method which parses the scene to find visible objects to render. | |
virtual void | _applySceneAnimations (void) |
Internal method for applying animations to scene nodes. | |
virtual void | _renderVisibleObjects (void) |
Sends visible objects found in _findVisibleObjects to the rendering engine. | |
virtual void | _renderScene (Camera *camera, Viewport *vp, bool includeOverlays) |
Prompts the class to send its contents to the renderer. | |
virtual void | _queueSkiesForRendering (Camera *cam) |
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome. | |
virtual void | _setDestinationRenderSystem (RenderSystem *sys) |
Notifies the scene manager of its destination render system. | |
virtual void | setSkyPlane (bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, bool drawFirst=true, Real bow=0, int xsegments=1, int ysegments=1) |
Enables / disables a 'sky plane' i.e. | |
virtual void | setSkyBox (bool enable, const String &materialName, Real distance=5000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY) |
Enables / disables a 'sky box' i.e. | |
virtual void | setSkyDome (bool enable, const String &materialName, Real curvature=10, Real tiling=8, Real distance=4000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY, int xsegments=16, int ysegments=16, int ysegments_keep=-1) |
Enables / disables a 'sky dome' i.e. | |
void | setFog (FogMode mode=FOG_NONE, const ColourValue &colour=ColourValue::White, Real expDensity=0.001, Real linearStart=0.0, Real linearEnd=1.0) |
Sets the fogging mode applied to the scene. | |
virtual FogMode | getFogMode (void) const |
Returns the fog mode for the scene. | |
virtual const ColourValue & | getFogColour (void) const |
Returns the fog colour for the scene. | |
virtual Real | getFogStart (void) const |
Returns the fog start distance for the scene. | |
virtual Real | getFogEnd (void) const |
Returns the fog end distance for the scene. | |
virtual Real | getFogDensity (void) const |
Returns the fog density for the scene. | |
virtual BillboardSet * | createBillboardSet (const String &name, unsigned int poolSize=20) |
Creates a new BillboardSet for use with this scene manager. | |
virtual BillboardSet * | getBillboardSet (const String &name) |
Retrieves a pointer to the named BillboardSet. | |
virtual void | removeBillboardSet (BillboardSet *set) |
Removes & destroys an BillboardSet from the SceneManager. | |
virtual void | removeBillboardSet (const String &name) |
Removes & destroys an BillboardSet from the SceneManager by name. | |
virtual void | removeAllBillboardSets (void) |
Removes & destroys all BillboardSets. | |
virtual void | setDisplaySceneNodes (bool display) |
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene. | |
virtual Animation * | createAnimation (const String &name, Real length) |
Creates an animation which can be used to animate scene nodes. | |
virtual Animation * | getAnimation (const String &name) const |
Looks up an Animation object previously created with createAnimation. | |
virtual void | destroyAnimation (const String &name) |
Destroys an Animation. | |
virtual void | destroyAllAnimations (void) |
Removes all animations created using this SceneManager. | |
virtual AnimationState * | createAnimationState (const String &animName) |
Create an AnimationState object for managing application of animations. | |
virtual AnimationState * | getAnimationState (const String &animName) |
Retrieves animation state as previously created using createAnimationState. | |
virtual void | destroyAnimationState (const String &name) |
Destroys an AnimationState. | |
virtual void | destroyAllAnimationStates (void) |
Removes all animation states created using this SceneManager. | |
virtual void | manualRender (RenderOperation *rend, Pass *pass, Viewport *vp, const Matrix4 &worldMatrix, const Matrix4 &viewMatrix, const Matrix4 &projMatrix, bool doBeginEndFrame=false) |
Manual rendering method, for advanced users only. | |
virtual Overlay * | createOverlay (const String &name, ushort zorder=100) |
Creates a new Overlay. | |
virtual Overlay * | getOverlay (const String &name) |
Gets a pointer to the named Overlay, previously created using createOverlay. | |
virtual void | destroyOverlay (const String &name) |
Destroys the named Overlay. | |
virtual void | destroyAllOverlays (void) |
Destroys all the overlays. | |
virtual void | addRenderQueueListener (RenderQueueListener *newListener) |
Registers a new RenderQueueListener which will be notified when render queues are processed. | |
virtual void | removeRenderQueueListener (RenderQueueListener *delListener) |
Removes a listener previously added with addRenderQueueListener. | |
void | showBoundingBoxes (bool bShow) |
Allows all bounding boxes of scene nodes to be displayed. | |
bool | getShowBoundingBoxes () const |
Returns if all bounding boxes of scene nodes are to be displayed. | |
void | _notifyAutotrackingSceneNode (SceneNode *node, bool autoTrack) |
Internal method for notifying the manager that a SceneNode is autotracking. | |
virtual AxisAlignedBoxSceneQuery * | createAABBQuery (const AxisAlignedBox &box, unsigned long mask=0xFFFFFFFF) |
Creates an AxisAlignedBoxSceneQuery for this scene manager. | |
virtual SphereSceneQuery * | createSphereQuery (const Sphere &sphere, unsigned long mask=0xFFFFFFFF) |
Creates a SphereSceneQuery for this scene manager. | |
virtual PlaneBoundedVolumeListSceneQuery * | createPlaneBoundedVolumeQuery (const PlaneBoundedVolumeList &volumes, unsigned long mask=0xFFFFFFFF) |
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager. | |
virtual RaySceneQuery * | createRayQuery (const Ray &ray, unsigned long mask=0xFFFFFFFF) |
Creates a RaySceneQuery for this scene manager. | |
virtual IntersectionSceneQuery * | createIntersectionQuery (unsigned long mask=0xFFFFFFFF) |
Creates an IntersectionSceneQuery for this scene manager. | |
virtual void | destroyQuery (SceneQuery *query) |
Destroys a scene query of any type. | |
LightIterator | getLightIterator (void) |
Returns a specialised MapIterator over all lights in the scene. | |
EntityIterator | getEntityIterator (void) |
Returns a specialised MapIterator over all entities in the scene. | |
CameraIterator | getCameraIterator (void) |
Returns a specialised MapIterator over all cameras in the scene. | |
BillboardSetIterator | getBillboardSetIterator (void) |
Returns a specialised MapIterator over all BillboardSets in the scene. | |
AnimationIterator | getAnimationIterator (void) |
Returns a specialised MapIterator over all animations in the scene. | |
AnimationStateIterator | getAnimationStateIterator (void) |
Returns a specialised MapIterator over all animation states in the scene. | |
virtual void | setShadowTechnique (ShadowTechnique technique) |
Sets the general shadow technique to be used in this scene. | |
virtual ShadowTechnique | getShadowTechnique (void) const |
Gets the current shadow technique. | |
virtual void | setShowDebugShadows (bool debug) |
Enables / disables the rendering of debug information for shadows. | |
virtual bool | getShowDebugShadows (void) const |
Are debug shadows shown? | |
virtual void | setShadowColour (const ColourValue &colour) |
Set the colour used to modulate areas in shadow. | |
virtual const ColourValue & | getShadowColour (void) const |
Get the colour used to modulate areas in shadow. | |
virtual void | setShadowDirectionalLightExtrusionDistance (Real dist) |
Sets the distance a shadow volume is extruded for a directional light. | |
virtual Real | getShadowDirectionalLightExtrusionDistance (void) const |
Gets the distance a shadow volume is extruded for a directional light. | |
virtual void | setShadowFarDistance (Real distance) |
Sets the maximum distance away from the camera that shadows will be visible. | |
virtual Real | getShadowFarDistance (void) const |
Gets the maximum distance away from the camera that shadows will be visible. | |
virtual void | setShadowIndexBufferSize (size_t size) |
Sets the maximum size of the index buffer used to render shadow primitives. | |
virtual size_t | getShadowIndexBufferSize (void) const |
Get the size of the shadow index buffer. | |
virtual void | setShadowTextureSize (unsigned short size) |
Set the size of the texture used for texture-based shadows. | |
unsigned short | getShadowTextureSize (void) const |
Get the size of the texture used for texture based shadows. | |
virtual void | setShadowTextureCount (unsigned short count) |
Set the number of textures allocated for texture-based shadows. | |
unsigned short | getShadowTextureCount (void) const |
Get the number of the textures allocated for texture based shadows. | |
virtual void | setShadowTextureSettings (unsigned short size, unsigned short count) |
Sets the size and count of textures used in texture-based shadows. | |
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. | |
virtual void | setShadowTextureFadeStart (Real fadeStart) |
Sets the proportional distance at which texture shadows begin to fade out. | |
virtual void | setShadowTextureFadeEnd (Real fadeEnd) |
Sets the proportional distance at which texture shadows finish to fading out. | |
virtual void | setShadowUseInfiniteFarPlane (bool enable) |
Sets whether we should use an inifinite camera far plane when rendering stencil shadows. | |
Protected Types | |
typedef std::map< std::string, Camera *, std::less< std::string > > | CameraList |
typedef std::map< std::string, Light *, std::less< std::string > > | SceneLightList |
typedef std::map< std::string, Entity *, std::less< std::string > > | EntityList |
typedef std::map< std::string, BillboardSet *, std::less< std::string > > | BillboardSetList |
typedef std::map< String, SceneNode * > | SceneNodeList |
typedef std::set< SceneNode * > | AutoTrackingSceneNodes |
Autotracking scene nodes. | |
typedef std::map< String, Animation * > | AnimationList |
Storage of animations, lookup by name. | |
typedef std::vector< RenderQueueListener * > | RenderQueueListenerList |
typedef std::vector< RenderTexture * > | ShadowTextureList |
typedef std::vector< ShadowCaster * > | ShadowCasterList |
enum | BoxPlane { BP_FRONT = 0, BP_BACK = 1, BP_LEFT = 2, BP_RIGHT = 3, BP_UP = 4, BP_DOWN = 5 } |
Protected Methods | |
virtual void | initRenderQueue (void) |
Internal method for initialising the render queue. | |
virtual RenderQueue * | getRenderQueue (void) |
Retrieves the internal render queue. | |
virtual Pass * | setPass (Pass *pass) |
Internal method for setting up the renderstate for a rendering pass. | |
Pass * | deriveShadowCasterPass (Pass *pass) |
Internal method for turning a regular pass into a shadow caster pass. | |
Pass * | deriveShadowReceiverPass (Pass *pass) |
Internal method for turning a regular pass into a shadow receiver pass. | |
bool | validatePassForRendering (Pass *pass) |
Internal method to validate whether a Pass should be allowed to render. | |
bool | validateRenderableForRendering (Pass *pass, Renderable *rend) |
Internal method to validate whether a Renderable should be allowed to render. | |
Mesh * | createSkyboxPlane (BoxPlane bp, Real distance, const Quaternion &orientation) |
Mesh * | createSkydomePlane (BoxPlane bp, Real curvature, Real tiling, Real distance, const Quaternion &orientation, int xsegments=16, int ysegments=16, int ySegmentsToKeep=-1) |
void | useRenderableViewProjMode (Renderable *pRend) |
Internal method used by _renderVisibleObjects to deal with renderables which override the camera's own view / projection materices. | |
bool | fireRenderQueueStarted (RenderQueueGroupID id) |
Internal method for firing the queue start event, returns true if queue is to be skipped. | |
bool | fireRenderQueueEnded (RenderQueueGroupID id) |
Internal method for firing the queue end event, returns true if queue is to be repeated. | |
virtual void | setViewport (Viewport *vp) |
Internal method for setting the destination viewport for the next render. | |
virtual void | renderSingleObject (Renderable *rend, Pass *pass, bool doLightIteration, const LightList *manualLightList=0) |
Internal utility method for rendering a single object. | |
virtual void | findLightsAffectingFrustum (const Camera *camera) |
Internal method for locating a list of lights which could be affecting the frustum. | |
virtual void | initShadowVolumeMaterials (void) |
Internal method for setting up materials for shadows. | |
virtual void | createShadowTextures (unsigned short size, unsigned short count) |
Internal method for creating shadow textures (texture-based shadows). | |
virtual void | prepareShadowTextures (Camera *cam, Viewport *vp) |
Internal method for preparing shadow textures ready for use in a regular render. | |
virtual void | renderShadowVolumesToStencil (const Light *light, const Camera *cam) |
Internal method for rendering all the objects for a given light into the stencil buffer. | |
virtual void | setShadowVolumeStencilState (bool secondpass, bool zfail, bool twosided) |
Internal utility method for setting stencil state for rendering shadow volumes. | |
void | renderSingleShadowVolumeToStencil (ShadowRenderable *sr, bool zfail, bool stencil2sided, const LightList *manualLightList, bool bSecondPass) |
Render a single shadow volume to the stencil buffer. | |
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. | |
virtual void | renderQueueGroupObjects (RenderQueueGroup *group) |
Render the objects in a given queue group. | |
virtual void | renderBasicQueueGroupObjects (RenderQueueGroup *pGroup) |
Render a group in the ordinary way. | |
virtual void | renderAdditiveStencilShadowedQueueGroupObjects (RenderQueueGroup *group) |
Render a group with the added complexity of additive stencil shadows. | |
virtual void | renderModulativeStencilShadowedQueueGroupObjects (RenderQueueGroup *group) |
Render a group with the added complexity of additive stencil shadows. | |
virtual void | renderTextureShadowCasterQueueGroupObjects (RenderQueueGroup *group) |
Render a group rendering only shadow casters. | |
virtual void | renderTextureShadowReceiverQueueGroupObjects (RenderQueueGroup *group) |
Render a group rendering only shadow receivers. | |
virtual void | renderModulativeTextureShadowedQueueGroupObjects (RenderQueueGroup *group) |
Render a group with the added complexity of additive stencil shadows. | |
virtual void | renderObjects (const RenderPriorityGroup::SolidRenderablePassMap &objs, bool doLightIteration, const LightList *manualLightList=0) |
Render a set of objects, see renderSingleObject for param definitions. | |
virtual void | renderObjects (const RenderPriorityGroup::TransparentRenderablePassList &objs, bool doLightIteration, const LightList *manualLightList=0) |
Render a set of objects, see renderSingleObject for param definitions. | |
virtual void | renderTransparentShadowCasterObjects (const RenderPriorityGroup::TransparentRenderablePassList &objs, bool doLightIteration, const LightList *manualLightList=0) |
Render those objects in the transparent pass list which have shadow casting forced on. | |
Protected Attributes | |
RenderQueue * | mRenderQueue |
Queue of objects for rendering. | |
ColourValue | mAmbientLight |
Current ambient light, cached for RenderSystem. | |
RenderSystem * | mDestRenderSystem |
The rendering system to send the scene to. | |
CameraList | mCameras |
Central list of cameras - for easy memory management and lookup. | |
SceneLightList | mLights |
Central list of lights - for easy memory management and lookup. | |
EntityList | mEntities |
Central list of entities - for easy memory management and lookup. | |
BillboardSetList | mBillboardSets |
Central list of billboard sets - for easy memory management and lookup. | |
SceneNodeList | mSceneNodes |
Central list of SceneNodes - for easy memory management. | |
Camera * | mCameraInProgress |
Camera in progress. | |
Viewport * | mCurrentViewport |
Current Viewport. | |
SceneNode * | mSceneRoot |
Root scene node. | |
AutoTrackingSceneNodes | mAutoTrackingSceneNodes |
Entity * | mSkyPlaneEntity |
Entity * | mSkyDomeEntity [5] |
Entity * | mSkyBoxEntity [6] |
SceneNode * | mSkyPlaneNode |
SceneNode * | mSkyDomeNode |
SceneNode * | mSkyBoxNode |
bool | mSkyPlaneEnabled |
bool | mSkyPlaneDrawFirst |
Plane | mSkyPlane |
bool | mSkyBoxEnabled |
bool | mSkyBoxDrawFirst |
Quaternion | mSkyBoxOrientation |
bool | mSkyDomeEnabled |
bool | mSkyDomeDrawFirst |
Quaternion | mSkyDomeOrientation |
FogMode | mFogMode |
ColourValue | mFogColour |
Real | mFogStart |
Real | mFogEnd |
Real | mFogDensity |
Pass * | mShadowCasterPlainBlackPass |
A pass designed to let us render shadow colour on white for texture shadows. | |
Pass * | mShadowReceiverPass |
A pass designed to let us render shadow receivers for texture shadows. | |
bool | mDisplayNodes |
AnimationList | mAnimationsList |
AnimationStateSet | mAnimationStates |
bool | mCamChanged |
Controller flag for determining if we need to set view/proj matrices. | |
RenderQueueListenerList | mRenderQueueListeners |
bool | mShowBoundingBoxes |
Flag that indicates if all of the scene node's bounding boxes should be shown as a wireframe. | |
AutoParamDataSource | mAutoParamDataSource |
Utility class for calculating automatic parameters for gpu programs. | |
ShadowTechnique | mShadowTechnique |
bool | mDebugShadows |
ColourValue | mShadowColour |
Pass * | mShadowDebugPass |
Pass * | mShadowStencilPass |
Pass * | mShadowModulativePass |
bool | mShadowMaterialInitDone |
LightList | mLightsAffectingFrustum |
HardwareIndexBufferSharedPtr | mShadowIndexBuffer |
size_t | mShadowIndexBufferSize |
Rectangle2D * | mFullScreenQuad |
Real | mShadowDirLightExtrudeDist |
IlluminationRenderStage | mIlluminationStage |
unsigned short | mShadowTextureSize |
unsigned short | mShadowTextureCount |
ShadowTextureList | mShadowTextures |
RenderTexture * | mCurrentShadowTexture |
bool | mShadowUseInfiniteFarPlane |
ShadowCasterList | mShadowCasterList |
SphereSceneQuery * | mShadowCasterSphereQuery |
AxisAlignedBoxSceneQuery * | mShadowCasterAABBQuery |
Real | mShadowFarDist |
Real | mShadowFarDistSquared |
Real | mShadowTextureOffset |
Real | mShadowTextureFadeStart |
Real | mShadowTextureFadeEnd |
GpuProgramParametersSharedPtr | mInfiniteExtrusionParams |
GpuProgramParametersSharedPtr | mFiniteExtrusionParams |
ShadowCasterSceneQueryListener | mShadowCasterQueryListener |
Friends | |
class | DefaultIntersectionSceneQuery |
class | DefaultRaySceneQuery |
class | DefaultSphereSceneQuery |
class | DefaultAxisAlignedBoxSceneQuery |
class | DefaultPlaneBoundedVolumeListSceneQuery |
a collection of primitives.
Subclasses may use various techniques to organise the scene depending on how they are designed (e.g. BSPs, octrees etc). As with other classes, methods preceded with '_' are designed to be called by other classes in the Ogre system, not by user applications, although this is not forbidden.
Definition at line 77 of file OgreSceneManager.h.
|
Definition at line 1402 of file OgreSceneManager.h. |
|
Storage of animations, lookup by name.
Definition at line 284 of file OgreSceneManager.h. |
|
Autotracking scene nodes.
Definition at line 169 of file OgreSceneManager.h. |
|
Definition at line 1401 of file OgreSceneManager.h. |
|
Definition at line 144 of file OgreSceneManager.h. |
|
Definition at line 1400 of file OgreSceneManager.h. |
|
Definition at line 125 of file OgreSceneManager.h. |
|
Definition at line 1399 of file OgreSceneManager.h. |
|
Definition at line 138 of file OgreSceneManager.h. |
|
Definition at line 1398 of file OgreSceneManager.h. |
|
Definition at line 295 of file OgreSceneManager.h. |
|
Definition at line 131 of file OgreSceneManager.h. |
|
Definition at line 150 of file OgreSceneManager.h. |
|
Definition at line 374 of file OgreSceneManager.h. Referenced by renderShadowVolumesToStencil(). |
|
Definition at line 342 of file OgreSceneManager.h. |
|
Definition at line 255 of file OgreSceneManager.h. Referenced by setSkyBox(), and setSkyDome(). |
|
Describes the stage of rendering when performing complex illumination.
Definition at line 98 of file OgreSceneManager.h. Referenced by prepareShadowTextures(). |
|
Prefab shapes available without loading a model.
Definition at line 682 of file OgreSceneManager.h. |
|
Default constructor.
Definition at line 66 of file OgreSceneManager.cpp. References Ogre::FOG_NONE, mSceneRoot, mSkyBoxEntity, mSkyDomeEntity, and Ogre::SHADOWTYPE_NONE. |
|
Default destructor.
Definition at line 120 of file OgreSceneManager.cpp. References clearScene(), mFullScreenQuad, mRenderQueue, mSceneRoot, mShadowCasterAABBQuery, mShadowCasterSphereQuery, and removeAllCameras(). |
|
Internal method for applying animations to scene nodes.
Definition at line 2311 of file OgreSceneManager.cpp. References Ogre::Animation::_getTrackList(), Ogre::Animation::apply(), getAnimation(), mAnimationStates, and Ogre::Node::resetToInitialState(). Referenced by _renderScene(). |
|
Internal method which parses the scene to find visible objects to render.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 1316 of file OgreSceneManager.cpp. References Ogre::SceneNode::_findVisibleObjects(), getRenderQueue(), mDisplayNodes, and mSceneRoot. Referenced by _renderScene(). |
|
Internal method for notifying the manager that a SceneNode is autotracking.
Definition at line 2614 of file OgreSceneManager.cpp. References mAutoTrackingSceneNodes. Referenced by Ogre::SceneNode::setAutoTracking(). |
|
Populate a light list with an ordered set of the lights which are closest to the position specified.
Definition at line 308 of file OgreSceneManager.cpp. References Ogre::Light::getAttenuationRange(), Ogre::Light::getDerivedPosition(), Ogre::Light::getType(), Ogre::MovableObject::isVisible(), Ogre::LightList, mLights, Ogre::Real, and Ogre::Light::tempSquareDist. Referenced by Ogre::SceneNode::findLights(). |
|
Internal method for queueing the sky objects with the params as previously set through setSkyBox, setSkyPlane and setSkyDome.
Definition at line 2497 of file OgreSceneManager.cpp. References Ogre::RenderQueue::addRenderable(), Ogre::Camera::getDerivedPosition(), getRenderQueue(), Ogre::Entity::getSubEntity(), mSkyBoxDrawFirst, mSkyBoxEntity, mSkyBoxNode, mSkyDomeDrawFirst, mSkyDomeEntity, mSkyDomeNode, mSkyPlaneDrawFirst, mSkyPlaneEntity, mSkyPlaneNode, Ogre::RENDER_QUEUE_SKIES_EARLY, Ogre::RENDER_QUEUE_SKIES_LATE, RENDERABLE_DEFAULT_PRIORITY, Ogre::RenderQueueGroupID, Ogre::Node::setPosition(), and Ogre::uint. Referenced by _renderScene(). |
|
|
Sends visible objects found in _findVisibleObjects to the rendering engine.
Reimplemented in Ogre::BspSceneManager, and Ogre::TerrainSceneManager. Definition at line 1324 of file OgreSceneManager.cpp. References Ogre::RenderQueue::_getQueueGroupIterator(), fireRenderQueueEnded(), fireRenderQueueStarted(), getRenderQueue(), Ogre::RenderQueueGroupID, and renderQueueGroupObjects(). Referenced by _renderScene(). |
|
Notifies the scene manager of its destination render system.
Definition at line 893 of file OgreSceneManager.cpp. References mDestRenderSystem. Referenced by Ogre::SceneManagerEnumerator::setSceneManager(). |
|
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 1305 of file OgreSceneManager.cpp. References Ogre::SceneNode::_update(), and mSceneRoot. Referenced by _renderScene(). |
|
Registers a new RenderQueueListener which will be notified when render queues are processed.
Definition at line 2551 of file OgreSceneManager.cpp. References mRenderQueueListeners. |
|
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, and Ogre::TerrainSceneManager. Definition at line 457 of file OgreSceneManager.cpp. References destroyAllAnimations(), Ogre::SceneNode::detachAllObjects(), mAutoTrackingSceneNodes, mSceneNodes, mSceneRoot, mSkyBoxEnabled, mSkyBoxNode, mSkyDomeEnabled, mSkyDomeNode, mSkyPlaneEnabled, mSkyPlaneNode, removeAllBillboardSets(), Ogre::Node::removeAllChildren(), removeAllEntities(), and removeAllLights(). Referenced by ~SceneManager(). |
|
Creates an AxisAlignedBoxSceneQuery for this scene manager.
Definition at line 3704 of file OgreSceneManager.cpp. References DefaultAxisAlignedBoxSceneQuery, Ogre::AxisAlignedBoxSceneQuery::setBox(), and Ogre::SceneQuery::setQueryMask(). Referenced by findShadowCastersForLight(). |
|
Creates an animation which can be used to animate scene nodes.
Definition at line 2162 of file OgreSceneManager.cpp. References Except, mAnimationsList, Ogre::Real, and Ogre::String. |
|
Create an AnimationState object for managing application of animations.
Definition at line 2238 of file OgreSceneManager.cpp. References Except, getAnimation(), Ogre::Animation::getLength(), mAnimationStates, and Ogre::String. |
|
Creates a new BillboardSet for use with this scene manager.
Definition at line 2100 of file OgreSceneManager.cpp. References Except, mBillboardSets, and Ogre::String. |
|
Creates a camera to be managed by this scene manager.
Reimplemented in Ogre::OctreeSceneManager, and Ogre::TerrainSceneManager. Definition at line 150 of file OgreSceneManager.cpp. References Except, mCameras, and Ogre::String. Referenced by createShadowTextures(). |
|
Create an Entity (instance of a discrete mesh) from a range of prefab shapes.
Definition at line 349 of file OgreSceneManager.cpp. References createEntity(), PT_PLANE, and Ogre::String. |
|
Create an Entity (instance of a discrete mesh).
Definition at line 363 of file OgreSceneManager.cpp. References Except, mEntities, and Ogre::String. Referenced by Ogre::Entity::clone(), createEntity(), Ogre::OverlayManager::parseNewMesh(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Creates an IntersectionSceneQuery for this scene manager.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 3742 of file OgreSceneManager.cpp. References DefaultIntersectionSceneQuery, and Ogre::SceneQuery::setQueryMask(). |
|
Creates a light for use in the scene.
Definition at line 231 of file OgreSceneManager.cpp. References Except, mLights, and Ogre::String. |
|
Creates a new material with default settings with the specified name.
Definition at line 486 of file OgreSceneManager.cpp. References Ogre::String. Referenced by Ogre::Quake3Shader::createAsMaterial(), Ogre::BspLevel::loadQuake3Level(), and Ogre::TerrainSceneManager::setupTerrainMaterial(). |
|
Creates a new Overlay.
Definition at line 2366 of file OgreSceneManager.cpp. References Ogre::Overlay::setZOrder(), Ogre::String, and Ogre::ushort. |
|
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 3722 of file OgreSceneManager.cpp. References DefaultPlaneBoundedVolumeListSceneQuery, Ogre::PlaneBoundedVolumeList, Ogre::SceneQuery::setQueryMask(), and Ogre::PlaneBoundedVolumeListSceneQuery::setVolumes(). |
|
Creates a RaySceneQuery for this scene manager.
Reimplemented in Ogre::OctreeSceneManager, and Ogre::TerrainSceneManager. Definition at line 3733 of file OgreSceneManager.cpp. References DefaultRaySceneQuery, Ogre::SceneQuery::setQueryMask(), and Ogre::RaySceneQuery::setRay(). |
|
Creates an instance of a SceneNode with a given name.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 520 of file OgreSceneManager.cpp. References Except, Ogre::Node::getName(), mSceneNodes, and Ogre::String. |
|
Creates an instance of a SceneNode.
Reimplemented in Ogre::BspSceneManager, and Ogre::OctreeSceneManager. Definition at line 512 of file OgreSceneManager.cpp. References Ogre::Node::getName(), and mSceneNodes. Referenced by Ogre::SceneNode::createChildImpl(), Ogre::OverlayManager::parseNewMesh(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Internal method for creating shadow textures (texture-based shadows).
Definition at line 3481 of file OgreSceneManager.cpp. References Ogre::RenderTarget::addViewport(), createCamera(), Ogre::RenderSystem::createRenderTexture(), Ogre::Pass::createTextureUnitState(), Ogre::RenderSystem::destroyRenderTexture(), Ogre::Viewport::getCamera(), Ogre::RenderTarget::getName(), Ogre::Technique::getPass(), Ogre::Material::getTechnique(), Ogre::RenderTarget::getViewport(), mDestRenderSystem, mShadowTechnique, mShadowTextureCount, mShadowTextures, mShadowTextureSize, Ogre::Pass::removeAllTextureUnitStates(), removeCamera(), Ogre::Frustum::setAspectRatio(), Ogre::RenderTarget::setAutoUpdated(), Ogre::Viewport::setClearEveryFrame(), Ogre::Viewport::setOverlaysEnabled(), Ogre::TextureUnitState::setProjectiveTexturing(), Ogre::TextureUnitState::setTextureAddressingMode(), Ogre::SHADOWTYPE_TEXTURE_MODULATIVE, Ogre::String, and Ogre::Material::touch(). Referenced by setShadowTechnique(), setShadowTextureCount(), setShadowTextureSettings(), and setShadowTextureSize(). |
|
Definition at line 1161 of file OgreSceneManager.cpp. References BP_BACK, BP_DOWN, BP_FRONT, BP_LEFT, BP_RIGHT, BP_UP, Ogre::MeshManager::createPlane(), Ogre::Plane::d, Ogre::ResourceManager::getByName(), Ogre::Plane::normal, Ogre::Real, Ogre::String, and Ogre::ResourceManager::unload(). Referenced by setSkyBox(). |
|
Definition at line 1231 of file OgreSceneManager.cpp. References BP_BACK, BP_DOWN, BP_FRONT, BP_LEFT, BP_RIGHT, BP_UP, Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::Plane::d, Ogre::ResourceManager::getByName(), Ogre::Plane::normal, Ogre::Real, Ogre::String, and Ogre::ResourceManager::unload(). Referenced by setSkyDome(). |
|
Creates a SphereSceneQuery for this scene manager.
Definition at line 3713 of file OgreSceneManager.cpp. References DefaultSphereSceneQuery, Ogre::SceneQuery::setQueryMask(), and Ogre::SphereSceneQuery::setSphere(). Referenced by findShadowCastersForLight(). |
|
Internal method for turning a regular pass into a shadow caster pass.
Definition at line 3038 of file OgreSceneManager.cpp. References Ogre::Pass::getShadowCasterVertexProgramName(), Ogre::Pass::getShadowCasterVertexProgramParameters(), Ogre::Pass::getVertexProgram(), Ogre::Pass::hasVertexProgram(), Ogre::Resource::isLoaded(), Ogre::GpuProgram::load(), mShadowCasterPlainBlackPass, Ogre::Pass::setVertexProgram(), Ogre::Pass::setVertexProgramParameters(), and Ogre::SHADOWTYPE_TEXTURE_MODULATIVE. Referenced by setPass(). |
|
Internal method for turning a regular pass into a shadow receiver pass.
Definition at line 3080 of file OgreSceneManager.cpp. References Ogre::Pass::getShadowReceiverVertexProgramName(), Ogre::Pass::getShadowReceiverVertexProgramParameters(), Ogre::Pass::getVertexProgram(), Ogre::Pass::hasVertexProgram(), Ogre::Resource::isLoaded(), Ogre::GpuProgram::load(), mShadowReceiverPass, Ogre::Pass::setVertexProgram(), Ogre::Pass::setVertexProgramParameters(), and Ogre::SHADOWTYPE_TEXTURE_MODULATIVE. Referenced by setPass(). |
|
Removes all animations created using this SceneManager.
Definition at line 2224 of file OgreSceneManager.cpp. References destroyAllAnimationStates(), and mAnimationsList. Referenced by clearScene(). |
|
Removes all animation states created using this SceneManager.
Definition at line 2306 of file OgreSceneManager.cpp. References mAnimationStates. Referenced by destroyAllAnimations(). |
|
Destroys all the overlays.
Definition at line 2442 of file OgreSceneManager.cpp. |
|
Destroys an Animation.
Definition at line 2190 of file OgreSceneManager.cpp. References Except, mAnimationsList, mAnimationStates, and Ogre::String. |
|
Destroys an AnimationState.
Definition at line 2290 of file OgreSceneManager.cpp. References Except, mAnimationStates, and Ogre::String. |
|
Destroys the named Overlay.
Definition at line 2416 of file OgreSceneManager.cpp. References Except, and Ogre::String. |
|
Destroys a scene query of any type.
Definition at line 3750 of file OgreSceneManager.cpp. |
|
Destroys a SceneNode with a given name.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 536 of file OgreSceneManager.cpp. References Except, Ogre::SceneNode::getAutoTrackTarget(), mAutoTrackingSceneNodes, mSceneNodes, Ogre::SceneNode::setAutoTracking(), and Ogre::String. Referenced by Ogre::SceneNode::removeAndDestroyAllChildren(), and Ogre::SceneNode::removeAndDestroyChild(). |
|
Internal method for locating a list of lights which could be affecting the frustum.
Definition at line 2682 of file OgreSceneManager.cpp. References Ogre::Light::getAttenuationRange(), Ogre::Light::getDerivedPosition(), Ogre::Light::getType(), Ogre::Frustum::isVisible(), mLights, mLightsAffectingFrustum, Ogre::Sphere::setCenter(), and Ogre::Sphere::setRadius(). Referenced by _renderScene(). |
|
Internal method for locating a list of shadow casters which could be affecting the frustum for a given light.
Definition at line 2771 of file OgreSceneManager.cpp. References Ogre::Light::_getFrustumClipVolumes(), createAABBQuery(), createSphereQuery(), Ogre::RegionSceneQuery::execute(), Ogre::Light::getAttenuationRange(), Ogre::Light::getDerivedPosition(), Ogre::Light::getDirection(), Ogre::Light::getPosition(), Ogre::Light::getType(), Ogre::Frustum::getWorldSpaceCorners(), Ogre::Frustum::isVisible(), Ogre::Vector3::makeCeil(), Ogre::Vector3::makeFloor(), mShadowCasterAABBQuery, mShadowCasterList, mShadowCasterQueryListener, mShadowCasterSphereQuery, mShadowDirLightExtrudeDist, mShadowFarDistSquared, Ogre::PlaneBoundedVolumeList, Ogre::SceneManager::ShadowCasterSceneQueryListener::prepare(), Ogre::AxisAlignedBoxSceneQuery::setBox(), Ogre::AxisAlignedBox::setExtents(), and Ogre::SphereSceneQuery::setSphere(). Referenced by renderShadowVolumesToStencil(). |
|
Internal method for firing the queue end event, returns true if queue is to be repeated.
Definition at line 2584 of file OgreSceneManager.cpp. References mRenderQueueListeners, and Ogre::RenderQueueGroupID. Referenced by _renderVisibleObjects(). |
|
Internal method for firing the queue start event, returns true if queue is to be skipped.
Definition at line 2571 of file OgreSceneManager.cpp. References mRenderQueueListeners, and Ogre::RenderQueueGroupID. Referenced by _renderVisibleObjects(). |
|
Returns the ambient light level to be used for the scene.
Definition at line 2052 of file OgreSceneManager.cpp. References mAmbientLight. |
|
Looks up an Animation object previously created with createAnimation.
Definition at line 2178 of file OgreSceneManager.cpp. References Except, mAnimationsList, and Ogre::String. Referenced by _applySceneAnimations(), and createAnimationState(). |
|
Returns a specialised MapIterator over all animations in the scene.
Definition at line 1421 of file OgreSceneManager.h. |
|
Retrieves animation state as previously created using createAnimationState.
Definition at line 2275 of file OgreSceneManager.cpp. References Except, mAnimationStates, and Ogre::String. |
|
Returns a specialised MapIterator over all animation states in the scene.
Definition at line 1425 of file OgreSceneManager.h. References Ogre::AnimationStateIterator. |
|
Retrieves a pointer to the named BillboardSet.
Definition at line 2117 of file OgreSceneManager.cpp. References mBillboardSets, and Ogre::String. |
|
Returns a specialised MapIterator over all BillboardSets in the scene.
Definition at line 1417 of file OgreSceneManager.h. |
|
Retrieves a pointer to the named camera.
Definition at line 169 of file OgreSceneManager.cpp. References mCameras, and Ogre::String. Referenced by Ogre::OctreeSceneManager::_findVisibleObjects(). |
|
Returns a specialised MapIterator over all cameras in the scene.
Definition at line 1413 of file OgreSceneManager.h. |
|
Returns a pointer to the default Material settings.
Definition at line 495 of file OgreSceneManager.cpp. |
|
Retrieves a pointer to the named Entity.
Definition at line 390 of file OgreSceneManager.cpp. References mEntities, and Ogre::String. |
|
Returns a specialised MapIterator over all entities in the scene.
Definition at line 1409 of file OgreSceneManager.h. Referenced by Ogre::OctreeIntersectionSceneQuery::execute(). |
|
Returns the fog colour for the scene.
Definition at line 2080 of file OgreSceneManager.cpp. References mFogColour. Referenced by Ogre::TerrainSceneManager::setupTerrainMaterial(). |
|
Returns the fog density for the scene.
Definition at line 2095 of file OgreSceneManager.cpp. References mFogDensity, and Ogre::Real. Referenced by Ogre::TerrainSceneManager::setupTerrainMaterial(). |
|
Returns the fog end distance for the scene.
Definition at line 2090 of file OgreSceneManager.cpp. References mFogEnd, and Ogre::Real. |
|
Returns the fog mode for the scene.
Definition at line 2075 of file OgreSceneManager.cpp. References Ogre::FogMode, and mFogMode. Referenced by Ogre::TerrainSceneManager::setupTerrainMaterial(). |
|
Returns the fog start distance for the scene.
Definition at line 2085 of file OgreSceneManager.cpp. References mFogStart, and Ogre::Real. |
|
Returns a pointer to the named Light which has previously been added to the scene.
Definition at line 248 of file OgreSceneManager.cpp. References mLights, and Ogre::String. |
|
Returns a specialised MapIterator over all lights in the scene.
Definition at line 1405 of file OgreSceneManager.h. |
|
Gets a reference to a material by it's numerical handle.
Definition at line 506 of file OgreSceneManager.cpp. |
|
Gets a reference to a named Material.
Definition at line 500 of file OgreSceneManager.cpp. References Ogre::String. Referenced by Ogre::BspLevel::loadQuake3Level(), Ogre::BspSceneManager::processVisibleLeaf(), setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Method for getting the value of an implementation-specific Scene Manager option.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 813 of file OgreSceneManager.h. References Ogre::String. |
|
Method for getting all the implementation-specific options of the scene manager.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 847 of file OgreSceneManager.h. |
|
Method for getting all possible values for a specific option. When this list is too large (i.e. the option expects, for example, a float), the return value will be true, but the list will contain just one element whose size will be set to 0. Otherwise, the list will be filled with all the possible values the option can accept.
Reimplemented in Ogre::OctreeSceneManager. Definition at line 839 of file OgreSceneManager.h. References Ogre::String. |
|
Gets a pointer to the named Overlay, previously created using createOverlay.
Definition at line 2391 of file OgreSceneManager.cpp. References Except, and Ogre::String. |
|
Retrieves the internal render queue.
Definition at line 131 of file OgreSceneManager.cpp. References initRenderQueue(), and mRenderQueue. Referenced by _findVisibleObjects(), Ogre::OctreeSceneManager::_findVisibleObjects(), _queueSkiesForRendering(), _renderScene(), _renderVisibleObjects(), Ogre::BspSceneManager::processVisibleLeaf(), and setShadowTechnique(). |
|
Gets the SceneNode at the root of the scene hierarchy.
Definition at line 570 of file OgreSceneManager.cpp. References mSceneRoot. Referenced by Ogre::TerrainSceneManager::setupTerrainPages(). |
|
Retrieves a named SceneNode from the scene graph.
Definition at line 575 of file OgreSceneManager.cpp. References Except, mSceneNodes, and Ogre::String. Referenced by Ogre::OctreeSceneManager::destroySceneNode(). |
|
Get the colour used to modulate areas in shadow.
Definition at line 3419 of file OgreSceneManager.cpp. References mShadowColour. |
|
Gets the distance a shadow volume is extruded for a directional light.
Definition at line 3435 of file OgreSceneManager.cpp. References mShadowDirLightExtrudeDist, and Ogre::Real. |
|
Gets the maximum distance away from the camera that shadows will be visible.
Definition at line 1519 of file OgreSceneManager.h. References Ogre::Real. |
|
Get the size of the shadow index buffer.
Definition at line 1549 of file OgreSceneManager.h. |
|
Gets the current shadow technique.
Definition at line 1464 of file OgreSceneManager.h. References Ogre::ShadowTechnique. Referenced by Ogre::Entity::updateAnimation(). |
|
Get the number of the textures allocated for texture based shadows.
Definition at line 1569 of file OgreSceneManager.h. |
|
Get the size of the texture used for texture based shadows.
Definition at line 1559 of file OgreSceneManager.h. |
|
Returns if all bounding boxes of scene nodes are to be displayed.
Definition at line 2609 of file OgreSceneManager.cpp. References mShowBoundingBoxes. Referenced by Ogre::SceneNode::_findVisibleObjects(). |
|
Are debug shadows shown?
Definition at line 1469 of file OgreSceneManager.h. |
|
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.
Reimplemented in Ogre::BspSceneManager. Definition at line 2057 of file OgreSceneManager.cpp. References Ogre::ViewPoint::orientation, and Ogre::ViewPoint::position. |
|
Method for verifying wether the scene manager has an implementation-specific option.
Definition at line 824 of file OgreSceneManager.h. References Ogre::String. |
|
Internal method for initialising the render queue.
Definition at line 140 of file OgreSceneManager.cpp. References Ogre::RenderQueue::getQueueGroup(), mRenderQueue, Ogre::RENDER_QUEUE_BACKGROUND, Ogre::RENDER_QUEUE_OVERLAY, Ogre::RENDER_QUEUE_SKIES_EARLY, Ogre::RENDER_QUEUE_SKIES_LATE, and Ogre::RenderQueueGroup::setShadowsEnabled(). Referenced by getRenderQueue(). |
|
Internal method for setting up materials for shadows.
Definition at line 2842 of file OgreSceneManager.cpp. References Ogre::Material::compile(), Ogre::Pass::createTextureUnitState(), Ogre::CULL_NONE, Ogre::RenderSystem::getCapabilities(), Ogre::Technique::getPass(), Ogre::Material::getTechnique(), Ogre::Pass::getVertexProgramParameters(), Ogre::RenderSystemCapabilities::hasCapability(), Ogre::LBS_CURRENT, Ogre::LBS_MANUAL, Ogre::LBX_MODULATE, Ogre::Image::load(), Ogre::Texture::loadImage(), mDestRenderSystem, mFiniteExtrusionParams, mFullScreenQuad, mInfiniteExtrusionParams, mShadowCasterPlainBlackPass, mShadowColour, mShadowDebugPass, mShadowMaterialInitDone, mShadowModulativePass, mShadowReceiverPass, mShadowStencilPass, Ogre::RSC_VERTEX_PROGRAM, Ogre::SBF_DEST_COLOUR, Ogre::SBF_ZERO, Ogre::SBT_ADD, Ogre::Pass::setAmbient(), Ogre::TextureUnitState::setColourOperationEx(), Ogre::Rectangle2D::setCorners(), Ogre::Pass::setCullingMode(), Ogre::Pass::setDepthCheckEnabled(), Ogre::Pass::setDepthWriteEnabled(), Ogre::Pass::setDiffuse(), Ogre::Pass::setLightingEnabled(), Ogre::Pass::setSceneBlending(), Ogre::Pass::setSelfIllumination(), Ogre::Pass::setSpecular(), Ogre::TextureUnitState::setTextureAddressingMode(), Ogre::Pass::setVertexProgram(), Ogre::SPOT_SHADOW_FADE_PNG, SPOT_SHADOW_FADE_PNG_SIZE, and Ogre::TEX_TYPE_2D. Referenced by _renderScene(), and setShadowColour(). |
|
Manual rendering method, for advanced users only.
Definition at line 2345 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_beginFrame(), Ogre::RenderSystem::_endFrame(), Ogre::RenderSystem::_render(), Ogre::RenderSystem::_setProjectionMatrix(), Ogre::RenderSystem::_setViewMatrix(), Ogre::RenderSystem::_setViewport(), Ogre::RenderSystem::_setWorldMatrix(), mDestRenderSystem, and setPass(). |
|
Internal method for preparing shadow textures ready for use in a regular render.
Definition at line 3561 of file OgreSceneManager.cpp. References Ogre::Vector3::crossProduct(), Ogre::Vector3::dotProduct(), Ogre::FOG_LINEAR, Ogre::Quaternion::FromAxes(), Ogre::Viewport::getCamera(), Ogre::MovableObject::getCastShadows(), Ogre::Light::getDerivedDirection(), Ogre::Camera::getDerivedDirection(), Ogre::Light::getDerivedPosition(), Ogre::Camera::getDerivedPosition(), Ogre::Frustum::getNearClipDistance(), Ogre::Light::getSpotlightOuterAngle(), Ogre::Light::getType(), Ogre::RenderTarget::getViewport(), IlluminationRenderStage, IRS_RENDER_TO_TEXTURE, mIlluminationStage, mLightsAffectingFrustum, mShadowDirLightExtrudeDist, mShadowFarDist, mShadowReceiverPass, mShadowTechnique, mShadowTextureFadeEnd, mShadowTextureFadeStart, mShadowTextureOffset, mShadowTextures, mShadowTextureSize, Ogre::Vector3::normalise(), Ogre::PT_ORTHOGRAPHIC, Ogre::PT_PERSPECTIVE, Ogre::Real, Ogre::Viewport::setBackgroundColour(), Ogre::Camera::setDirection(), Ogre::Pass::setFog(), Ogre::Frustum::setFOVy(), Ogre::Frustum::setNearClipDistance(), Ogre::Camera::setOrientation(), Ogre::Camera::setPosition(), Ogre::Frustum::setProjectionType(), Ogre::SHADOWTYPE_TEXTURE_MODULATIVE, Ogre::RenderTarget::update(), Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z. Referenced by _renderScene(). |
|
Removes & destroys all BillboardSets.
Definition at line 446 of file OgreSceneManager.cpp. References mBillboardSets. Referenced by clearScene(). |
|
Removes (and destroys) all cameras from the scene.
Definition at line 217 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_notifyCameraRemoved(), mCameras, and mDestRenderSystem. Referenced by ~SceneManager(). |
|
Removes & destroys all Entities.
Definition at line 434 of file OgreSceneManager.cpp. References mEntities. Referenced by clearScene(). |
|
Removes and destroys all lights in the scene.
Definition at line 292 of file OgreSceneManager.cpp. References mLights. Referenced by clearScene(). |
|
Removes & destroys an BillboardSet from the SceneManager by name.
Definition at line 2146 of file OgreSceneManager.cpp. References mBillboardSets, and Ogre::String. |
|
Removes & destroys an BillboardSet from the SceneManager.
Definition at line 2130 of file OgreSceneManager.cpp. References mBillboardSets. |
|
Removes a camera from the scene.
Definition at line 202 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_notifyCameraRemoved(), mCameras, mDestRenderSystem, and Ogre::String. |
|
Removes a camera from the scene.
Definition at line 183 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_notifyCameraRemoved(), mCameras, and mDestRenderSystem. Referenced by createShadowTextures(). |
|
Removes & destroys an Entity from the SceneManager by name.
Definition at line 421 of file OgreSceneManager.cpp. References mEntities, and Ogre::String. |
|
Removes & destroys an Entity from the SceneManager.
Definition at line 404 of file OgreSceneManager.cpp. References mEntities. Referenced by setSkyBox(), setSkyDome(), and setSkyPlane(). |
|
Removes the light from the scene and destroys it based on a pointer.
Definition at line 262 of file OgreSceneManager.cpp. References mLights. |
|
Removes the named light from the scene and destroys it.
Definition at line 279 of file OgreSceneManager.cpp. References mLights, and Ogre::String. |
|
Removes a listener previously added with addRenderQueueListener.
Definition at line 2556 of file OgreSceneManager.cpp. References mRenderQueueListeners. |
|
Render a group with the added complexity of additive stencil shadows.
Definition at line 1367 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::RenderPriorityGroup::_getSolidPassesDecal(), Ogre::RenderPriorityGroup::_getSolidPassesDiffuseSpecular(), Ogre::RenderPriorityGroup::_getSolidPassesNoShadow(), Ogre::RenderPriorityGroup::_getTransparentPasses(), Ogre::RenderSystem::_setDepthBufferParams(), Ogre::RenderSystem::clearFrameBuffer(), Ogre::CMPF_EQUAL, Ogre::FBT_STENCIL, Ogre::MovableObject::getCastShadows(), Ogre::RenderQueueGroup::getIterator(), IRS_AMBIENT, IRS_DECAL, IRS_NONE, IRS_PER_LIGHT, Ogre::LightList, mCameraInProgress, mDestRenderSystem, mIlluminationStage, mLightsAffectingFrustum, renderObjects(), renderShadowVolumesToStencil(), Ogre::RenderSystem::setStencilBufferParams(), Ogre::RenderSystem::setStencilCheckEnabled(), and Ogre::RenderPriorityGroup::sort(). Referenced by renderQueueGroupObjects(). |
|
Render a group in the ordinary way.
Definition at line 1825 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::RenderPriorityGroup::_getTransparentPasses(), Ogre::RenderQueueGroup::getIterator(), mCameraInProgress, renderObjects(), and Ogre::RenderPriorityGroup::sort(). Referenced by renderQueueGroupObjects(). |
|
Render a group with the added complexity of additive stencil shadows.
Definition at line 1451 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::RenderPriorityGroup::_getSolidPassesNoShadow(), Ogre::RenderPriorityGroup::_getTransparentPasses(), Ogre::RenderSystem::_setDepthBufferParams(), Ogre::RenderSystem::clearFrameBuffer(), Ogre::CMPF_NOT_EQUAL, Ogre::FBT_STENCIL, Ogre::MovableObject::getCastShadows(), Ogre::RenderQueueGroup::getIterator(), mCameraInProgress, mDestRenderSystem, mFullScreenQuad, mLightsAffectingFrustum, mShadowModulativePass, renderObjects(), renderShadowVolumesToStencil(), renderSingleObject(), setPass(), Ogre::RenderSystem::setStencilBufferParams(), Ogre::RenderSystem::setStencilCheckEnabled(), and Ogre::RenderPriorityGroup::sort(). Referenced by renderQueueGroupObjects(). |
|
Render a group with the added complexity of additive stencil shadows.
Definition at line 1566 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::RenderPriorityGroup::_getSolidPassesNoShadow(), Ogre::RenderPriorityGroup::_getTransparentPasses(), Ogre::Pass::_load(), Ogre::Pass::createTextureUnitState(), Ogre::Viewport::getCamera(), Ogre::MovableObject::getCastShadows(), Ogre::RenderQueueGroup::getIterator(), Ogre::RenderTarget::getName(), Ogre::Pass::getNumTextureUnitStates(), Ogre::RenderQueueGroup::getShadowsEnabled(), Ogre::Pass::getTextureUnitState(), Ogre::Light::getType(), Ogre::RenderTarget::getViewport(), IRS_NONE, IRS_RENDER_MODULATIVE_PASS, Ogre::LBO_ADD, mAutoParamDataSource, mCameraInProgress, mCurrentShadowTexture, mIlluminationStage, mLightsAffectingFrustum, mShadowReceiverPass, mShadowTextures, Ogre::Pass::removeTextureUnitState(), renderObjects(), renderTextureShadowReceiverQueueGroupObjects(), Ogre::TextureUnitState::setColourOperation(), Ogre::TextureUnitState::setProjectiveTexturing(), Ogre::TextureUnitState::setTextureAddressingMode(), Ogre::TextureUnitState::setTextureName(), Ogre::AutoParamDataSource::setTextureProjector(), and Ogre::RenderPriorityGroup::sort(). Referenced by renderQueueGroupObjects(). |
|
Render a set of objects, see renderSingleObject for param definitions.
Definition at line 1765 of file OgreSceneManager.cpp. References Ogre::LightList, renderSingleObject(), and setPass(). |
|
Render a set of objects, see renderSingleObject for param definitions.
Definition at line 1733 of file OgreSceneManager.cpp. References Ogre::LightList, renderSingleObject(), setPass(), validatePassForRendering(), and validateRenderableForRendering(). Referenced by renderAdditiveStencilShadowedQueueGroupObjects(), renderBasicQueueGroupObjects(), renderModulativeStencilShadowedQueueGroupObjects(), renderModulativeTextureShadowedQueueGroupObjects(), renderTextureShadowCasterQueueGroupObjects(), and renderTextureShadowReceiverQueueGroupObjects(). |
|
Render the objects in a given queue group.
Definition at line 1787 of file OgreSceneManager.cpp. References Ogre::RenderQueueGroup::getShadowsEnabled(), IRS_RENDER_TO_TEXTURE, mIlluminationStage, mShadowTechnique, renderAdditiveStencilShadowedQueueGroupObjects(), renderBasicQueueGroupObjects(), renderModulativeStencilShadowedQueueGroupObjects(), renderModulativeTextureShadowedQueueGroupObjects(), renderTextureShadowCasterQueueGroupObjects(), Ogre::SHADOWTYPE_STENCIL_ADDITIVE, Ogre::SHADOWTYPE_STENCIL_MODULATIVE, and Ogre::SHADOWTYPE_TEXTURE_MODULATIVE. Referenced by _renderVisibleObjects(). |
|
Internal method for rendering all the objects for a given light into the stencil buffer.
Definition at line 3124 of file OgreSceneManager.cpp. References Ogre::GpuProgram::_getBindingDelegate(), Ogre::Light::_getNearClipVolume(), Ogre::RenderSystem::_setColourBufferWriteEnabled(), Ogre::RenderSystem::_setDepthBufferFunction(), Ogre::RenderSystem::_setDepthBufferParams(), Ogre::RenderSystem::_setDepthBufferWriteEnabled(), Ogre::RenderSystem::bindGpuProgram(), Ogre::CMPF_ALWAYS_FAIL, Ogre::CMPF_LESS, findShadowCastersForLight(), Ogre::Viewport::getActualDimensions(), Ogre::Light::getAttenuationRange(), Ogre::RenderSystem::getCapabilities(), Ogre::ShadowCaster::getDarkCapBounds(), Ogre::Light::getDerivedPosition(), Ogre::ShadowCaster::getLastShadowVolumeRenderableIterator(), Ogre::ShadowCaster::getLightCapBounds(), Ogre::ShadowRenderable::getLightCapRenderable(), Ogre::ShadowCaster::getPointExtrusionDistance(), Ogre::ShadowCaster::getShadowVolumeRenderableIterator(), Ogre::Light::getType(), Ogre::Pass::getVertexProgram(), Ogre::ShadowCaster::getWorldBoundingBox(), Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_VERTEX_PROGRAM, Ogre::RenderSystemCapabilities::hasCapability(), Ogre::PlaneBoundedVolume::intersects(), Ogre::ShadowRenderable::isLightCapSeparate(), Ogre::ShadowRenderable::isVisible(), Ogre::Frustum::isVisible(), Ogre::LightList, mCurrentViewport, mDestRenderSystem, mFiniteExtrusionParams, mInfiniteExtrusionParams, mShadowDebugPass, mShadowDirLightExtrudeDist, mShadowIndexBuffer, mShadowStencilPass, mShadowTechnique, mShadowUseInfiniteFarPlane, Ogre::Frustum::projectSphere(), Ogre::Real, renderSingleShadowVolumeToStencil(), Ogre::RSC_INFINITE_FAR_PLANE, Ogre::RSC_SCISSOR_TEST, Ogre::RSC_STENCIL_WRAP, Ogre::RSC_TWO_SIDED_STENCIL, Ogre::RSC_VERTEX_PROGRAM, Ogre::RenderSystem::setScissorTest(), Ogre::RenderSystem::setStencilCheckEnabled(), Ogre::Pass::setVertexProgram(), Ogre::Pass::setVertexProgramParameters(), ShadowCasterList, Ogre::SRF_EXTRUDE_TO_INFINITY, Ogre::SRF_INCLUDE_DARK_CAP, Ogre::SRF_INCLUDE_LIGHT_CAP, and Ogre::RenderSystem::unbindGpuProgram(). Referenced by renderAdditiveStencilShadowedQueueGroupObjects(), and renderModulativeStencilShadowedQueueGroupObjects(). |
|
Internal utility method for rendering a single object.
Definition at line 1870 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_render(), Ogre::RenderSystem::_setRasterisationMode(), Ogre::RenderSystem::_setTextureUnitSettings(), Ogre::RenderSystem::_setWorldMatrices(), Ogre::RenderSystem::_setWorldMatrix(), Ogre::Pass::_updateAutoParamsLightsOnly(), Ogre::Pass::_updateAutoParamsNoLights(), Ogre::RenderSystem::_useLights(), Ogre::RenderSystem::bindGpuProgramParameters(), Ogre::Renderable::getClipPlanes(), Ogre::Camera::getDetailLevel(), Ogre::Pass::getFragmentProgramParameters(), Ogre::Pass::getLightingEnabled(), Ogre::Renderable::getLights(), Ogre::Pass::getMaxSimultaneousLights(), Ogre::Renderable::getNormaliseNormals(), Ogre::Renderable::getNumWorldTransforms(), Ogre::Pass::getOnlyLightType(), Ogre::Renderable::getRenderDetail(), Ogre::Renderable::getRenderOperation(), Ogre::Pass::getRunOncePerLight(), Ogre::Pass::getRunOnlyForOneLightType(), Ogre::Pass::getTextureUnitStateIterator(), Ogre::Pass::getVertexProgramParameters(), Ogre::Renderable::getWorldTransforms(), Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_VERTEX_PROGRAM, Ogre::Pass::hasFragmentProgram(), Ogre::Pass::hasVertexProgram(), Ogre::TextureUnitState::hasViewRelativeTextureCoordinateGeneration(), Ogre::Pass::isProgrammable(), Ogre::LightList, mAutoParamDataSource, mCameraInProgress, mDestRenderSystem, Ogre::SceneDetailLevel, Ogre::RenderSystem::setClipPlanes(), Ogre::AutoParamDataSource::setCurrentLightList(), Ogre::AutoParamDataSource::setCurrentRenderable(), Ogre::RenderSystem::setNormaliseNormals(), Ogre::RenderOperation::srcRenderable, and useRenderableViewProjMode(). Referenced by renderModulativeStencilShadowedQueueGroupObjects(), renderObjects(), renderSingleShadowVolumeToStencil(), and renderTransparentShadowCasterObjects(). |
|
Render a single shadow volume to the stencil buffer.
Definition at line 3342 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setColourBufferWriteEnabled(), Ogre::LightList, mDebugShadows, mDestRenderSystem, mShadowDebugPass, mShadowStencilPass, renderSingleObject(), setPass(), setShadowVolumeStencilState(), and Ogre::RenderSystem::setStencilBufferParams(). Referenced by renderShadowVolumesToStencil(). |
|
Render a group rendering only shadow casters.
Definition at line 1528 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::RenderPriorityGroup::_getSolidPassesNoShadow(), Ogre::RenderPriorityGroup::_getTransparentPasses(), Ogre::ColourValue::b, Ogre::ColourValue::g, Ogre::RenderQueueGroup::getIterator(), Ogre::LightList, mAmbientLight, mAutoParamDataSource, mCameraInProgress, mDestRenderSystem, mShadowColour, Ogre::ColourValue::r, renderObjects(), renderTransparentShadowCasterObjects(), Ogre::RenderSystem::setAmbientLight(), Ogre::AutoParamDataSource::setAmbientLightColour(), and Ogre::RenderPriorityGroup::sort(). Referenced by renderQueueGroupObjects(). |
|
Render a group rendering only shadow receivers.
Definition at line 1676 of file OgreSceneManager.cpp. References Ogre::RenderPriorityGroup::_getSolidPasses(), Ogre::ColourValue::b, Ogre::ColourValue::g, Ogre::RenderQueueGroup::getIterator(), Ogre::LightList, mAmbientLight, mAutoParamDataSource, mDestRenderSystem, Ogre::ColourValue::r, renderObjects(), Ogre::RenderSystem::setAmbientLight(), and Ogre::AutoParamDataSource::setAmbientLightColour(). Referenced by renderModulativeTextureShadowedQueueGroupObjects(). |
|
Render those objects in the transparent pass list which have shadow casting forced on.
Definition at line 1847 of file OgreSceneManager.cpp. References Ogre::Technique::getParent(), Ogre::Pass::getParent(), Ogre::Material::getTransparencyCastsShadows(), Ogre::LightList, renderSingleObject(), and setPass(). Referenced by renderTextureShadowCasterQueueGroupObjects(). |
|
Sets the ambient light level to be used for the scene.
Definition at line 2046 of file OgreSceneManager.cpp. References Ogre::ColourValue::b, Ogre::ColourValue::g, mAmbientLight, mDestRenderSystem, Ogre::ColourValue::r, and Ogre::RenderSystem::setAmbientLight(). |
|
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene.
Definition at line 2157 of file OgreSceneManager.cpp. References mDisplayNodes. |
|
Sets the fogging mode applied to the scene.
Definition at line 2066 of file OgreSceneManager.cpp. References Ogre::FogMode, mFogColour, mFogDensity, mFogEnd, mFogMode, mFogStart, and Ogre::Real. |
|
Method for setting a specific option of the Scene Manager. These options are usually specific for a certain implemntation of the Scene Manager class, and may (and probably will) not exist across different implementations.
Reimplemented in Ogre::OctreeSceneManager, and Ogre::TerrainSceneManager. Definition at line 798 of file OgreSceneManager.h. References Ogre::String. |
|
Internal method for setting up the renderstate for a rendering pass.
Definition at line 589 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_disableTextureUnitsFrom(), Ogre::GpuProgram::_getBindingDelegate(), Ogre::RenderSystem::_setColourBufferWriteEnabled(), Ogre::RenderSystem::_setCullingMode(), Ogre::RenderSystem::_setDepthBias(), Ogre::RenderSystem::_setDepthBufferCheckEnabled(), Ogre::RenderSystem::_setDepthBufferFunction(), Ogre::RenderSystem::_setDepthBufferWriteEnabled(), Ogre::RenderSystem::_setFog(), Ogre::RenderSystem::_setSceneBlending(), Ogre::RenderSystem::_setSurfaceParams(), Ogre::RenderSystem::_setTextureUnitSettings(), Ogre::RenderSystem::bindGpuProgram(), deriveShadowCasterPass(), deriveShadowReceiverPass(), Ogre::FogMode, Ogre::Pass::getAmbient(), Ogre::Pass::getColourWriteEnabled(), Ogre::Pass::getCullingMode(), Ogre::Pass::getDepthBias(), Ogre::Pass::getDepthCheckEnabled(), Ogre::Pass::getDepthFunction(), Ogre::Pass::getDepthWriteEnabled(), Ogre::Pass::getDestBlendFactor(), Ogre::Pass::getDiffuse(), Ogre::Pass::getFogColour(), Ogre::Pass::getFogDensity(), Ogre::Pass::getFogEnd(), Ogre::Pass::getFogMode(), Ogre::Pass::getFogOverride(), Ogre::Pass::getFogStart(), Ogre::Pass::getFragmentProgram(), Ogre::Pass::getLightingEnabled(), Ogre::Pass::getNumTextureUnitStates(), Ogre::GpuProgram::getPassSurfaceAndLightStates(), Ogre::Pass::getSelfIllumination(), Ogre::Pass::getShadingMode(), Ogre::Pass::getShininess(), Ogre::Pass::getSourceBlendFactor(), Ogre::Pass::getSpecular(), Ogre::Pass::getTextureUnitStateIterator(), Ogre::Pass::getVertexProgram(), Ogre::GPT_FRAGMENT_PROGRAM, Ogre::GPT_VERTEX_PROGRAM, Ogre::Pass::hasFragmentProgram(), Ogre::Pass::hasVertexProgram(), IRS_RENDER_MODULATIVE_PASS, IRS_RENDER_TO_TEXTURE, mDestRenderSystem, mFogColour, mFogDensity, mFogEnd, mFogMode, mFogStart, mIlluminationStage, Ogre::Real, Ogre::RenderSystem::setLightingEnabled(), Ogre::RenderSystem::setShadingType(), and Ogre::RenderSystem::unbindGpuProgram(). Referenced by manualRender(), renderModulativeStencilShadowedQueueGroupObjects(), renderObjects(), renderSingleShadowVolumeToStencil(), Ogre::BspSceneManager::renderStaticGeometry(), and renderTransparentShadowCasterObjects(). |
|
Set the colour used to modulate areas in shadow.
Definition at line 3408 of file OgreSceneManager.cpp. References Ogre::Pass::getTextureUnitState(), initShadowVolumeMaterials(), Ogre::LBS_CURRENT, Ogre::LBS_MANUAL, Ogre::LBX_MODULATE, mShadowCasterPlainBlackPass, mShadowColour, mShadowModulativePass, and Ogre::TextureUnitState::setColourOperationEx(). |
|
Sets the distance a shadow volume is extruded for a directional light.
Definition at line 3430 of file OgreSceneManager.cpp. References mShadowDirLightExtrudeDist, and Ogre::Real. |
|
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 1591 of file OgreSceneManager.h. References Ogre::Real. |
|
Sets the maximum distance away from the camera that shadows will be visible.
Definition at line 3424 of file OgreSceneManager.cpp. References mShadowFarDist, mShadowFarDistSquared, and Ogre::Real. |
|
Sets the maximum size of the index buffer used to render shadow primitives.
Definition at line 3440 of file OgreSceneManager.cpp. References Ogre::SharedPtr< HardwareIndexBuffer >::isNull(), mShadowIndexBuffer, and mShadowIndexBufferSize. |
|
Sets the general shadow technique to be used in this scene.
Definition at line 2626 of file OgreSceneManager.cpp. References createShadowTextures(), Ogre::RenderSystem::getCapabilities(), getRenderQueue(), Ogre::RenderSystemCapabilities::hasCapability(), Ogre::SharedPtr< HardwareIndexBuffer >::isNull(), mDestRenderSystem, mShadowIndexBuffer, mShadowIndexBufferSize, mShadowTechnique, mShadowTextureCount, mShadowTextureSize, Ogre::RSC_HWSTENCIL, Ogre::RenderQueue::setSplitNoShadowPasses(), Ogre::RenderQueue::setSplitPassesByLightingType(), Ogre::ShadowTechnique, Ogre::SHADOWTYPE_NONE, Ogre::SHADOWTYPE_STENCIL_ADDITIVE, Ogre::SHADOWTYPE_STENCIL_MODULATIVE, and Ogre::SHADOWTYPE_TEXTURE_MODULATIVE. |
|
Set the number of textures allocated for texture-based shadows.
Definition at line 3461 of file OgreSceneManager.cpp. References createShadowTextures(), mShadowTextureCount, and mShadowTextureSize. |
|
Sets the proportional distance at which texture shadows finish to fading out.
Definition at line 1608 of file OgreSceneManager.h. References Ogre::Real. |
|
Sets the proportional distance at which texture shadows begin to fade out.
Definition at line 1599 of file OgreSceneManager.h. References Ogre::Real. |
|
Sets the size and count of textures used in texture-based shadows.
Definition at line 3468 of file OgreSceneManager.cpp. References createShadowTextures(), mShadowTextureCount, mShadowTextures, and mShadowTextureSize. |
|
Set the size of the texture used for texture-based shadows.
Definition at line 3454 of file OgreSceneManager.cpp. References createShadowTextures(), mShadowTextureCount, and mShadowTextureSize. |
|
Sets whether we should use an inifinite camera far plane when rendering stencil shadows.
Definition at line 1647 of file OgreSceneManager.h. |
|
Internal utility method for setting stencil state for rendering shadow volumes.
Definition at line 3371 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setCullingMode(), Ogre::CMPF_ALWAYS_PASS, Ogre::CULL_ANTICLOCKWISE, Ogre::CULL_CLOCKWISE, Ogre::CULL_NONE, mDestRenderSystem, Ogre::RenderSystem::setStencilBufferParams(), Ogre::SOP_DECREMENT, Ogre::SOP_DECREMENT_WRAP, Ogre::SOP_INCREMENT, Ogre::SOP_INCREMENT_WRAP, and Ogre::SOP_KEEP. Referenced by renderSingleShadowVolumeToStencil(). |
|
Enables / disables the rendering of debug information for shadows.
Definition at line 1467 of file OgreSceneManager.h. |
|
Enables / disables a 'sky box' i.e. a 6-sided box at constant distance from the camera representing the sky.
Definition at line 1016 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), BoxPlane, Ogre::Material::clone(), Ogre::Material::copyDetailsTo(), createEntity(), createSceneNode(), createSkyboxPlane(), Ogre::SceneNode::detachAllObjects(), Except, Ogre::Material::getBestTechnique(), Ogre::ResourceManager::getByName(), getMaterial(), Ogre::Material::getName(), Ogre::Resource::getName(), Ogre::Technique::getPass(), Ogre::Pass::getTextureUnitState(), Ogre::Material::load(), mSkyBoxDrawFirst, mSkyBoxEnabled, mSkyBoxEntity, mSkyBoxNode, Ogre::Real, removeEntity(), Ogre::MovableObject::setCastShadows(), Ogre::TextureUnitState::setCurrentFrame(), Ogre::Material::setDepthWriteEnabled(), Ogre::Entity::setMaterialName(), Ogre::TextureUnitState::setTextureAddressingMode(), and Ogre::String. |
|
Enables / disables a 'sky dome' i.e. an illusion of a curved sky.
Definition at line 1098 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), BoxPlane, BP_UP, createEntity(), createSceneNode(), createSkydomePlane(), Ogre::SceneNode::detachAllObjects(), Except, getMaterial(), Ogre::Material::getName(), Ogre::Resource::getName(), Ogre::Material::load(), mSkyDomeDrawFirst, mSkyDomeEnabled, mSkyDomeEntity, mSkyDomeNode, Ogre::Real, removeEntity(), Ogre::MovableObject::setCastShadows(), Ogre::Material::setDepthWriteEnabled(), Ogre::Entity::setMaterialName(), and Ogre::String. Referenced by Ogre::Quake3Shader::createAsMaterial(). |
|
Enables / disables a 'sky plane' i.e. a plane at constant distance from the camera representing the sky.
Definition at line 932 of file OgreSceneManager.cpp. References Ogre::SceneNode::attachObject(), createEntity(), createSceneNode(), Ogre::Vector3::crossProduct(), Ogre::SceneNode::detachAllObjects(), Except, getMaterial(), Ogre::Material::load(), mSkyPlane, mSkyPlaneDrawFirst, mSkyPlaneEnabled, mSkyPlaneEntity, mSkyPlaneNode, Ogre::Plane::normal, Ogre::Real, removeEntity(), Ogre::MovableObject::setCastShadows(), Ogre::Material::setDepthWriteEnabled(), Ogre::Entity::setMaterialName(), and Ogre::String. |
|
Internal method for setting the destination viewport for the next render.
Definition at line 2597 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setViewport(), mCurrentViewport, and mDestRenderSystem. Referenced by _renderScene(). |
|
Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc.
Reimplemented in Ogre::BspSceneManager, and Ogre::TerrainSceneManager. Definition at line 901 of file OgreSceneManager.cpp. References Except, and Ogre::String. |
|
Allows all bounding boxes of scene nodes to be displayed.
Definition at line 2604 of file OgreSceneManager.cpp. References mShowBoundingBoxes. |
|
Internal method used by _renderVisibleObjects to deal with renderables which override the camera's own view / projection materices.
Definition at line 2458 of file OgreSceneManager.cpp. References Ogre::RenderSystem::_setProjectionMatrix(), Ogre::RenderSystem::_setViewMatrix(), Ogre::Frustum::getProjectionMatrix(), Ogre::Frustum::getViewMatrix(), mCamChanged, mCameraInProgress, mDestRenderSystem, Ogre::Renderable::useIdentityProjection(), and Ogre::Renderable::useIdentityView(). Referenced by renderSingleObject(). |
|
Internal method to validate whether a Pass should be allowed to render.
Definition at line 1704 of file OgreSceneManager.cpp. References Ogre::Pass::getIndex(), IRS_RENDER_MODULATIVE_PASS, IRS_RENDER_TO_TEXTURE, and mIlluminationStage. Referenced by renderObjects(). |
|
Internal method to validate whether a Renderable should be allowed to render.
Definition at line 1718 of file OgreSceneManager.cpp. References Ogre::Renderable::getCastsShadows(), IRS_RENDER_MODULATIVE_PASS, mIlluminationStage, mShadowTechnique, and Ogre::SHADOWTYPE_TEXTURE_MODULATIVE. Referenced by renderObjects(). |
|
Definition at line 82 of file OgreSceneManager.h. Referenced by createAABBQuery(). |
|
Definition at line 79 of file OgreSceneManager.h. Referenced by createIntersectionQuery(), and Ogre::OctreeSceneManager::createIntersectionQuery(). |
|
Definition at line 83 of file OgreSceneManager.h. Referenced by createPlaneBoundedVolumeQuery(). |
|
Definition at line 80 of file OgreSceneManager.h. Referenced by createRayQuery(). |
|
Definition at line 81 of file OgreSceneManager.h. Referenced by createSphereQuery(). |
|
Current ambient light, cached for RenderSystem.
Definition at line 120 of file OgreSceneManager.h. Referenced by _renderScene(), getAmbientLight(), renderTextureShadowCasterQueueGroupObjects(), renderTextureShadowReceiverQueueGroupObjects(), and setAmbientLight(). |
|
Definition at line 285 of file OgreSceneManager.h. Referenced by createAnimation(), destroyAllAnimations(), destroyAnimation(), and getAnimation(). |
|
Definition at line 286 of file OgreSceneManager.h. Referenced by _applySceneAnimations(), createAnimationState(), destroyAllAnimationStates(), destroyAnimation(), destroyAnimationState(), and getAnimationState(). |
|
Utility class for calculating automatic parameters for gpu programs.
Definition at line 325 of file OgreSceneManager.h. Referenced by _renderScene(), renderModulativeTextureShadowedQueueGroupObjects(), renderSingleObject(), renderTextureShadowCasterQueueGroupObjects(), and renderTextureShadowReceiverQueueGroupObjects(). |
|
Definition at line 170 of file OgreSceneManager.h. Referenced by _notifyAutotrackingSceneNode(), _renderScene(), clearScene(), and destroySceneNode(). |
|
Central list of billboard sets - for easy memory management and lookup.
Definition at line 148 of file OgreSceneManager.h. Referenced by createBillboardSet(), getBillboardSet(), removeAllBillboardSets(), and removeBillboardSet(). |
|
Controller flag for determining if we need to set view/proj matrices.
Definition at line 293 of file OgreSceneManager.h. Referenced by _renderScene(), and useRenderableViewProjMode(). |
|
Camera in progress.
Definition at line 161 of file OgreSceneManager.h. Referenced by _renderScene(), renderAdditiveStencilShadowedQueueGroupObjects(), renderBasicQueueGroupObjects(), renderModulativeStencilShadowedQueueGroupObjects(), renderModulativeTextureShadowedQueueGroupObjects(), renderSingleObject(), Ogre::BspSceneManager::renderStaticGeometry(), renderTextureShadowCasterQueueGroupObjects(), and useRenderableViewProjMode(). |
|
Central list of cameras - for easy memory management and lookup.
Definition at line 129 of file OgreSceneManager.h. Referenced by createCamera(), Ogre::OctreeSceneManager::createCamera(), getCamera(), removeAllCameras(), and removeCamera(). |
|
Definition at line 344 of file OgreSceneManager.h. Referenced by renderModulativeTextureShadowedQueueGroupObjects(). |
|
Current Viewport.
Definition at line 163 of file OgreSceneManager.h. Referenced by renderShadowVolumesToStencil(), and setViewport(). |
|
Definition at line 328 of file OgreSceneManager.h. Referenced by renderSingleShadowVolumeToStencil(). |
|
The rendering system to send the scene to.
Definition at line 123 of file OgreSceneManager.h. Referenced by _renderScene(), Ogre::TerrainSceneManager::_renderVisibleObjects(), _setDestinationRenderSystem(), createShadowTextures(), initShadowVolumeMaterials(), manualRender(), removeAllCameras(), removeCamera(), renderAdditiveStencilShadowedQueueGroupObjects(), renderModulativeStencilShadowedQueueGroupObjects(), renderShadowVolumesToStencil(), renderSingleObject(), renderSingleShadowVolumeToStencil(), Ogre::BspSceneManager::renderStaticGeometry(), renderTextureShadowCasterQueueGroupObjects(), renderTextureShadowReceiverQueueGroupObjects(), setAmbientLight(), setPass(), setShadowTechnique(), setShadowVolumeStencilState(), Ogre::TerrainSceneManager::setupTerrainMaterial(), Ogre::TerrainSceneManager::setUseLODMorph(), setViewport(), and useRenderableViewProjMode(). |
|
Definition at line 281 of file OgreSceneManager.h. Referenced by _findVisibleObjects(), and setDisplaySceneNodes(). |
|
Central list of entities - for easy memory management and lookup.
Definition at line 142 of file OgreSceneManager.h. Referenced by createEntity(), Ogre::DefaultPlaneBoundedVolumeListSceneQuery::execute(), Ogre::DefaultSphereSceneQuery::execute(), Ogre::DefaultRaySceneQuery::execute(), Ogre::DefaultAxisAlignedBoxSceneQuery::execute(), Ogre::DefaultIntersectionSceneQuery::execute(), getEntity(), removeAllEntities(), and removeEntity(). |
|
Definition at line 384 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), and renderShadowVolumesToStencil(). |
|
Definition at line 195 of file OgreSceneManager.h. Referenced by getFogColour(), setFog(), and setPass(). |
|
Definition at line 198 of file OgreSceneManager.h. Referenced by getFogDensity(), setFog(), and setPass(). |
|
Definition at line 197 of file OgreSceneManager.h. |
|
Definition at line 194 of file OgreSceneManager.h. Referenced by getFogMode(), setFog(), and setPass(). |
|
Definition at line 196 of file OgreSceneManager.h. Referenced by getFogStart(), setFog(), and setPass(). |
|
Definition at line 337 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), renderModulativeStencilShadowedQueueGroupObjects(), and ~SceneManager(). |
|
Definition at line 339 of file OgreSceneManager.h. Referenced by _renderScene(), prepareShadowTextures(), renderAdditiveStencilShadowedQueueGroupObjects(), renderModulativeTextureShadowedQueueGroupObjects(), renderQueueGroupObjects(), setPass(), validatePassForRendering(), and validateRenderableForRendering(). |
|
Definition at line 383 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), and renderShadowVolumesToStencil(). |
|
Central list of lights - for easy memory management and lookup.
Definition at line 135 of file OgreSceneManager.h. Referenced by _populateLightList(), createLight(), findLightsAffectingFrustum(), getLight(), removeAllLights(), and removeLight(). |
|
Definition at line 334 of file OgreSceneManager.h. Referenced by findLightsAffectingFrustum(), prepareShadowTextures(), renderAdditiveStencilShadowedQueueGroupObjects(), renderModulativeStencilShadowedQueueGroupObjects(), and renderModulativeTextureShadowedQueueGroupObjects(). |
|
Queue of objects for rendering.
Definition at line 117 of file OgreSceneManager.h. Referenced by getRenderQueue(), initRenderQueue(), and ~SceneManager(). |
|
Definition at line 296 of file OgreSceneManager.h. Referenced by addRenderQueueListener(), fireRenderQueueEnded(), fireRenderQueueStarted(), and removeRenderQueueListener(). |
|
Central list of SceneNodes - for easy memory management.
Definition at line 158 of file OgreSceneManager.h. Referenced by clearScene(), createSceneNode(), Ogre::OctreeSceneManager::createSceneNode(), Ogre::BspSceneManager::createSceneNode(), destroySceneNode(), and getSceneNode(). |
|
Root scene node.
Definition at line 166 of file OgreSceneManager.h. Referenced by _findVisibleObjects(), _updateSceneGraph(), clearScene(), getRootSceneNode(), Ogre::OctreeSceneManager::init(), SceneManager(), and ~SceneManager(). |
|
Definition at line 377 of file OgreSceneManager.h. Referenced by findShadowCastersForLight(), and ~SceneManager(). |
|
Definition at line 375 of file OgreSceneManager.h. Referenced by findShadowCastersForLight(). |
|
A pass designed to let us render shadow colour on white for texture shadows.
Definition at line 216 of file OgreSceneManager.h. Referenced by deriveShadowCasterPass(), initShadowVolumeMaterials(), and setShadowColour(). |
|
Definition at line 417 of file OgreSceneManager.h. Referenced by findShadowCastersForLight(). |
|
Definition at line 376 of file OgreSceneManager.h. Referenced by findShadowCastersForLight(), and ~SceneManager(). |
|
Definition at line 329 of file OgreSceneManager.h. Referenced by getShadowColour(), initShadowVolumeMaterials(), renderTextureShadowCasterQueueGroupObjects(), and setShadowColour(). |
|
Definition at line 330 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), renderShadowVolumesToStencil(), and renderSingleShadowVolumeToStencil(). |
|
Definition at line 338 of file OgreSceneManager.h. Referenced by _renderScene(), findShadowCastersForLight(), getShadowDirectionalLightExtrusionDistance(), prepareShadowTextures(), renderShadowVolumesToStencil(), and setShadowDirectionalLightExtrusionDistance(). |
|
Definition at line 378 of file OgreSceneManager.h. Referenced by prepareShadowTextures(), and setShadowFarDistance(). |
|
Definition at line 379 of file OgreSceneManager.h. Referenced by findShadowCastersForLight(), and setShadowFarDistance(). |
|
Definition at line 335 of file OgreSceneManager.h. Referenced by renderShadowVolumesToStencil(), setShadowIndexBufferSize(), and setShadowTechnique(). |
|
Definition at line 336 of file OgreSceneManager.h. Referenced by setShadowIndexBufferSize(), and setShadowTechnique(). |
|
Definition at line 333 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(). |
|
Definition at line 332 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), renderModulativeStencilShadowedQueueGroupObjects(), and setShadowColour(). |
|
A pass designed to let us render shadow receivers for texture shadows.
Definition at line 218 of file OgreSceneManager.h. Referenced by deriveShadowReceiverPass(), initShadowVolumeMaterials(), prepareShadowTextures(), and renderModulativeTextureShadowedQueueGroupObjects(). |
|
Definition at line 331 of file OgreSceneManager.h. Referenced by initShadowVolumeMaterials(), renderShadowVolumesToStencil(), and renderSingleShadowVolumeToStencil(). |
|
Definition at line 327 of file OgreSceneManager.h. Referenced by _renderScene(), createShadowTextures(), prepareShadowTextures(), renderQueueGroupObjects(), renderShadowVolumesToStencil(), setShadowTechnique(), and validateRenderableForRendering(). |
|
Definition at line 341 of file OgreSceneManager.h. Referenced by createShadowTextures(), setShadowTechnique(), setShadowTextureCount(), setShadowTextureSettings(), and setShadowTextureSize(). |
|
Definition at line 382 of file OgreSceneManager.h. Referenced by prepareShadowTextures(). |
|
Definition at line 381 of file OgreSceneManager.h. Referenced by prepareShadowTextures(). |
|
Definition at line 380 of file OgreSceneManager.h. Referenced by prepareShadowTextures(). |
|
Definition at line 343 of file OgreSceneManager.h. Referenced by createShadowTextures(), prepareShadowTextures(), renderModulativeTextureShadowedQueueGroupObjects(), and setShadowTextureSettings(). |
|
Definition at line 340 of file OgreSceneManager.h. Referenced by createShadowTextures(), prepareShadowTextures(), setShadowTechnique(), setShadowTextureCount(), setShadowTextureSettings(), and setShadowTextureSize(). |
|
Definition at line 345 of file OgreSceneManager.h. Referenced by _renderScene(), and renderShadowVolumesToStencil(). |
|
Flag that indicates if all of the scene node's bounding boxes should be shown as a wireframe.
Definition at line 307 of file OgreSceneManager.h. Referenced by getShowBoundingBoxes(), Ogre::BspSceneManager::processVisibleLeaf(), showBoundingBoxes(), and Ogre::OctreeSceneManager::walkOctree(). |
|
Definition at line 187 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyBox(). |
|
Definition at line 186 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), and setSkyBox(). |
|
Definition at line 176 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), SceneManager(), and setSkyBox(). |
|
Definition at line 180 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), and setSkyBox(). |
|
Definition at line 188 of file OgreSceneManager.h. |
|
Definition at line 191 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyDome(). |
|
Definition at line 190 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), and setSkyDome(). |
|
Definition at line 175 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), SceneManager(), and setSkyDome(). |
|
Definition at line 179 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), and setSkyDome(). |
|
Definition at line 192 of file OgreSceneManager.h. |
|
Definition at line 184 of file OgreSceneManager.h. Referenced by setSkyPlane(). |
|
Definition at line 183 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyPlane(). |
|
Definition at line 182 of file OgreSceneManager.h. Referenced by Ogre::BspSceneManager::BspSceneManager(), clearScene(), and setSkyPlane(). |
|
Definition at line 174 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), and setSkyPlane(). |
|
Definition at line 178 of file OgreSceneManager.h. Referenced by _queueSkiesForRendering(), clearScene(), and setSkyPlane(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:51:34 2004