OgreSceneManager.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2 This source file is a part of OGRE
3 (Object-oriented Graphics Rendering Engine)
4 
5 For the latest info, see http://www.ogre3d.org/
6 
7 Copyright (c) 2000-2013 Torus Knot Software Ltd
8 Permission is hereby granted, free of charge, to any person obtaining a copy
9 of this software and associated documentation files (the "Software"), to deal
10 in the Software without restriction, including without limitation the rights
11 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12 copies of the Software, and to permit persons to whom the Software is
13 furnished to do so, subject to the following conditions:
14 
15 The above copyright notice and this permission notice shall be included in
16 all copies or substantial portions of the Software.
17 
18 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24 THE SOFTWARE
25 
26 You may alternatively use this source under the terms of a specific version of
27 the OGRE Unrestricted License provided you have obtained such a license from
28 Torus Knot Software Ltd.
29 -------------------------------------------------------------------------*/
30 #ifndef __SceneManager_H__
31 #define __SceneManager_H__
32 
33 // Precompiler options
34 #include "OgrePrerequisites.h"
35 
36 #include "OgreString.h"
37 #include "OgreSceneNode.h"
38 #include "OgrePlane.h"
39 #include "OgreQuaternion.h"
40 #include "OgreColourValue.h"
41 #include "OgreCommon.h"
42 #include "OgreSceneQuery.h"
44 #include "OgreAnimationState.h"
45 #include "OgreRenderQueue.h"
47 #include "OgreRectangle2D.h"
48 #include "OgrePixelFormat.h"
50 #include "OgreTexture.h"
51 #include "OgreShadowCameraSetup.h"
53 #include "OgreCamera.h"
54 #include "OgreInstancedGeometry.h"
55 #include "OgreLodListener.h"
56 #include "OgreInstanceManager.h"
57 #include "OgreRenderSystem.h"
58 #include "OgreHeaderPrefix.h"
59 #include "OgreNameGenerator.h"
60 
61 namespace Ogre {
70  struct ViewPoint
71  {
74  };
75 
76  // Forward declarations
81  class CompositorChain;
82 
87  {
100 
102  void reset();
103  void merge(const AxisAlignedBox& boxBounds, const Sphere& sphereBounds,
104  const Camera* cam, bool receiver=true);
109  const Sphere& sphereBounds, const Camera* cam);
110 
111 
112  };
113 
144  {
145  public:
163  {
164  _OgreExport bool operator()(const Material* x, const Material* y) const;
165  };
167  struct lightLess
168  {
169  _OgreExport bool operator()(const Light* a, const Light* b) const;
170  };
171 
174  {
180  IRS_RENDER_RECEIVER_PASS
181  };
182 
188  {
192  SCRQM_EXCLUDE
193  };
194 
196  {
203  };
204 
206  {
212  };
213 
215  {
217  };
218 
222  class Listener
223  {
224  public:
225  Listener() {}
226  virtual ~Listener() {}
227 
234  virtual void preUpdateSceneGraph(SceneManager* source, Camera* camera)
235  { (void)source; (void)camera; }
236 
243  virtual void postUpdateSceneGraph(SceneManager* source, Camera* camera)
244  { (void)source; (void)camera; }
245 
255  virtual void preFindVisibleObjects(SceneManager* source,
257  { (void)source; (void)irs; (void)v; }
258 
269  virtual void postFindVisibleObjects(SceneManager* source,
271  { (void)source; (void)irs; (void)v; }
272 
287  virtual void shadowTexturesUpdated(size_t numberOfShadowTextures)
288  { (void)numberOfShadowTextures; }
289 
303  virtual void shadowTextureCasterPreViewProj(Light* light,
304  Camera* camera, size_t iteration)
305  { (void)light; (void)camera; (void)iteration; }
306 
321  Frustum* frustum)
322  { (void)light; (void)frustum; }
323 
346  virtual bool sortLightsAffectingFrustum(LightList& lightList)
347  { (void)lightList; return false; }
348 
350  virtual void sceneManagerDestroyed(SceneManager* source)
351  { (void)source; }
352  };
353 
358  {
359  protected:
361  const Pass* mUsedPass;
362  public:
364  :transparentShadowCastersMode(false) {}
366  void visit(Renderable* r);
367  bool visit(const Pass* p);
369 
380 
381  };
384 
385  protected:
386 
390  virtual SceneNode* createSceneNodeImpl(const String& name);
391 
394 
398 
401 
404 
406 
410 
415 
418 
420 
428 
433 
436 
440 
441  // Sky params
442  // Sky plane
444  Entity* mSkyDomeEntity[5];
446 
450 
451  // Sky plane
456  // Sky box
461  // Sky dome
466 
467  // Fog
473 
478 
479  unsigned long mLastFrameNumber;
480  Matrix4 mTempXform[256];
483 
487 
488  protected:
489 
499 
503 
505  size_t mShadowTextureCountPerType[3];
506 
509 
512  {
514  int type;
518 
519  bool operator== (const LightInfo& rhs) const
520  {
521  return light == rhs.light && type == rhs.type &&
522  range == rhs.range && position == rhs.position && lightMask == rhs.lightMask;
523  }
524 
525  bool operator!= (const LightInfo& rhs) const
526  {
527  return !(*this == rhs);
528  }
529  };
530 
532 
535  LightInfoList mTestLightInfos; // potentially new list
538 
542  {
544  OGRE_MUTEX(mutex);
545  };
560  OGRE_MUTEX(mMovableObjectCollectionMapMutex);
561 
566  virtual void initRenderQueue(void);
580  virtual const Pass* deriveShadowCasterPass(const Pass* pass);
589  virtual const Pass* deriveShadowReceiverPass(const Pass* pass);
590 
597  virtual bool validatePassForRendering(const Pass* pass);
598 
605  virtual bool validateRenderableForRendering(const Pass* pass, const Renderable* rend);
606 
607  enum BoxPlane
608  {
609  BP_FRONT = 0,
610  BP_BACK = 1,
611  BP_LEFT = 2,
612  BP_RIGHT = 3,
613  BP_UP = 4,
614  BP_DOWN = 5
615  };
616 
617  /* Internal utility method for creating the planes of a skybox.
618  */
620  BoxPlane bp,
621  Real distance,
622  const Quaternion& orientation,
623  const String& groupName);
624 
625  /* Internal utility method for creating the planes of a skydome.
626  */
628  BoxPlane bp,
629  Real curvature, Real tiling, Real distance,
630  const Quaternion& orientation,
631  int xsegments, int ysegments, int ySegmentsToKeep,
632  const String& groupName);
633 
636 
640  OGRE_MUTEX(mAnimationsListMutex);
642 
643 
646  virtual void useRenderableViewProjMode(const Renderable* pRend, bool fixedFunction);
647 
650  virtual void resetViewProjMode(bool fixedFunction);
651 
654 
660  virtual void firePreRenderQueues();
662  virtual void firePostRenderQueues();
664  virtual bool fireRenderQueueStarted(uint8 id, const String& invocation);
666  virtual bool fireRenderQueueEnded(uint8 id, const String& invocation);
668  virtual void fireRenderSingleObject(Renderable* rend, const Pass* pass, const AutoParamDataSource* source,
669  const LightList* pLightList, bool suppressRenderStateChanges);
670 
672  virtual void fireShadowTexturesUpdated(size_t numberOfShadowTextures);
674  virtual void fireShadowTexturesPreCaster(Light* light, Camera* camera, size_t iteration);
676  virtual void fireShadowTexturesPreReceiver(Light* light, Frustum* f);
678  virtual void firePreUpdateSceneGraph(Camera* camera);
680  virtual void firePostUpdateSceneGraph(Camera* camera);
688  virtual void setViewport(Viewport *vp);
689 
692 
698  virtual void prepareRenderQueue(void);
699 
700 
716  virtual void renderSingleObject(Renderable* rend, const Pass* pass,
717  bool lightScissoringClipping, bool doLightIteration, const LightList* manualLightList = 0);
718 
721  {
722  return OGRE_NEW AutoParamDataSource();
723  }
724 
727 
730 
756  {
760  unsigned long clipPlanesValid;
761  LightClippingInfo() : scissorValid(false), clipPlanesValid(false) {}
762 
763  };
767 
770 
780  {
781  _OgreExport bool operator()(const Light* l1, const Light* l2) const;
782  };
783 
784 
791  virtual void findLightsAffectingFrustum(const Camera* camera);
793  virtual void initShadowVolumeMaterials(void);
797  virtual void destroyShadowTextures(void);
798 
802 
805 
806  public:
810  virtual void prepareShadowTextures(Camera* cam, Viewport* vp, const LightList* lightList = 0);
811 
812  //A render context, used to store internal data for pausing/resuming rendering
814  {
820  };
821 
829  virtual void _resumeRendering(RenderContext* context);
830 
831  protected:
839  virtual void renderShadowVolumesToStencil(const Light* light, const Camera* cam,
840  bool calcScissor);
846  virtual void setShadowVolumeStencilState(bool secondpass, bool zfail, bool twosided);
849  Pass* pass, const LightList *manualLightList, unsigned long flags,
850  bool secondpass, bool zfail, bool twosided);
871 
875 
880 
881 
884 
887  {
888  protected:
893  const Camera* mCamera;
894  const Light* mLight;
896  public:
898  mCasterList(0), mIsLightInFrustum(false), mLightClipVolumeList(0),
899  mCamera(0) {}
900  // Prepare the listener for use with a set of parameters
901  void prepare(bool lightInFrustum,
902  const PlaneBoundedVolumeList* lightClipVolumes,
903  const Light* light, const Camera* cam, ShadowCasterList* casterList,
904  Real farDistSquared)
905  {
906  mCasterList = casterList;
907  mIsLightInFrustum = lightInFrustum;
908  mLightClipVolumeList = lightClipVolumes;
909  mCamera = cam;
910  mLight = light;
911  mFarDistSquared = farDistSquared;
912  }
913  bool queryResult(MovableObject* object);
915  };
916 
918 
925  virtual const ShadowCasterList& findShadowCastersForLight(const Light* light,
926  const Camera* camera);
945 
950  virtual void renderObjects(const QueuedRenderableCollection& objs,
951  QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping,
952  bool doLightIteration, const LightList* manualLightList = 0);
959  QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping,
960  bool doLightIteration, const LightList* manualLightList = 0);
961 
964  virtual void updateRenderQueueSplitOptions(void);
968  bool suppressShadows, bool suppressRenderState);
969 
971  virtual ClipResult buildAndSetScissor(const LightList& ll, const Camera* cam);
973  virtual void buildScissor(const Light* l, const Camera* cam, RealRect& rect);
974  virtual void resetScissor();
977  virtual void buildLightClip(const Light* l, PlaneList& planes);
978  virtual void resetLightClip();
980 
985 
990 
993  unsigned short mLastLightLimit;
997 
998  virtual void useLights(const LightList& lights, unsigned short limit);
999  virtual void setViewMatrix(const Matrix4& m);
1000  virtual void useLightsGpuProgram(const Pass* pass, const LightList* lights);
1001  virtual void bindGpuProgram(GpuProgram* prog);
1002  virtual void updateGpuProgramParameters(const Pass* p);
1003 
1004 
1005 
1006 
1007 
1008 
1009 
1010 
1014 
1018 
1022 
1026 
1027  public:
1030  SceneManager(const String& instanceName);
1031 
1034  virtual ~SceneManager();
1035 
1036 
1062  OGRE_MUTEX(sceneGraphMutex);
1063 
1065  const String& getName(void) const { return mName; }
1066 
1073  virtual const String& getTypeName(void) const = 0;
1074 
1082  virtual Camera* createCamera(const String& name);
1083 
1087  virtual Camera* getCamera(const String& name) const;
1088 
1091  virtual bool hasCamera(const String& name) const;
1092 
1101  virtual void destroyCamera(Camera *cam);
1102 
1108  virtual void destroyCamera(const String& name);
1109 
1118  virtual void destroyAllCameras(void);
1119 
1130  virtual Light* createLight(const String& name);
1131 
1133  virtual Light* createLight();
1134 
1138  virtual Light* getLight(const String& name) const;
1139 
1142  virtual bool hasLight(const String& name) const;
1143 
1147 
1150  virtual const RealRect& getLightScissorRect(Light* l, const Camera* cam);
1151 
1156  virtual void destroyLight(const String& name);
1157 
1162  virtual void destroyLight(Light* light);
1165  virtual void destroyAllLights(void);
1166 
1177  virtual void _notifyLightsDirty(void);
1178 
1191  ulong _getLightsDirtyCounter(void) const { return mLightsDirtyCounter; }
1192 
1199  virtual const LightList& _getLightsAffectingFrustum(void) const;
1200 
1223  virtual void _populateLightList(const Vector3& position, Real radius, LightList& destList, uint32 lightMask = 0xFFFFFFFF);
1224 
1253  virtual void _populateLightList(const SceneNode* sn, Real radius, LightList& destList, uint32 lightMask = 0xFFFFFFFF);
1254 
1271  virtual SceneNode* createSceneNode(void);
1272 
1287  virtual SceneNode* createSceneNode(const String& name);
1288 
1295  virtual void destroySceneNode(const String& name);
1296 
1303  virtual void destroySceneNode(SceneNode* sn);
1319  virtual SceneNode* getRootSceneNode(void);
1320 
1328  virtual SceneNode* getSceneNode(const String& name) const;
1329 
1332  virtual bool hasSceneNode(const String& name) const;
1333 
1334 
1342  virtual Entity* createEntity(const String& entityName, const String& meshName, const String& groupName = ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME );
1343 
1350  virtual Entity* createEntity(const String& entityName, const MeshPtr& pMesh );
1351 
1357  virtual Entity* createEntity(const String& meshName);
1358 
1363  virtual Entity* createEntity(const MeshPtr& pMesh);
1364 
1371  enum PrefabType {
1374  PT_SPHERE
1375  };
1376 
1383  virtual Entity* createEntity(const String& entityName, PrefabType ptype);
1384 
1388  virtual Entity* createEntity(PrefabType ptype);
1392  virtual Entity* getEntity(const String& name) const;
1395  virtual bool hasEntity(const String& name) const;
1396 
1405  virtual void destroyEntity(Entity* ent);
1406 
1415  virtual void destroyEntity(const String& name);
1416 
1426  virtual void destroyAllEntities(void);
1427 
1433  virtual ManualObject* createManualObject(const String& name);
1441  virtual ManualObject* getManualObject(const String& name) const;
1444  virtual bool hasManualObject(const String& name) const;
1445 
1448  virtual void destroyManualObject(ManualObject* obj);
1451  virtual void destroyManualObject(const String& name);
1454  virtual void destroyAllManualObjects(void);
1468  virtual BillboardChain* getBillboardChain(const String& name) const;
1471  virtual bool hasBillboardChain(const String& name) const;
1472 
1478  virtual void destroyBillboardChain(const String& name);
1481  virtual void destroyAllBillboardChains(void);
1487  virtual RibbonTrail* createRibbonTrail(const String& name);
1495  virtual RibbonTrail* getRibbonTrail(const String& name) const;
1498  virtual bool hasRibbonTrail(const String& name) const;
1499 
1502  virtual void destroyRibbonTrail(RibbonTrail* obj);
1505  virtual void destroyRibbonTrail(const String& name);
1508  virtual void destroyAllRibbonTrails(void);
1509 
1531  const String& templateName);
1552  size_t quota = 500,
1554 
1572  virtual ParticleSystem* createParticleSystem(size_t quota = 500,
1577  virtual ParticleSystem* getParticleSystem(const String& name) const;
1580  virtual bool hasParticleSystem(const String& name) const;
1581 
1587  virtual void destroyParticleSystem(const String& name);
1590  virtual void destroyAllParticleSystems(void);
1591 
1597  virtual void clearScene(void);
1598 
1611  void setAmbientLight(const ColourValue& colour);
1612 
1615  const ColourValue& getAmbientLight(void) const;
1616 
1632  virtual void prepareWorldGeometry(const String& filename);
1633 
1651  virtual void prepareWorldGeometry(DataStreamPtr& stream,
1652  const String& typeName = StringUtil::BLANK);
1653 
1666  virtual void setWorldGeometry(const String& filename);
1667 
1683  virtual void setWorldGeometry(DataStreamPtr& stream,
1684  const String& typeName = StringUtil::BLANK);
1685 
1698  virtual size_t estimateWorldGeometry(const String& filename)
1699  { (void)filename; return 0; }
1700 
1713  virtual size_t estimateWorldGeometry(DataStreamPtr& stream,
1714  const String& typeName = StringUtil::BLANK)
1715  { (void)stream; (void)typeName; return 0; }
1716 
1731  virtual ViewPoint getSuggestedViewpoint(bool random = false);
1732 
1746  virtual bool setOption( const String& strKey, const void* pValue )
1747  { (void)strKey; (void)pValue; return false; }
1748 
1762  virtual bool getOption( const String& strKey, void* pDestValue )
1763  { (void)strKey; (void)pDestValue; return false; }
1764 
1774  virtual bool hasOption( const String& strKey ) const
1775  { (void)strKey; return false; }
1776 
1791  virtual bool getOptionValues( const String& strKey, StringVector& refValueList )
1792  { (void)strKey; (void)refValueList; return false; }
1793 
1800  virtual bool getOptionKeys( StringVector& refKeys )
1801  { (void)refKeys; return false; }
1802 
1811  virtual void _updateSceneGraph(Camera* cam);
1812 
1824  virtual void _findVisibleObjects(Camera* cam, VisibleObjectsBoundsInfo* visibleBounds, bool onlyShadowCasters);
1825 
1830  virtual void _applySceneAnimations(void);
1831 
1834  virtual void _renderVisibleObjects(void);
1835 
1849  virtual void _renderScene(Camera* camera, Viewport* vp, bool includeOverlays);
1850 
1854  virtual void _queueSkiesForRendering(Camera* cam);
1855 
1856 
1857 
1867 
1921  virtual void setSkyPlane(
1922  bool enable,
1923  const Plane& plane, const String& materialName, Real scale = 1000,
1924  Real tiling = 10, bool drawFirst = true, Real bow = 0,
1925  int xsegments = 1, int ysegments = 1,
1970  virtual void _setSkyPlane(
1971  bool enable,
1972  const Plane& plane, const String& materialName, Real scale = 1000,
1973  Real tiling = 10, uint8 renderQueue = RENDER_QUEUE_SKIES_EARLY, Real bow = 0,
1974  int xsegments = 1, int ysegments = 1,
1976 
1978  virtual void setSkyPlaneEnabled(bool enable) { mSkyPlaneEnabled = enable; }
1979 
1981  virtual bool isSkyPlaneEnabled(void) const { return mSkyPlaneEnabled; }
1982 
1984  virtual SceneNode* getSkyPlaneNode(void) const { return mSkyPlaneNode; }
1985 
1987  virtual const SkyPlaneGenParameters& getSkyPlaneGenParameters(void) const { return mSkyPlaneGenParameters; }
1988 
2030  virtual void setSkyBox(
2031  bool enable, const String& materialName, Real distance = 5000,
2032  bool drawFirst = true, const Quaternion& orientation = Quaternion::IDENTITY,
2034 
2067  virtual void _setSkyBox(
2068  bool enable, const String& materialName, Real distance = 5000,
2069  uint8 renderQueue = RENDER_QUEUE_SKIES_EARLY, const Quaternion& orientation = Quaternion::IDENTITY,
2071 
2073  virtual void setSkyBoxEnabled(bool enable) { mSkyBoxEnabled = enable; }
2074 
2076  virtual bool isSkyBoxEnabled(void) const { return mSkyBoxEnabled; }
2077 
2079  virtual SceneNode* getSkyBoxNode(void) const { return mSkyBoxNode; }
2080 
2082  virtual const SkyBoxGenParameters& getSkyBoxGenParameters(void) const { return mSkyBoxGenParameters; }
2083 
2139  virtual void setSkyDome(
2140  bool enable, const String& materialName, Real curvature = 10,
2141  Real tiling = 8, Real distance = 4000, bool drawFirst = true,
2142  const Quaternion& orientation = Quaternion::IDENTITY,
2143  int xsegments = 16, int ysegments = 16, int ysegments_keep = -1,
2145 
2192  virtual void _setSkyDome(
2193  bool enable, const String& materialName, Real curvature = 10,
2194  Real tiling = 8, Real distance = 4000, uint8 renderQueue = RENDER_QUEUE_SKIES_EARLY,
2195  const Quaternion& orientation = Quaternion::IDENTITY,
2196  int xsegments = 16, int ysegments = 16, int ysegments_keep = -1,
2198 
2200  virtual void setSkyDomeEnabled(bool enable) { mSkyDomeEnabled = enable; }
2201 
2203  virtual bool isSkyDomeEnabled(void) const { return mSkyDomeEnabled; }
2204 
2206  virtual SceneNode* getSkyDomeNode(void) const { return mSkyDomeNode; }
2207 
2209  virtual const SkyDomeGenParameters& getSkyDomeGenParameters(void) const { return mSkyDomeGenParameters; }
2210 
2235  void setFog(
2236  FogMode mode = FOG_NONE, const ColourValue& colour = ColourValue::White,
2237  Real expDensity = 0.001, Real linearStart = 0.0, Real linearEnd = 1.0);
2238 
2241  virtual FogMode getFogMode(void) const;
2242 
2245  virtual const ColourValue& getFogColour(void) const;
2246 
2249  virtual Real getFogStart(void) const;
2250 
2253  virtual Real getFogEnd(void) const;
2254 
2257  virtual Real getFogDensity(void) const;
2258 
2259 
2277  virtual BillboardSet* createBillboardSet(const String& name, unsigned int poolSize = 20);
2278 
2285  virtual BillboardSet* createBillboardSet(unsigned int poolSize = 20);
2289  virtual BillboardSet* getBillboardSet(const String& name) const;
2292  virtual bool hasBillboardSet(const String& name) const;
2293 
2301 
2308  virtual void destroyBillboardSet(const String& name);
2309 
2319  virtual void destroyAllBillboardSets(void);
2320 
2328  virtual void setDisplaySceneNodes(bool display);
2330  virtual bool getDisplaySceneNodes(void) const {return mDisplayNodes;}
2331 
2352  virtual Animation* createAnimation(const String& name, Real length);
2353 
2357  virtual Animation* getAnimation(const String& name) const;
2360  virtual bool hasAnimation(const String& name) const;
2361 
2367  virtual void destroyAnimation(const String& name);
2368 
2370  virtual void destroyAllAnimations(void);
2371 
2399  virtual AnimationState* createAnimationState(const String& animName);
2400 
2404  virtual AnimationState* getAnimationState(const String& animName) const;
2407  virtual bool hasAnimationState(const String& name) const;
2408 
2414  virtual void destroyAnimationState(const String& name);
2415 
2417  virtual void destroyAllAnimationStates(void);
2418 
2442  virtual void manualRender(RenderOperation* rend, Pass* pass, Viewport* vp,
2443  const Matrix4& worldMatrix, const Matrix4& viewMatrix, const Matrix4& projMatrix,
2444  bool doBeginEndFrame = false) ;
2445 
2465  virtual void manualRender(Renderable* rend, const Pass* pass, Viewport* vp,
2466  const Matrix4& viewMatrix, const Matrix4& projMatrix, bool doBeginEndFrame = false, bool lightScissoringClipping = true,
2467  bool doLightIteration = true, const LightList* manualLightList = 0);
2468 
2479  virtual RenderQueue* getRenderQueue(void);
2480 
2484  virtual void addRenderQueueListener(RenderQueueListener* newListener);
2485 
2488 
2491  virtual void addRenderObjectListener(RenderObjectListener* newListener);
2494 
2518  virtual void clearSpecialCaseRenderQueues(void);
2533 
2561 
2563  virtual void showBoundingBoxes(bool bShow);
2564 
2566  virtual bool getShowBoundingBoxes() const;
2567 
2569  virtual void _notifyAutotrackingSceneNode(SceneNode* node, bool autoTrack);
2570 
2571 
2584  virtual AxisAlignedBoxSceneQuery*
2585  createAABBQuery(const AxisAlignedBox& box, uint32 mask = 0xFFFFFFFF);
2598  virtual SphereSceneQuery*
2599  createSphereQuery(const Sphere& sphere, uint32 mask = 0xFFFFFFFF);
2614 
2615 
2628  virtual RaySceneQuery*
2629  createRayQuery(const Ray& ray, uint32 mask = 0xFFFFFFFF);
2630  //PyramidSceneQuery* createPyramidQuery(const Pyramid& p, unsigned long mask = 0xFFFFFFFF);
2642  virtual IntersectionSceneQuery*
2643  createIntersectionQuery(uint32 mask = 0xFFFFFFFF);
2644 
2646  virtual void destroyQuery(SceneQuery* query);
2647 
2650 
2654  return CameraIterator(mCameras.begin(), mCameras.end());
2655  }
2658  const CameraList& getCameras() const { return mCameras; }
2661  return AnimationIterator(mAnimationsList.begin(), mAnimationsList.end());
2662  }
2665  const AnimationList& getAnimations() const { return mAnimationsList; }
2668  return mAnimationStates.getAnimationStateIterator();
2669  }
2670 
2703  virtual void setShadowTechnique(ShadowTechnique technique);
2704 
2706  virtual ShadowTechnique getShadowTechnique(void) const { return mShadowTechnique; }
2707 
2709  virtual void setShowDebugShadows(bool debug) { mDebugShadows = debug; }
2711  virtual bool getShowDebugShadows(void ) const { return mDebugShadows; }
2712 
2719  virtual void setShadowColour(const ColourValue& colour);
2726  virtual const ColourValue& getShadowColour(void) const;
2758  virtual void setShadowFarDistance(Real distance);
2762  virtual Real getShadowFarDistance(void) const
2763  { return mDefaultShadowFarDist; }
2764  virtual Real getShadowFarDistanceSquared(void) const
2765  { return mDefaultShadowFarDistSquared; }
2766 
2792  virtual void setShadowIndexBufferSize(size_t size);
2794  virtual size_t getShadowIndexBufferSize(void) const
2795  { return mShadowIndexBufferSize; }
2804  virtual void setShadowTextureSize(unsigned short size);
2805 
2815  virtual void setShadowTextureConfig(size_t shadowIndex, unsigned short width,
2816  unsigned short height, PixelFormat format, unsigned short fsaa = 0, uint16 depthBufferPoolId=1);
2822  virtual void setShadowTextureConfig(size_t shadowIndex,
2823  const ShadowTextureConfig& config);
2824 
2827 
2846  virtual void setShadowTextureFSAA(unsigned short fsaa);
2847 
2855  virtual void setShadowTextureCount(size_t count);
2857  size_t getShadowTextureCount(void) const {return mShadowTextureConfigList.size(); }
2858 
2869  { mShadowTextureCountPerType[type] = count; }
2872  {return mShadowTextureCountPerType[type]; }
2873 
2881  virtual void setShadowTextureSettings(unsigned short size, unsigned short count,
2882  PixelFormat fmt = PF_X8R8G8B8, unsigned short fsaa = 0, uint16 depthBufferPoolId=1);
2883 
2890  virtual const TexturePtr& getShadowTexture(size_t shadowIndex);
2891 
2906  virtual void setShadowDirLightTextureOffset(Real offset) { mShadowTextureOffset = offset;}
2910  virtual Real getShadowDirLightTextureOffset(void) const { return mShadowTextureOffset; }
2918  virtual void setShadowTextureFadeStart(Real fadeStart)
2919  { mShadowTextureFadeStart = fadeStart; }
2927  virtual void setShadowTextureFadeEnd(Real fadeEnd)
2928  { mShadowTextureFadeEnd = fadeEnd; }
2929 
2942  virtual void setShadowTextureSelfShadow(bool selfShadow);
2943 
2945  virtual bool getShadowTextureSelfShadow(void) const
2946  { return mShadowTextureSelfShadow; }
2967  virtual void setShadowTextureCasterMaterial(const String& name);
2989  virtual void setShadowTextureReceiverMaterial(const String& name);
2990 
3001  virtual void setShadowCasterRenderBackFaces(bool bf) { mShadowCasterRenderBackFaces = bf; }
3002 
3006  virtual bool getShadowCasterRenderBackFaces() const { return mShadowCasterRenderBackFaces; }
3007 
3012  virtual void setShadowCameraSetup(const ShadowCameraSetupPtr& shadowSetup);
3013 
3019 
3056  virtual void setShadowUseInfiniteFarPlane(bool enable) {
3057  mShadowUseInfiniteFarPlane = enable; }
3058 
3060  virtual bool isShadowTechniqueStencilBased(void) const
3061  { return (mShadowTechnique & SHADOWDETAILTYPE_STENCIL) != 0; }
3063  virtual bool isShadowTechniqueTextureBased(void) const
3064  { return (mShadowTechnique & SHADOWDETAILTYPE_TEXTURE) != 0; }
3066  virtual bool isShadowTechniqueModulative(void) const
3067  { return (mShadowTechnique & SHADOWDETAILTYPE_MODULATIVE) != 0; }
3069  virtual bool isShadowTechniqueAdditive(void) const
3070  { return (mShadowTechnique & SHADOWDETAILTYPE_ADDITIVE) != 0; }
3072  virtual bool isShadowTechniqueIntegrated(void) const
3073  { return (mShadowTechnique & SHADOWDETAILTYPE_INTEGRATED) != 0; }
3075  virtual bool isShadowTechniqueInUse(void) const
3076  { return mShadowTechnique != SHADOWTYPE_NONE; }
3080  virtual void setShadowUseLightClipPlanes(bool enabled) { mShadowAdditiveLightClip = enabled; }
3084  virtual bool getShadowUseLightClipPlanes() const { return mShadowAdditiveLightClip; }
3085 
3089  virtual void _setActiveCompositorChain(CompositorChain* chain) { mActiveCompositorChain = chain; }
3090 
3096  virtual void setLateMaterialResolving(bool isLate) { mLateMaterialResolving = isLate; }
3097 
3100  virtual bool isLateMaterialResolving() const { return mLateMaterialResolving; }
3101 
3103  virtual CompositorChain* _getActiveCompositorChain() const { return mActiveCompositorChain; }
3104 
3107  virtual void addListener(Listener* s);
3110  virtual void removeListener(Listener* s);
3111 
3125  virtual StaticGeometry* getStaticGeometry(const String& name) const;
3127  virtual bool hasStaticGeometry(const String& name) const;
3131  virtual void destroyStaticGeometry(const String& name);
3133  virtual void destroyAllStaticGeometry(void);
3134 
3146  virtual InstancedGeometry* getInstancedGeometry(const String& name) const;
3150  virtual void destroyInstancedGeometry(const String& name);
3152  virtual void destroyAllInstancedGeometry(void);
3153 
3172  virtual InstanceManager* createInstanceManager( const String &customName, const String &meshName,
3173  const String &groupName,
3175  size_t numInstancesPerBatch, uint16 flags=0,
3176  unsigned short subMeshIdx=0 );
3177 
3181  virtual InstanceManager* getInstanceManager( const String &managerName ) const;
3182 
3184  virtual bool hasInstanceManager( const String &managerName ) const;
3185 
3192  virtual void destroyInstanceManager( const String &name );
3193  virtual void destroyInstanceManager( InstanceManager *instanceManager );
3194 
3195  virtual void destroyAllInstanceManagers(void);
3196 
3209  virtual size_t getNumInstancesPerBatch( const String &meshName, const String &groupName,
3210  const String &materialName,
3212  size_t numInstancesPerBatch, uint16 flags=0,
3213  unsigned short subMeshIdx=0 );
3214 
3226  virtual InstancedEntity* createInstancedEntity( const String &materialName,
3227  const String &managerName );
3228 
3233  virtual void destroyInstancedEntity( InstancedEntity *instancedEntity );
3234 
3240 
3252  const String& typeName, const NameValuePairList* params = 0);
3262  virtual MovableObject* createMovableObject(const String& typeName, const NameValuePairList* params = 0);
3268  virtual void destroyMovableObject(const String& name, const String& typeName);
3276  virtual void destroyAllMovableObjectsByType(const String& typeName);
3278  virtual void destroyAllMovableObjects(void);
3282  virtual MovableObject* getMovableObject(const String& name, const String& typeName) const;
3284  virtual bool hasMovableObject(const String& name, const String& typeName) const;
3310  virtual void extractMovableObject(const String& name, const String& typeName);
3324  virtual void extractAllMovableObjectsByType(const String& typeName);
3325 
3332  virtual void setVisibilityMask(uint32 vmask) { mVisibilityMask = vmask; }
3333 
3337  virtual uint32 getVisibilityMask(void) { return mVisibilityMask; }
3338 
3343 
3350  virtual void setFindVisibleObjects(bool find) { mFindVisibleObjects = find; }
3351 
3355  virtual bool getFindVisibleObjects(void) { return mFindVisibleObjects; }
3356 
3365  virtual void setNormaliseNormalsOnScale(bool n) { mNormaliseNormalsOnScale = n; }
3366 
3370  virtual bool getNormaliseNormalsOnScale() const { return mNormaliseNormalsOnScale; }
3371 
3380  virtual void setFlipCullingOnNegativeScale(bool n) { mFlipCullingOnNegativeScale = n; }
3381 
3385  virtual bool getFlipCullingOnNegativeScale() const { return mFlipCullingOnNegativeScale; }
3386 
3392  virtual void _injectRenderWithPass(Pass *pass, Renderable *rend, bool shadowDerivation = true,
3393  bool doLightIteration = false, const LightList* manualLightList = 0);
3394 
3413  virtual void _suppressRenderStateChanges(bool suppress);
3414 
3418  virtual bool _areRenderStateChangesSuppressed(void) const
3419  { return mSuppressRenderStateChanges; }
3420 
3433  virtual const Pass* _setPass(const Pass* pass,
3434  bool evenIfSuppressed = false, bool shadowDerivation = true);
3435 
3443  virtual void _markGpuParamsDirty(uint16 mask);
3444 
3445 
3455  virtual void _suppressShadows(bool suppress);
3456 
3460  virtual bool _areShadowsSuppressed(void) const
3461  { return mSuppressShadows; }
3462 
3468 
3485 
3488 
3489 
3494 
3497  Viewport* getCurrentViewport(void) const { return mCurrentViewport; }
3498 
3501 
3503  const VisibleObjectsBoundsInfo& getShadowCasterBoundsInfo(const Light* light, size_t iteration = 0) const;
3504 
3519  virtual void setCameraRelativeRendering(bool rel) { mCameraRelativeRendering = rel; }
3520 
3524  virtual bool getCameraRelativeRendering() const { return mCameraRelativeRendering; }
3525 
3526 
3528  void addLodListener(LodListener *listener);
3529 
3536 
3539 
3542 
3545 
3548 
3549  IlluminationRenderStage _getCurrentRenderStage() {return mIlluminationStage;}
3550  };
3551 
3554  public IntersectionSceneQuery
3555  {
3556  public:
3559 
3562  };
3563 
3566  {
3567  public:
3570 
3573  };
3576  {
3577  public:
3580 
3582  void execute(SceneQueryListener* listener);
3583  };
3586  {
3587  public:
3590 
3592  void execute(SceneQueryListener* listener);
3593  };
3596  {
3597  public:
3600 
3602  void execute(SceneQueryListener* listener);
3603  };
3604 
3605 
3608 
3613  {
3618  ST_INTERIOR = 16
3619  };
3620 
3623  {
3632  };
3633 
3634 
3635 
3638  {
3639  protected:
3641  mutable bool mMetaDataInit;
3643  virtual void initMetaData(void) const = 0;
3644  public:
3645  SceneManagerFactory() : mMetaDataInit(true) {}
3648  virtual const SceneManagerMetaData& getMetaData(void) const
3649  {
3650  if (mMetaDataInit)
3651  {
3652  initMetaData();
3653  mMetaDataInit = false;
3654  }
3655  return mMetaData;
3656  }
3661  virtual SceneManager* createInstance(const String& instanceName) = 0;
3663  virtual void destroyInstance(SceneManager* instance) = 0;
3664 
3665  };
3666 
3671 } // Namespace
3672 
3673 #include "OgreHeaderSuffix.h"
3674 
3675 #endif
Ogre::DefaultAxisAlignedBoxSceneQuery::execute
void execute(SceneQueryListener *listener)
See RayScenQuery.
OgreHeaderSuffix.h
Ogre::SceneManager::MovableObjectIterator
MapIterator< MovableObjectMap > MovableObjectIterator
Definition: OgreSceneManager.h:3285
Ogre::HashedVector< Light * >
Ogre::SceneManager::materialLess
Comparator for material map, for sorting materials into render order (e.g.
Definition: OgreSceneManager.h:163
Ogre::SceneManager::mShadowCasterQueryListener
ShadowCasterSceneQueryListener * mShadowCasterQueryListener
Definition: OgreSceneManager.h:917
Ogre::SceneManager::createLight
virtual Light * createLight()
Creates a light with a generated name.
Ogre::SceneManager::ShadowCasterSceneQueryListener
Inner class to use as callback for shadow caster scene query.
Definition: OgreSceneManager.h:887
Ogre::SceneManager::mSkyBoxEnabled
bool mSkyBoxEnabled
Definition: OgreSceneManager.h:457
OgreRenderQueue.h
Ogre::SceneManager::mDestRenderSystem
RenderSystem * mDestRenderSystem
The rendering system to send the scene to.
Definition: OgreSceneManager.h:403
Ogre::SceneManager::mCachedLightInfos
LightInfoList mCachedLightInfos
Definition: OgreSceneManager.h:534
Ogre::SceneManager::lightLess
Comparator for sorting lights relative to a point.
Definition: OgreSceneManager.h:168
Ogre::SceneManager::createStaticGeometry
virtual StaticGeometry * createStaticGeometry(const String &name)
Creates a StaticGeometry instance suitable for use with this SceneManager.
Ogre::VisibleObjectsBoundsInfo::mergeNonRenderedButInFrustum
void mergeNonRenderedButInFrustum(const AxisAlignedBox &boxBounds, const Sphere &sphereBounds, const Camera *cam)
Merge an object that is not being rendered because it's not a shadow caster, but is a shadow receiver...
Ogre::SceneManager::manualRender
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.
Ogre::SceneManager::LightClippingInfo::clipPlanes
PlaneList clipPlanes
Definition: OgreSceneManager.h:758
Ogre::SceneManager::LightClippingInfo::clipPlanesValid
unsigned long clipPlanesValid
Definition: OgreSceneManager.h:760
Ogre::SceneManager::isShadowTechniqueModulative
virtual bool isShadowTechniqueModulative(void) const
Is there a modulative shadowing technique in use?
Definition: OgreSceneManager.h:3066
Ogre::SceneManager::mEntityMaterialLodChangedEvents
EntityMaterialLodChangedEventList mEntityMaterialLodChangedEvents
Definition: OgreSceneManager.h:1025
Ogre::Texture
Abstract class representing a Texture resource.
Definition: OgreTexture.h:103
Ogre::SceneManager::setShadowVolumeStencilState
virtual void setShadowVolumeStencilState(bool secondpass, bool zfail, bool twosided)
Internal utility method for setting stencil state for rendering shadow volumes.
Ogre::SceneManager::mShadowCasterPlainBlackPass
Pass * mShadowCasterPlainBlackPass
A pass designed to let us render shadow colour on white for texture shadows.
Definition: OgreSceneManager.h:568
Ogre::SceneManager::mSkyBoxGenParameters
SkyBoxGenParameters mSkyBoxGenParameters
Definition: OgreSceneManager.h:460
Ogre::SceneManager::mDirtyInstanceManagers
InstanceManagerVec mDirtyInstanceManagers
Definition: OgreSceneManager.h:800
Ogre::SceneManager::mCurrentViewport
Viewport * mCurrentViewport
Current Viewport.
Definition: OgreSceneManager.h:432
Ogre::SceneManager::destroyCamera
virtual void destroyCamera(Camera *cam)
Removes a camera from the scene.
Ogre::SceneManager::mShadowCamLightMapping
ShadowCamLightMapping mShadowCamLightMapping
Definition: OgreSceneManager.h:502
Ogre::SceneManager::mShadowTextureCurrentCasterLightList
LightList mShadowTextureCurrentCasterLightList
Definition: OgreSceneManager.h:537
OgreNameGenerator.h
Ogre::SceneManagerFactory::destroyInstance
virtual void destroyInstance(SceneManager *instance)=0
Destroy an instance of a SceneManager.
Ogre::SceneManager::mFogDensity
Real mFogDensity
Definition: OgreSceneManager.h:472
Ogre::AutoParamDataSource
This utility class is used to hold the information used to generate the matrices and other informatio...
Definition: OgreAutoParamDataSource.h:61
Ogre::SceneManagerFactory::createInstance
virtual SceneManager * createInstance(const String &instanceName)=0
Create a new instance of a SceneManager.
Ogre::SceneManager::mLastLightHashGpuProgram
uint32 mLastLightHashGpuProgram
Definition: OgreSceneManager.h:994
Ogre::SceneManager::_areShadowsSuppressed
virtual bool _areShadowsSuppressed(void) const
Are shadows suppressed?
Definition: OgreSceneManager.h:3460
Ogre::SceneQuery
A class for performing queries on a scene.
Definition: OgreSceneQuery.h:75
Ogre::SceneManager::LightInfo::position
Vector3 position
Sets to zero if directional light.
Definition: OgreSceneManager.h:516
Ogre::SceneManager::mSkyPlaneRenderQueue
uint8 mSkyPlaneRenderQueue
Definition: OgreSceneManager.h:453
Ogre::SceneManager::firePreUpdateSceneGraph
virtual void firePreUpdateSceneGraph(Camera *camera)
Internal method for firing pre update scene graph event.
Ogre::SceneManager::destroyBillboardSet
virtual void destroyBillboardSet(BillboardSet *set)
Removes & destroys an BillboardSet from the SceneManager.
Ogre::SceneManager::destroyManualObject
virtual void destroyManualObject(ManualObject *obj)
Removes & destroys a ManualObject from the SceneManager.
Ogre::SceneManager::SkyDomeGenParameters::skyDomeDistance
Real skyDomeDistance
Definition: OgreSceneManager.h:199
Ogre::RenderSystem
Defines the functionality of a 3D API.
Definition: OgreRenderSystem.h:126
Ogre::SceneManager::createBillboardChain
virtual BillboardChain * createBillboardChain()
Create a BillboardChain, an object which you can use to render a linked chain of billboards,...
Ogre::RenderQueueGroup
A grouping level underneath RenderQueue which groups renderables to be issued at coarsely the same ti...
Definition: OgreRenderQueueSortingGrouping.h:466
Ogre::VisibleObjectsBoundsInfo::merge
void merge(const AxisAlignedBox &boxBounds, const Sphere &sphereBounds, const Camera *cam, bool receiver=true)
Ogre::SceneManager::_pauseRendering
virtual RenderContext * _pauseRendering()
Pause rendering of the frame.
Ogre::SceneManager::mShowBoundingBoxes
bool mShowBoundingBoxes
Flag that indicates if all of the scene node's bounding boxes should be shown as a wireframe.
Definition: OgreSceneManager.h:691
Ogre::ShadowTextureList
vector< TexturePtr >::type ShadowTextureList
Definition: OgreShadowTextureManager.h:49
Ogre::SceneManager::mShadowModulativePass
Pass * mShadowModulativePass
Definition: OgreSceneManager.h:736
Ogre::SceneManager::setShadowTechnique
virtual void setShadowTechnique(ShadowTechnique technique)
Sets the general shadow technique to be used in this scene.
Ogre::SceneManager::_populateLightList
virtual void _populateLightList(const SceneNode *sn, Real radius, LightList &destList, uint32 lightMask=0xFFFFFFFF)
Populates a light list with an ordered set of the lights which are closest to the position of the Sce...
Ogre::SceneManager::renderTextureShadowCasterQueueGroupObjects
virtual void renderTextureShadowCasterQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group rendering only shadow casters.
Ogre::AllocatedObject
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...
Definition: OgreMemoryAllocatedObject.h:59
Ogre::SceneManager::_suppressRenderStateChanges
virtual void _suppressRenderStateChanges(bool suppress)
Indicates to the SceneManager whether it should suppress changing the RenderSystem states when render...
Ogre::SceneManager::IlluminationRenderStage
IlluminationRenderStage
Describes the stage of rendering when performing complex illumination.
Definition: OgreSceneManager.h:174
Ogre
Definition: OgreAndroidLogListener.h:35
Ogre::SceneManager::destroyInstancedGeometry
virtual void destroyInstancedGeometry(InstancedGeometry *geom)
Remove & destroy a InstancedGeometry instance.
OgrePixelFormat.h
Ogre::Plane
Defines a plane in 3D space.
Definition: OgrePlane.h:62
Ogre::SceneManager::getShadowCameraSetup
virtual const ShadowCameraSetupPtr & getShadowCameraSetup() const
Get the shadow camera setup in use for all lights which don't have their own shadow camera setup.
Ogre::SceneManager::mLightsAffectingFrustum
LightList mLightsAffectingFrustum
Definition: OgreSceneManager.h:533
Ogre::SceneManager::destroyStaticGeometry
virtual void destroyStaticGeometry(const String &name)
Remove & destroy a StaticGeometry instance.
Ogre::SceneManager::getInstanceManager
virtual InstanceManager * getInstanceManager(const String &managerName) const
Retrieves an existing InstanceManager by it's name.
Ogre::SceneManager::isSkyDomeEnabled
virtual bool isSkyDomeEnabled(void) const
Return whether a skydome is enabled.
Definition: OgreSceneManager.h:2203
Ogre::SceneManager::Listener::sortLightsAffectingFrustum
virtual bool sortLightsAffectingFrustum(LightList &lightList)
Hook to allow the listener to override the ordering of lights for the entire frustum.
Definition: OgreSceneManager.h:346
Ogre::SceneManager::MovableObjectCollection::map
MovableObjectMap map
Definition: OgreSceneManager.h:543
Ogre::ST_INTERIOR
@ ST_INTERIOR
Definition: OgreSceneManager.h:3618
Ogre::SceneManager::destroyMovableObject
virtual void destroyMovableObject(const String &name, const String &typeName)
Destroys a MovableObject with the name specified, of the type specified.
Ogre::SceneManager::SkyBoxGenParameters::skyBoxDistance
Real skyBoxDistance
Definition: OgreSceneManager.h:216
Ogre::SceneManager::extractMovableObject
virtual void extractMovableObject(MovableObject *m)
Extract a previously injected MovableObject.
Ogre::SceneManagerMetaData
Structure containing information about a scene manager.
Definition: OgreSceneManager.h:3623
Ogre::DefaultIntersectionSceneQuery::~DefaultIntersectionSceneQuery
~DefaultIntersectionSceneQuery()
Ogre::SceneManager::removeListener
virtual void removeListener(Listener *s)
Remove a listener.
Ogre::SceneManager::setSkyBoxEnabled
virtual void setSkyBoxEnabled(bool enable)
Enables / disables a 'sky box'.
Definition: OgreSceneManager.h:2073
Ogre::SceneManager::Listener
Class that allows listening in on the various stages of SceneManager processing, so that custom behav...
Definition: OgreSceneManager.h:223
Ogre::SceneManager::getFindVisibleObjects
virtual bool getFindVisibleObjects(void)
Gets whether the SceneManager should search for visible objects, or whether they are being manually h...
Definition: OgreSceneManager.h:3355
Ogre::SceneManager::OGRE_MUTEX
OGRE_MUTEX(mMovableObjectCollectionMapMutex)
Mutex over the collection of MovableObject types.
Ogre::Light::LightTypes
LightTypes
Defines the type of light.
Definition: OgreLight.h:83
Ogre::SceneManager::setShadowTextureReceiverMaterial
virtual void setShadowTextureReceiverMaterial(const String &name)
Sets the default material to use for rendering shadow receivers.
Ogre::SceneManager::mFogColour
ColourValue mFogColour
Definition: OgreSceneManager.h:469
Ogre::SceneManager::MovableObjectCollection::OGRE_MUTEX
OGRE_MUTEX(mutex)
Ogre::map
Definition: OgrePrerequisites.h:534
Ogre::SceneManager::_notifyEntityMaterialLodChanged
void _notifyEntityMaterialLodChanged(EntityMaterialLodChangedEvent &evt)
Notify that an entity material LOD change event has occurred.
Ogre::Camera
A viewpoint from which the scene will be rendered.
Definition: OgreCamera.h:87
Ogre::DefaultPlaneBoundedVolumeListSceneQuery::execute
void execute(SceneQueryListener *listener)
See SceneQuery.
Ogre::SceneManager::useLightsGpuProgram
virtual void useLightsGpuProgram(const Pass *pass, const LightList *lights)
Ogre::SceneManager::createManualObject
virtual ManualObject * createManualObject()
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mod...
Ogre::set
Definition: OgrePrerequisites.h:520
Ogre::DefaultPlaneBoundedVolumeListSceneQuery::~DefaultPlaneBoundedVolumeListSceneQuery
~DefaultPlaneBoundedVolumeListSceneQuery()
Ogre::SceneManager::_getLightsDirtyCounter
ulong _getLightsDirtyCounter(void) const
Advance method to gets the lights dirty counter.
Definition: OgreSceneManager.h:1191
Ogre::SceneManager::destroyAllAnimationStates
virtual void destroyAllAnimationStates(void)
Removes all animation states created using this SceneManager.
OgreRenderQueueSortingGrouping.h
Ogre::SceneManager::renderVisibleObjectsDefaultSequence
virtual void renderVisibleObjectsDefaultSequence(void)
Internal method for rendering all objects using the default queue sequence.
Ogre::SceneManager::ShadowCasterSceneQueryListener::prepare
void prepare(bool lightInFrustum, const PlaneBoundedVolumeList *lightClipVolumes, const Light *light, const Camera *cam, ShadowCasterList *casterList, Real farDistSquared)
Definition: OgreSceneManager.h:901
Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult
bool queryResult(SceneQuery::WorldFragment *fragment)
Called when a WorldFragment is returned by a query.
Ogre::SceneManager::getDestinationRenderSystem
RenderSystem * getDestinationRenderSystem()
Get the rendersystem subclass to which the output of this Scene Manager gets sent.
Ogre::SceneManager::createEntity
virtual Entity * createEntity(PrefabType ptype)
Create an Entity (instance of a discrete mesh) from a range of prefab shapes, generating the name.
Ogre::SceneManager::mStaticGeometryList
StaticGeometryList mStaticGeometryList
Definition: OgreSceneManager.h:412
Ogre::SceneManager::addRenderQueueListener
virtual void addRenderQueueListener(RenderQueueListener *newListener)
Registers a new RenderQueueListener which will be notified when render queues are processed.
Ogre::SceneManager::setSkyPlane
virtual void setSkyPlane(bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, bool drawFirst=true, Real bow=0, int xsegments=1, int ysegments=1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky plane' i.e.
Ogre::CompositorChain
Chain of compositor effects applying to one viewport.
Definition: OgreCompositorChain.h:49
Ogre::SceneManager::mAnimationStates
AnimationStateSet mAnimationStates
Definition: OgreSceneManager.h:641
Ogre::SceneManagerMetaData::description
String description
A text description of the scene manager.
Definition: OgreSceneManager.h:3627
Ogre::SceneManager::createRayQuery
virtual RaySceneQuery * createRayQuery(const Ray &ray, uint32 mask=0xFFFFFFFF)
Creates a RaySceneQuery for this scene manager.
Ogre::SceneManager::mActiveQueuedRenderableVisitor
SceneMgrQueuedRenderableVisitor * mActiveQueuedRenderableVisitor
The active renderable visitor class - subclasses could override this.
Definition: OgreSceneManager.h:982
Ogre::SceneManager::createAutoParamDataSource
virtual AutoParamDataSource * createAutoParamDataSource(void) const
Internal method for creating the AutoParamDataSource instance.
Definition: OgreSceneManager.h:720
Ogre::SceneManager::getSkyPlaneNode
virtual SceneNode * getSkyPlaneNode(void) const
Get the sky plane node, if enabled.
Definition: OgreSceneManager.h:1984
Ogre::SceneManager::SkyPlaneGenParameters::skyPlaneTiling
Real skyPlaneTiling
Definition: OgreSceneManager.h:208
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::scissoring
bool scissoring
Scissoring if requested?
Definition: OgreSceneManager.h:379
Ogre::SceneManager::AnimationList
map< String, Animation * >::type AnimationList
Storage of animations, lookup by name.
Definition: OgreSceneManager.h:638
Ogre::SceneManager::mSuppressShadows
bool mSuppressShadows
Suppress shadows?
Definition: OgreSceneManager.h:879
Ogre::SceneManager::hasMovableObject
virtual bool hasMovableObject(const String &name, const String &typeName) const
Returns whether a movable object instance with the given name exists.
Ogre::SceneManager::getMovableObjectCollection
const MovableObjectCollection * getMovableObjectCollection(const String &typeName) const
Gets the movable object collection for the given type name.
Ogre::SceneManager::getShadowTextureSelfShadow
virtual bool getShadowTextureSelfShadow(void) const
Gets whether or not texture shadows attempt to self-shadow.
Definition: OgreSceneManager.h:2945
Ogre::SceneManager::mShadowTextureCustomReceiverFragmentProgram
String mShadowTextureCustomReceiverFragmentProgram
Definition: OgreSceneManager.h:866
Ogre::SceneManager::setShadowColour
virtual void setShadowColour(const ColourValue &colour)
Set the colour used to modulate areas in shadow.
Ogre::SceneManager::mName
String mName
Instance name.
Definition: OgreSceneManager.h:393
Ogre::SceneManager::Listener::postFindVisibleObjects
virtual void postFindVisibleObjects(SceneManager *source, IlluminationRenderStage irs, Viewport *v)
Called after searching for visible objects in this SceneManager.
Definition: OgreSceneManager.h:269
Ogre::SceneManager::SkyDomeGenParameters::skyDomeTiling
Real skyDomeTiling
Definition: OgreSceneManager.h:198
Ogre::SceneManager::getSkyDomeGenParameters
virtual const SkyDomeGenParameters & getSkyDomeGenParameters(void) const
Get the parameters used to generate the current SkyDome, if any.
Definition: OgreSceneManager.h:2209
Ogre::VisibleObjectsBoundsInfo::reset
void reset()
Ogre::SceneManager::WORLD_GEOMETRY_TYPE_MASK
static uint32 WORLD_GEOMETRY_TYPE_MASK
Query type mask which will be used for world geometry.
Definition: OgreSceneManager.h:147
Ogre::VisibleObjectsBoundsInfo::maxDistance
Real maxDistance
The farthest a visible objects is from the camera.
Definition: OgreSceneManager.h:95
Ogre::SceneManager::mShadowMaterialInitDone
bool mShadowMaterialInitDone
Definition: OgreSceneManager.h:737
Ogre::SceneManager::getVisibleObjectsBoundsInfo
const VisibleObjectsBoundsInfo & getVisibleObjectsBoundsInfo(const Camera *cam) const
Returns a visibility boundary box for a specific camera.
Ogre::SceneQueryListener
This optional class allows you to receive per-result callbacks from SceneQuery executions instead of ...
Definition: OgreSceneQuery.h:188
Ogre::SceneManager::estimateWorldGeometry
virtual size_t estimateWorldGeometry(const String &filename)
Estimate the number of loading stages required to load the named world geometry.
Definition: OgreSceneManager.h:1698
Ogre::SceneManager::createMovableObject
virtual MovableObject * createMovableObject(const String &typeName, const NameValuePairList *params=0)
Create a movable object of the type specified without a name.
Ogre::StringVector
vector< String >::type StringVector
Definition: OgreStringVector.h:45
Ogre::SceneManager::removeRenderObjectListener
virtual void removeRenderObjectListener(RenderObjectListener *delListener)
Removes a listener previously added with addRenderObjectListener.
Ogre::SceneManager::getShadowFarDistanceSquared
virtual Real getShadowFarDistanceSquared(void) const
Definition: OgreSceneManager.h:2764
Ogre::SceneManager::renderTransparentShadowCasterObjects
virtual void renderTransparentShadowCasterObjects(const QueuedRenderableCollection &objs, QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0)
Render those objects in the transparent pass list which have shadow casting forced on.
Ogre::SceneManager::ShadowCasterSceneQueryListener::mLight
const Light * mLight
Definition: OgreSceneManager.h:894
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::autoLights
bool autoLights
Automatic light handling?
Definition: OgreSceneManager.h:375
Ogre::SceneManager::ShadowCasterSceneQueryListener::mCasterList
ShadowCasterList * mCasterList
Definition: OgreSceneManager.h:890
Ogre::SceneManager::SceneManager
SceneManager(const String &instanceName)
Constructor.
Ogre::SceneManager::createEntity
virtual Entity * createEntity(const String &entityName, const MeshPtr &pMesh)
Create an Entity (instance of a discrete mesh).
Ogre::SceneManager::getSuggestedViewpoint
virtual ViewPoint getSuggestedViewpoint(bool random=false)
Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.
Ogre::SceneManager::setShadowIndexBufferSize
virtual void setShadowIndexBufferSize(size_t size)
Sets the maximum size of the index buffer used to render shadow primitives.
Ogre::SceneManager::RenderObjectListenerList
vector< RenderObjectListener * >::type RenderObjectListenerList
Definition: OgreSceneManager.h:655
Ogre::SceneManager::getAnimationState
virtual AnimationState * getAnimationState(const String &animName) const
Retrieves animation state as previously created using createAnimationState.
Ogre::SceneManager::destroyAllMovableObjects
virtual void destroyAllMovableObjects(void)
Destroy all MovableObjects.
Ogre::SceneManager::RenderContext::renderQueue
RenderQueue * renderQueue
Definition: OgreSceneManager.h:815
Ogre::SphereSceneQuery
Specialises the SceneQuery class for querying within a sphere.
Definition: OgreSceneQuery.h:288
Ogre::SceneManager::prepareShadowTextures
virtual void prepareShadowTextures(Camera *cam, Viewport *vp, const LightList *lightList=0)
Method for preparing shadow textures ready for use in a regular render Do not call manually unless be...
Ogre::SceneManager::fireSceneManagerDestroyed
virtual void fireSceneManagerDestroyed()
Internal method for firing destruction event.
Ogre::SceneManager::mShadowColour
ColourValue mShadowColour
Definition: OgreSceneManager.h:733
Ogre::SceneManager::mInstancedGeometryList
InstancedGeometryList mInstancedGeometryList
Definition: OgreSceneManager.h:414
Ogre::SceneManager::AutoTrackingSceneNodes
set< SceneNode * >::type AutoTrackingSceneNodes
Autotracking scene nodes.
Definition: OgreSceneManager.h:438
Ogre::SceneManager::isShadowTechniqueAdditive
virtual bool isShadowTechniqueAdditive(void) const
Is there an additive shadowing technique in use?
Definition: OgreSceneManager.h:3069
Ogre::ClipResult
ClipResult
Generic result of clipping.
Definition: OgreCommon.h:741
Ogre::SceneManager::validateRenderableForRendering
virtual bool validateRenderableForRendering(const Pass *pass, const Renderable *rend)
Internal method to validate whether a Renderable should be allowed to render.
Ogre::InstanceManager
This is the main starting point for the new instancing system.
Definition: OgreInstanceManager.h:64
Ogre::TRect< Real >
Ogre::SceneType
SceneType
Classification of a scene to allow a decision of what type of SceenManager to provide back to the app...
Definition: OgreSceneManager.h:3613
Ogre::GpuProgram
Defines a program which runs on the GPU such as a vertex or fragment program.
Definition: OgreGpuProgram.h:70
Ogre::SceneManager::Listener::sceneManagerDestroyed
virtual void sceneManagerDestroyed(SceneManager *source)
Event notifying the listener of the SceneManager's destruction.
Definition: OgreSceneManager.h:350
Ogre::SceneManager::createCamera
virtual Camera * createCamera(const String &name)
Creates a camera to be managed by this scene manager.
Ogre::ShadowTechnique
ShadowTechnique
An enumeration of broad shadow techniques.
Definition: OgreCommon.h:191
Ogre::SceneManager::mFogEnd
Real mFogEnd
Definition: OgreSceneManager.h:471
Ogre::VectorIterator
Concrete IteratorWrapper for nonconst access to the underlying container.
Definition: OgreIteratorWrapper.h:186
Ogre::Light
Representation of a dynamic light source in the scene.
Definition: OgreLight.h:74
Ogre::SceneManager::buildAndSetScissor
virtual ClipResult buildAndSetScissor(const LightList &ll, const Camera *cam)
Set up a scissor rectangle from a group of lights.
Ogre::SceneManager::isSkyBoxEnabled
virtual bool isSkyBoxEnabled(void) const
Return whether a skybox is enabled.
Definition: OgreSceneManager.h:2076
Ogre::DefaultIntersectionSceneQuery
Default implementation of IntersectionSceneQuery.
Definition: OgreSceneManager.h:3555
Ogre::SceneManager::mSkyPlaneEnabled
bool mSkyPlaneEnabled
Definition: OgreSceneManager.h:452
Ogre::SceneManager::setShadowTextureCount
virtual void setShadowTextureCount(size_t count)
Set the number of textures allocated for texture-based shadows.
Ogre::SceneManager::OGRE_MUTEX
OGRE_MUTEX(sceneGraphMutex)
Mutex to protect the scene graph from simultaneous access from multiple threads.
Ogre::SceneManager::Listener::shadowTexturesUpdated
virtual void shadowTexturesUpdated(size_t numberOfShadowTextures)
Event raised after all shadow textures have been rendered into for all queues / targets but before an...
Definition: OgreSceneManager.h:287
Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult
bool queryResult(MovableObject *object)
Called when a MovableObject is returned by a query.
Ogre::SceneManager::LightClippingInfo::scissorValid
bool scissorValid
Definition: OgreSceneManager.h:759
Ogre::FogMode
FogMode
Fog modes.
Definition: OgreCommon.h:122
Ogre::RenderQueueListener
Abstract interface which classes must implement if they wish to receive events from the render queue.
Definition: OgreRenderQueueListener.h:57
Ogre::SceneManager::getShadowFarDistance
virtual Real getShadowFarDistance(void) const
Gets the default maximum distance away from the camera that shadows will be visible.
Definition: OgreSceneManager.h:2762
Ogre::SceneManager::mCameras
CameraList mCameras
Central list of cameras - for easy memory management and lookup.
Definition: OgreSceneManager.h:409
OgreQuaternion.h
Ogre::SceneManager::ShadowCasterSceneQueryListener::mCamera
const Camera * mCamera
Definition: OgreSceneManager.h:893
Ogre::SceneManager::createBillboardSet
virtual BillboardSet * createBillboardSet(unsigned int poolSize=20)
Creates a new BillboardSet for use with this scene manager, with a generated name.
Ogre::SceneManager::setFog
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.
Ogre::SceneManager::SkyDomeGenParameters::skyDomeYSegments
int skyDomeYSegments
Definition: OgreSceneManager.h:201
Ogre::Material
Class encapsulates rendering properties of an object.
Definition: OgreMaterial.h:89
Ogre::DefaultSphereSceneQuery::~DefaultSphereSceneQuery
~DefaultSphereSceneQuery()
Ogre::uint16
unsigned short uint16
Definition: OgrePlatform.h:360
Ogre::SceneManager::createEntity
virtual Entity * createEntity(const String &meshName)
Create an Entity (instance of a discrete mesh) with an autogenerated name.
Ogre::SceneManager::_setDestinationRenderSystem
virtual void _setDestinationRenderSystem(RenderSystem *sys)
Notifies the scene manager of its destination render system.
OgreInstanceManager.h
Ogre::SceneManager::mShadowCasterList
ShadowCasterList mShadowCasterList
Definition: OgreSceneManager.h:852
Ogre::SceneManager::PrefabType
PrefabType
Prefab shapes available without loading a model.
Definition: OgreSceneManager.h:1371
Ogre::MovableObject
Abstract class defining a movable object in a scene.
Definition: OgreMovableObject.h:61
Ogre::SceneManager::fireShadowTexturesUpdated
virtual void fireShadowTexturesUpdated(size_t numberOfShadowTextures)
Internal method for firing the texture shadows updated event.
Ogre::SceneManager::getShadowTextureCount
size_t getShadowTextureCount(void) const
Get the number of the textures allocated for texture based shadows.
Definition: OgreSceneManager.h:2857
Ogre::SceneManager::mFindVisibleObjects
bool mFindVisibleObjects
Definition: OgreSceneManager.h:874
Ogre::VisibleObjectsBoundsInfo::minDistanceInFrustum
Real minDistanceInFrustum
The closest a object in the frustum regardless of visibility / shadow caster flags.
Definition: OgreSceneManager.h:97
Ogre::SceneManager::setOption
virtual bool setOption(const String &strKey, const void *pValue)
Method for setting a specific option of the Scene Manager.
Definition: OgreSceneManager.h:1746
Ogre::SceneManager::setSkyBox
virtual void setSkyBox(bool enable, const String &materialName, Real distance=5000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky box' i.e.
Ogre::SceneManager::lightsForShadowTextureLess::operator()
_OgreExport bool operator()(const Light *l1, const Light *l2) const
Ogre::SceneManager::destroyAllMovableObjectsByType
virtual void destroyAllMovableObjectsByType(const String &typeName)
Destroy all MovableObjects of a given type.
Ogre::SceneManager::buildAndSetLightClip
virtual ClipResult buildAndSetLightClip(const LightList &ll)
Build a set of user clip planes from a single non-directional light.
Ogre::SceneManager::mFogMode
FogMode mFogMode
Definition: OgreSceneManager.h:468
Ogre::HardwareIndexBufferSharedPtr
Shared pointer implementation used to share index buffers.
Definition: OgreHardwareIndexBuffer.h:80
Ogre::DefaultAxisAlignedBoxSceneQuery::DefaultAxisAlignedBoxSceneQuery
DefaultAxisAlignedBoxSceneQuery(SceneManager *creator)
Ogre::SceneManager::setShadowFarDistance
virtual void setShadowFarDistance(Real distance)
Sets the default maximum distance away from the camera that shadows will be visible.
Ogre::SceneManager::getParticleSystem
virtual ParticleSystem * getParticleSystem(const String &name) const
Retrieves a pointer to the named ParticleSystem.
Ogre::SceneManager::OGRE_MUTEX
OGRE_MUTEX(mAnimationsListMutex)
Ogre::SceneManager::mShadowTextures
ShadowTextureList mShadowTextures
Definition: OgreSceneManager.h:746
Ogre::ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME
static String AUTODETECT_RESOURCE_GROUP_NAME
Special resource group name which causes resource group to be automatically determined based on searc...
Definition: OgreResourceGroupManager.h:270
Ogre::SceneManager::createLight
virtual Light * createLight(const String &name)
Creates a light for use in the scene.
Ogre::SceneManager::destroySceneNode
virtual void destroySceneNode(SceneNode *sn)
Destroys a SceneNode.
Ogre::SceneManager::createIntersectionQuery
virtual IntersectionSceneQuery * createIntersectionQuery(uint32 mask=0xFFFFFFFF)
Creates an IntersectionSceneQuery for this scene manager.
Ogre::IntersectionSceneQuery
Separate SceneQuery class to query for pairs of objects which are possibly intersecting one another.
Definition: OgreSceneQuery.h:514
Ogre::SceneManager::destroyAnimationState
virtual void destroyAnimationState(const String &name)
Destroys an AnimationState.
Ogre::SceneManager::_queueSkiesForRendering
virtual void _queueSkiesForRendering(Camera *cam)
Internal method for queueing the sky objects with the params as previously set through setSkyBox,...
Ogre::SceneManager::mLightClippingInfoMap
LightClippingInfoMap mLightClippingInfoMap
Definition: OgreSceneManager.h:765
Ogre::SceneManager::validatePassForRendering
virtual bool validatePassForRendering(const Pass *pass)
Internal method to validate whether a Pass should be allowed to render.
Ogre::SceneManager::fireRenderSingleObject
virtual void fireRenderSingleObject(Renderable *rend, const Pass *pass, const AutoParamDataSource *source, const LightList *pLightList, bool suppressRenderStateChanges)
Internal method for firing when rendering a single object.
Ogre::ManualObject
Class providing a much simplified interface to generating manual objects with custom geometry.
Definition: OgreManualObject.h:107
OgreShadowCameraSetup.h
Ogre::SceneManager::_populateLightList
virtual void _populateLightList(const Vector3 &position, Real radius, LightList &destList, uint32 lightMask=0xFFFFFFFF)
Populate a light list with an ordered set of the lights which are closest to the position specified.
Ogre::SceneManager::AnimationIterator
MapIterator< AnimationList > AnimationIterator
Definition: OgreSceneManager.h:2649
Ogre::uint32
unsigned int uint32
Definition: OgrePlatform.h:359
Ogre::SceneManager::getName
const String & getName(void) const
Return the instance name of this SceneManager.
Definition: OgreSceneManager.h:1065
Ogre::SceneManager::CameraIterator
MapIterator< CameraList > CameraIterator
Definition: OgreSceneManager.h:2648
Ogre::SceneManager::getFogStart
virtual Real getFogStart(void) const
Returns the fog start distance for the scene.
Ogre::InstanceManager::InstancingTechnique
InstancingTechnique
Definition: OgreInstanceManager.h:67
Ogre::SceneManager::FRUSTUM_TYPE_MASK
static uint32 FRUSTUM_TYPE_MASK
Query type mask which will be used for frusta and cameras.
Definition: OgreSceneManager.h:157
Ogre::DefaultSphereSceneQuery
Default implementation of SphereSceneQuery.
Definition: OgreSceneManager.h:3576
Ogre::SceneManager::hasInstanceManager
virtual bool hasInstanceManager(const String &managerName) const
Returns whether an InstanceManager with the given name exists.
Ogre::BillboardSet
A collection of billboards (faces which are always facing the given direction) with the same (default...
Definition: OgreBillboardSet.h:111
Ogre::SceneManager::mActiveCompositorChain
CompositorChain * mActiveCompositorChain
Definition: OgreSceneManager.h:728
Ogre::SceneManager::destroyStaticGeometry
virtual void destroyStaticGeometry(StaticGeometry *geom)
Remove & destroy a StaticGeometry instance.
Ogre::SceneManager::destroyInstancedGeometry
virtual void destroyInstancedGeometry(const String &name)
Remove & destroy a InstancedGeometry instance.
Ogre::SceneManager::SkyDomeGenParameters::skyDomeXSegments
int skyDomeXSegments
Definition: OgreSceneManager.h:200
Ogre::SceneManager::createParticleSystem
virtual ParticleSystem * createParticleSystem(const String &name, const String &templateName)
Creates a particle system based on a template.
Ogre::SceneManager::mSkyBoxOrientation
Quaternion mSkyBoxOrientation
Definition: OgreSceneManager.h:459
Ogre::SceneManager::setShadowTextureSize
virtual void setShadowTextureSize(unsigned short size)
Set the size of the texture used for all texture-based shadows.
Ogre::SceneManager::LightInfoList
vector< LightInfo >::type LightInfoList
Definition: OgreSceneManager.h:531
Ogre::AxisAlignedBoxSceneQuery
Specialises the SceneQuery class for querying within an axis aligned box.
Definition: OgreSceneQuery.h:271
OgreLodListener.h
Ogre::String
_StringBase String
Definition: OgrePrerequisites.h:439
Ogre::SceneManager::mNormaliseNormalsOnScale
bool mNormaliseNormalsOnScale
Definition: OgreSceneManager.h:484
Ogre::SceneManager::hasRibbonTrail
virtual bool hasRibbonTrail(const String &name) const
Returns whether a ribbon trail with the given name exists.
Ogre::SceneManager::destroyAllInstancedGeometry
virtual void destroyAllInstancedGeometry(void)
Remove & destroy all InstancedGeometry instances.
Ogre::SceneManager::resetScissor
virtual void resetScissor()
Ogre::SceneManager::renderSingleObject
virtual void renderSingleObject(Renderable *rend, const Pass *pass, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0)
Internal utility method for rendering a single object.
Ogre::SceneManager::createInstancedEntity
virtual InstancedEntity * createInstancedEntity(const String &materialName, const String &managerName)
Creates an InstancedEntity based on an existing InstanceManager (.
Ogre::SceneManager::destroyRibbonTrail
virtual void destroyRibbonTrail(const String &name)
Removes & destroys a RibbonTrail from the SceneManager.
Ogre::StaticGeometry
Pre-transforms and batches up meshes for efficient use as static geometry in a scene.
Definition: OgreStaticGeometry.h:122
Ogre::ViewPoint::orientation
Quaternion orientation
Definition: OgreSceneManager.h:73
OgreResourceGroupManager.h
Ogre::SceneTypeMask
uint16 SceneTypeMask
Bitmask containing scene types.
Definition: OgreSceneManager.h:3607
Ogre::SceneManager::hasEntity
virtual bool hasEntity(const String &name) const
Returns whether an entity with the given name exists.
Ogre::SceneManager::getFogEnd
virtual Real getFogEnd(void) const
Returns the fog end distance for the scene.
Ogre::SceneManager::findShadowCastersForLight
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 give...
Ogre::SceneManagerFactory::getMetaData
virtual const SceneManagerMetaData & getMetaData(void) const
Get information about the SceneManager type created by this factory.
Definition: OgreSceneManager.h:3648
Ogre::Pass
Class defining a single pass of a Technique (of a Material), i.e.
Definition: OgrePass.h:81
Ogre::SceneManager::SpecialCaseRenderQueueList
set< uint8 >::type SpecialCaseRenderQueueList
Definition: OgreSceneManager.h:474
Ogre::SceneManager::mShadowIndexBuffer
HardwareIndexBufferSharedPtr mShadowIndexBuffer
Definition: OgreSceneManager.h:738
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::transparentShadowCastersMode
bool transparentShadowCastersMode
Are we in transparent shadow caster mode?
Definition: OgreSceneManager.h:373
Ogre::SceneManager::SceneNodeList
map< String, SceneNode * >::type SceneNodeList
Definition: OgreSceneManager.h:419
Ogre::SceneManager::setShadowTextureSettings
virtual void setShadowTextureSettings(unsigned short size, unsigned short count, PixelFormat fmt=PF_X8R8G8B8, unsigned short fsaa=0, uint16 depthBufferPoolId=1)
Sets the size and count of textures used in texture-based shadows.
Ogre::SceneManager::LIGHT_TYPE_MASK
static uint32 LIGHT_TYPE_MASK
Query type mask which will be used for lights.
Definition: OgreSceneManager.h:155
Ogre::SceneManager::LightClippingInfoMap
map< Light *, LightClippingInfo >::type LightClippingInfoMap
Definition: OgreSceneManager.h:764
Ogre::SceneManager::mShadowAdditiveLightClip
bool mShadowAdditiveLightClip
Definition: OgreSceneManager.h:753
Ogre::SceneManager::mMovableObjectCollectionMap
MovableObjectCollectionMap mMovableObjectCollectionMap
Definition: OgreSceneManager.h:547
Ogre::SceneManager::ENTITY_TYPE_MASK
static uint32 ENTITY_TYPE_MASK
Query type mask which will be used for entities.
Definition: OgreSceneManager.h:149
Ogre::SceneManager::getFlipCullingOnNegativeScale
virtual bool getFlipCullingOnNegativeScale() const
Get whether to automatically flip the culling mode on objects whenever they are negatively scaled.
Definition: OgreSceneManager.h:3385
Ogre::SHADOWTYPE_NONE
@ SHADOWTYPE_NONE
No shadows.
Definition: OgreCommon.h:193
Ogre::SceneManager::fireRenderQueueStarted
virtual bool fireRenderQueueStarted(uint8 id, const String &invocation)
Internal method for firing the queue start event, returns true if queue is to be skipped.
Ogre::SceneManager::_getCombinedVisibilityMask
uint32 _getCombinedVisibilityMask(void) const
Internal method for getting the combination between the global visibility mask and the per-viewport v...
Ogre::SceneManager::Listener::shadowTextureCasterPreViewProj
virtual void shadowTextureCasterPreViewProj(Light *light, Camera *camera, size_t iteration)
This event occurs just before the view & projection matrices are set for rendering into a shadow text...
Definition: OgreSceneManager.h:303
Ogre::SceneManager::mShadowTextureCustomReceiverPass
Pass * mShadowTextureCustomReceiverPass
Definition: OgreSceneManager.h:862
Ogre::SceneManager::_notifyMovableObjectLodChanged
void _notifyMovableObjectLodChanged(MovableObjectLodChangedEvent &evt)
Notify that a movable object LOD change event has occurred.
Ogre::SceneManager::getShadowCasterRenderBackFaces
virtual bool getShadowCasterRenderBackFaces() const
Gets whether or not shadow casters should be rendered into shadow textures using their back faces rat...
Definition: OgreSceneManager.h:3006
Ogre::SceneManager::getRibbonTrail
virtual RibbonTrail * getRibbonTrail(const String &name) const
Retrieves a pointer to the named RibbonTrail.
Ogre::SceneManagerFactory
Class which will create instances of a given SceneManager.
Definition: OgreSceneManager.h:3638
Ogre::SceneManager::renderBasicQueueGroupObjects
virtual void renderBasicQueueGroupObjects(RenderQueueGroup *pGroup, QueuedRenderableCollection::OrganisationMode om)
Render a group in the ordinary way.
Ogre::NameValuePairList
map< String, String >::type NameValuePairList
Name / value parameter pair (first = name, second = value)
Definition: OgreCommon.h:550
Ogre::SceneManager::setLateMaterialResolving
virtual void setLateMaterialResolving(bool isLate)
Sets whether to use late material resolving or not.
Definition: OgreSceneManager.h:3096
Ogre::SceneManager::mSceneRoot
SceneNode * mSceneRoot
Root scene node.
Definition: OgreSceneManager.h:435
Ogre::VisibleObjectsBoundsInfo
Structure collecting together information about the visible objects that have been discovered in a sc...
Definition: OgreSceneManager.h:87
Ogre::SceneManager::mShadowTextureCustomCasterVPParams
GpuProgramParametersSharedPtr mShadowTextureCustomCasterVPParams
Definition: OgreSceneManager.h:867
Ogre::SceneManager::materialLess::operator()
_OgreExport bool operator()(const Material *x, const Material *y) const
Ogre::SceneManager::ShadowCasterSceneQueryListener::ShadowCasterSceneQueryListener
ShadowCasterSceneQueryListener(SceneManager *sm)
Definition: OgreSceneManager.h:897
Ogre::SceneManagerMetaData::typeName
String typeName
A globally unique string identifying the scene manager type.
Definition: OgreSceneManager.h:3625
Ogre::SceneManager::mAnimationsList
AnimationList mAnimationsList
Definition: OgreSceneManager.h:639
Ogre::SceneManager::mAutoTrackingSceneNodes
AutoTrackingSceneNodes mAutoTrackingSceneNodes
Definition: OgreSceneManager.h:439
Ogre::Entity
Defines an instance of a discrete, movable object based on a Mesh.
Definition: OgreEntity.h:83
Ogre::SceneManager::mSkyDomeEnabled
bool mSkyDomeEnabled
Definition: OgreSceneManager.h:462
Ogre::SceneManager::setShadowTextureFadeEnd
virtual void setShadowTextureFadeEnd(Real fadeEnd)
Sets the proportional distance at which texture shadows finish to fading out.
Definition: OgreSceneManager.h:2927
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::visit
void visit(RenderablePass *rp)
Called when visiting a RenderablePass, i.e.
Ogre::SceneManager::mSkyBoxObj
ManualObject * mSkyBoxObj
Definition: OgreSceneManager.h:445
Ogre::AnimationState
Represents the state of an animation and the weight of its influence.
Definition: OgreAnimationState.h:55
Ogre::SceneNode
Class representing a node in the scene graph.
Definition: OgreSceneNode.h:59
Ogre::SceneManager::hasBillboardChain
virtual bool hasBillboardChain(const String &name) const
Returns whether a billboard chain with the given name exists.
Ogre::SceneManager::_getLightsAffectingFrustum
virtual const LightList & _getLightsAffectingFrustum(void) const
Get the list of lights which could be affecting the frustum.
Ogre::SceneManager::FX_TYPE_MASK
static uint32 FX_TYPE_MASK
Query type mask which will be used for effects like billboardsets / particle systems.
Definition: OgreSceneManager.h:151
Ogre::SceneManager::destroyParticleSystem
virtual void destroyParticleSystem(ParticleSystem *obj)
Removes & destroys a ParticleSystem from the SceneManager.
Ogre::SceneManager::setShadowDirLightTextureOffset
virtual void setShadowDirLightTextureOffset(Real offset)
Sets the proportional distance which a texture shadow which is generated from a directional light wil...
Definition: OgreSceneManager.h:2906
Ogre::SceneManager::destroyAllAnimations
virtual void destroyAllAnimations(void)
Removes all animations created using this SceneManager.
Ogre::SceneManager::removeSpecialCaseRenderQueue
virtual void removeSpecialCaseRenderQueue(uint8 qid)
Removes an item to the 'special case' render queue list.
Ogre::SceneManager::destroyAllEntities
virtual void destroyAllEntities(void)
Removes & destroys all Entities.
Ogre::SceneManagerFactory::SceneManagerFactory
SceneManagerFactory()
Definition: OgreSceneManager.h:3645
Ogre::SceneManager::getSkyBoxNode
virtual SceneNode * getSkyBoxNode(void) const
Get the skybox node, if enabled.
Definition: OgreSceneManager.h:2079
Ogre::RenderObjectListener
Abstract interface which classes must implement if they wish to receive events from the scene manager...
Definition: OgreRenderObjectListener.h:44
Ogre::ViewPoint::position
Vector3 position
Definition: OgreSceneManager.h:72
Ogre::SceneManagerFactory::mMetaData
SceneManagerMetaData mMetaData
Definition: OgreSceneManager.h:3640
Ogre::SceneManager::getAmbientLight
const ColourValue & getAmbientLight(void) const
Returns the ambient light level to be used for the scene.
Ogre::SceneManager::setFindVisibleObjects
virtual void setFindVisibleObjects(bool find)
Sets whether the SceneManager should search for visible objects, or whether they are being manually h...
Definition: OgreSceneManager.h:3350
Ogre::InstancedGeometry
Pre-transforms and batches up meshes for efficient use as instanced geometry in a scene.
Definition: OgreInstancedGeometry.h:106
Ogre::SceneManager::PT_CUBE
@ PT_CUBE
Definition: OgreSceneManager.h:1373
Ogre::SceneManager::destroyEntity
virtual void destroyEntity(const String &name)
Removes & destroys an Entity from the SceneManager by name.
Ogre::SceneManager::lightLess::operator()
_OgreExport bool operator()(const Light *a, const Light *b) const
Ogre::operator!=
bool operator!=(STLAllocator< T, P > const &, STLAllocator< T2, P > const &)
determine equality, can memory from another allocator be released by this allocator,...
Definition: OgreMemorySTLAllocator.h:202
Ogre::SceneManager::setShadowTextureCasterMaterial
virtual void setShadowTextureCasterMaterial(const String &name)
Sets the default material to use for rendering shadow casters.
Ogre::DefaultRaySceneQuery::execute
void execute(RaySceneQueryListener *listener)
See RayScenQuery.
Ogre::SceneManager::createEntity
virtual Entity * createEntity(const String &entityName, PrefabType ptype)
Create an Entity (instance of a discrete mesh) from a range of prefab shapes.
Ogre::SceneManager::mSkyDomeOrientation
Quaternion mSkyDomeOrientation
Definition: OgreSceneManager.h:464
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor
Inner helper class to implement the visitor pattern for rendering objects in a queue.
Definition: OgreSceneManager.h:358
Ogre::SceneManager::setShadowUseInfiniteFarPlane
virtual void setShadowUseInfiniteFarPlane(bool enable)
Sets whether we should use an inifinite camera far plane when rendering stencil shadows.
Definition: OgreSceneManager.h:3056
Ogre::QueuedRenderableVisitor
Visitor interface for items in a QueuedRenderableCollection.
Definition: OgreRenderQueueSortingGrouping.h:70
Ogre::SceneManager::getShadowTechnique
virtual ShadowTechnique getShadowTechnique(void) const
Gets the current shadow technique.
Definition: OgreSceneManager.h:2706
Ogre::SceneManager::fireRenderQueueEnded
virtual bool fireRenderQueueEnded(uint8 id, const String &invocation)
Internal method for firing the queue end event, returns true if queue is to be repeated.
Ogre::SceneManager::firePostFindVisibleObjects
virtual void firePostFindVisibleObjects(Viewport *v)
Internal method for firing find visible objects event.
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::targetSceneMgr
SceneManager * targetSceneMgr
Target SM to send renderables to.
Definition: OgreSceneManager.h:371
Ogre::QueuedRenderableCollection::OrganisationMode
OrganisationMode
Organisation modes required for this collection.
Definition: OgreRenderQueueSortingGrouping.h:125
Ogre::SceneManager::getVisibilityMask
virtual uint32 getVisibilityMask(void)
Gets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is ...
Definition: OgreSceneManager.h:3337
Ogre::SceneManager::mSceneNodes
SceneNodeList mSceneNodes
Central list of SceneNodes - for easy memory management.
Definition: OgreSceneManager.h:427
Ogre::Quaternion
Implementation of a Quaternion, i.e.
Definition: OgreQuaternion.h:58
Ogre::RibbonTrail
Subclass of BillboardChain which automatically leaves a trail behind one or more Node instances.
Definition: OgreRibbonTrail.h:72
Ogre::SceneManager::createEntity
virtual Entity * createEntity(const MeshPtr &pMesh)
Create an Entity (instance of a discrete mesh) with an autogenerated name.
Ogre::SceneManager::ListenerList
vector< Listener * >::type ListenerList
Definition: OgreSceneManager.h:657
Ogre::SceneManager::fireShadowTexturesPreCaster
virtual void fireShadowTexturesPreCaster(Light *light, Camera *camera, size_t iteration)
Internal method for firing the pre caster texture shadows event.
Ogre::SceneManager::setAmbientLight
void setAmbientLight(const ColourValue &colour)
Sets the ambient light level to be used for the scene.
Ogre::SceneManager::clearSpecialCaseRenderQueues
virtual void clearSpecialCaseRenderQueues(void)
Clears the 'special case' render queue list.
Ogre::SceneManager::LightInfo::range
Real range
Use int instead of Light::LightTypes to avoid header file dependence.
Definition: OgreSceneManager.h:515
Ogre::SceneManager::mShadowTextureCustomReceiverVPParams
GpuProgramParametersSharedPtr mShadowTextureCustomReceiverVPParams
Definition: OgreSceneManager.h:869
Ogre::StringUtil::BLANK
static const String BLANK
Constant blank string, useful for returning by ref where local does not exist.
Definition: OgreString.h:196
Ogre::SceneManager::setWorldGeometry
virtual void setWorldGeometry(DataStreamPtr &stream, const String &typeName=StringUtil::BLANK)
Sets the source of the 'world' geometry, i.e.
Ogre::SceneManager::mShadowTechnique
ShadowTechnique mShadowTechnique
Definition: OgreSceneManager.h:731
Ogre::SceneManager::_resumeRendering
virtual void _resumeRendering(RenderContext *context)
Resume rendering of the frame.
Ogre::DefaultIntersectionSceneQuery::execute
void execute(IntersectionSceneQueryListener *listener)
See IntersectionSceneQuery.
Ogre::VisibleObjectsBoundsInfo::VisibleObjectsBoundsInfo
VisibleObjectsBoundsInfo()
Ogre::SceneManager::mShadowDebugPass
Pass * mShadowDebugPass
Definition: OgreSceneManager.h:734
Ogre::SceneManager::mFogStart
Real mFogStart
Definition: OgreSceneManager.h:470
Ogre::SceneManager::mRenderQueue
RenderQueue * mRenderQueue
Queue of objects for rendering.
Definition: OgreSceneManager.h:396
Ogre::SceneManager::setFlipCullingOnNegativeScale
virtual void setFlipCullingOnNegativeScale(bool n)
Set whether to automatically flip the culling mode on objects whenever they are negatively scaled.
Definition: OgreSceneManager.h:3380
Ogre::SceneManager::mCameraRelativeRendering
bool mCameraRelativeRendering
Whether to use camera-relative rendering.
Definition: OgreSceneManager.h:987
Ogre::SceneManager::destroyAllStaticGeometry
virtual void destroyAllStaticGeometry(void)
Remove & destroy all StaticGeometry instances.
Ogre::SceneManager::_renderScene
virtual void _renderScene(Camera *camera, Viewport *vp, bool includeOverlays)
Prompts the class to send its contents to the renderer.
Ogre::EntityMaterialLodChangedEvent
Struct containing information about a material LOD change event for entities.
Definition: OgreLodListener.h:74
Ogre::SceneManager::destroyMovableObject
virtual void destroyMovableObject(MovableObject *m)
Destroys a MovableObject.
Ogre::SceneManager::getNormaliseNormalsOnScale
virtual bool getNormaliseNormalsOnScale() const
Get whether to automatically normalise normals on objects whenever they are scaled.
Definition: OgreSceneManager.h:3370
OgreHeaderPrefix.h
Ogre::Matrix4
Class encapsulating a standard 4x4 homogeneous matrix.
Definition: OgreMatrix4.h:79
Ogre::SceneManagerMetaData::worldGeometrySupported
bool worldGeometrySupported
Flag indicating whether world geometry is supported.
Definition: OgreSceneManager.h:3631
Ogre::SceneManager::mSpecialCaseQueueMode
SpecialCaseRenderQueueMode mSpecialCaseQueueMode
Definition: OgreSceneManager.h:476
Ogre::SceneManager::SkyPlaneGenParameters::skyPlaneBow
Real skyPlaneBow
Definition: OgreSceneManager.h:209
Ogre::SceneManager::mShadowTextureCameras
ShadowTextureCameraList mShadowTextureCameras
Definition: OgreSceneManager.h:749
Ogre::SceneManager::_setActiveCompositorChain
virtual void _setActiveCompositorChain(CompositorChain *chain)
Sets the active compositor chain of the current scene being rendered.
Definition: OgreSceneManager.h:3089
OgreInstancedGeometry.h
Ogre::NameGenerator
Utility class to generate a sequentially numbered series of names.
Definition: OgreNameGenerator.h:57
Ogre::SceneManager::removeRenderQueueListener
virtual void removeRenderQueueListener(RenderQueueListener *delListener)
Removes a listener previously added with addRenderQueueListener.
Ogre::SceneManager::SCRQM_INCLUDE
@ SCRQM_INCLUDE
Render only the queues in the special case list.
Definition: OgreSceneManager.h:190
Ogre::SceneManager::mLateMaterialResolving
bool mLateMaterialResolving
Definition: OgreSceneManager.h:729
Ogre::SceneManager::mWorldGeometryRenderQueue
uint8 mWorldGeometryRenderQueue
Definition: OgreSceneManager.h:477
Ogre::SceneManager::mLastRenderQueueInvocationCustom
bool mLastRenderQueueInvocationCustom
Definition: OgreSceneManager.h:397
Ogre::SceneManager::createRibbonTrail
virtual RibbonTrail * createRibbonTrail(const String &name)
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follow...
Ogre::SceneManager::isShadowTechniqueInUse
virtual bool isShadowTechniqueInUse(void) const
Is there any shadowing technique in use?
Definition: OgreSceneManager.h:3075
Ogre::PixelFormat
PixelFormat
The pixel format used for images, textures, and render surfaces.
Definition: OgrePixelFormat.h:44
Ogre::SceneManager
Manages the organisation and rendering of a 'scene' i.e.
Definition: OgreSceneManager.h:144
Ogre::SceneManager::LightClippingInfo::scissorRect
RealRect scissorRect
Definition: OgreSceneManager.h:757
Ogre::SceneManager::createPlaneBoundedVolumeQuery
virtual PlaneBoundedVolumeListSceneQuery * createPlaneBoundedVolumeQuery(const PlaneBoundedVolumeList &volumes, uint32 mask=0xFFFFFFFF)
Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
Ogre::SceneManager::mShadowTextureFadeEnd
Real mShadowTextureFadeEnd
As a proportion e.g. 0.6.
Definition: OgreSceneManager.h:859
Ogre::SceneManager::EntityMeshLodChangedEventList
vector< EntityMeshLodChangedEvent >::type EntityMeshLodChangedEventList
List of entity mesh LOD changed events.
Definition: OgreSceneManager.h:1020
Ogre::SceneManager::extractAllMovableObjectsByType
virtual void extractAllMovableObjectsByType(const String &typeName)
Extract all injected MovableObjects of a given type.
Ogre::SceneManager::mFullScreenQuad
Rectangle2D * mFullScreenQuad
Definition: OgreSceneManager.h:741
Ogre::SceneManager::destroyAllCameras
virtual void destroyAllCameras(void)
Removes (and destroys) all cameras from the scene.
Ogre::RenderQueueInvocationSequence
Class to hold a linear sequence of RenderQueueInvocation objects.
Definition: OgreRenderQueueInvocation.h:174
Ogre::SceneManager::createSceneNodeImpl
virtual SceneNode * createSceneNodeImpl(const String &name)
Subclasses can override this to ensure their specialised SceneNode is used.
Ogre::SceneManager::mCameraInProgress
Camera * mCameraInProgress
Camera in progress.
Definition: OgreSceneManager.h:430
Ogre::SceneManager::destroyEntity
virtual void destroyEntity(Entity *ent)
Removes & destroys an Entity from the SceneManager.
Ogre::Viewport
An abstraction of a viewport, i.e.
Definition: OgreViewport.h:58
Ogre::SceneManagerMetaData::sceneTypeMask
SceneTypeMask sceneTypeMask
A mask describing which sorts of scenes this manager can handle.
Definition: OgreSceneManager.h:3629
Ogre::SceneManager::fireShadowTexturesPreReceiver
virtual void fireShadowTexturesPreReceiver(Light *light, Frustum *f)
Internal method for firing the pre receiver texture shadows event.
Ogre::SceneManager::SkyDomeGenParameters::skyDomeYSegments_keep
int skyDomeYSegments_keep
Definition: OgreSceneManager.h:202
Ogre::SceneManager::getSkyBoxGenParameters
virtual const SkyBoxGenParameters & getSkyBoxGenParameters(void) const
Get the parameters used to generate the current SkyBox, if any.
Definition: OgreSceneManager.h:2082
Ogre::SceneManager::renderVisibleObjectsCustomSequence
virtual void renderVisibleObjectsCustomSequence(RenderQueueInvocationSequence *s)
Internal method for rendering all objects using a custom queue sequence.
OgrePrerequisites.h
Ogre::SceneManager::getShadowColour
virtual const ColourValue & getShadowColour(void) const
Get the colour used to modulate areas in shadow.
Ogre::SceneManager::ensureShadowTexturesCreated
virtual void ensureShadowTexturesCreated()
Internal method for creating shadow textures (texture-based shadows)
Ogre::SceneManager::getShadowTextureCountPerLightType
size_t getShadowTextureCountPerLightType(Light::LightTypes type) const
Get the number of shadow textures is assigned for the given light type.
Definition: OgreSceneManager.h:2871
Ogre::SceneManager::mSkyPlaneEntity
Entity * mSkyPlaneEntity
Definition: OgreSceneManager.h:443
Ogre::SceneManager::createInstanceManager
virtual InstanceManager * createInstanceManager(const String &customName, const String &meshName, const String &groupName, InstanceManager::InstancingTechnique technique, size_t numInstancesPerBatch, uint16 flags=0, unsigned short subMeshIdx=0)
Creates an InstanceManager interface to create & manipulate instanced entities You need to call this ...
Ogre::SceneManager::mInstanceManagerMap
InstanceManagerMap mInstanceManagerMap
Definition: OgreSceneManager.h:417
Ogre::SceneManager::LightInfo::light
Light * light
Definition: OgreSceneManager.h:513
Ogre::SceneManager::getFogDensity
virtual Real getFogDensity(void) const
Returns the fog density for the scene.
Ogre::DefaultPlaneBoundedVolumeListSceneQuery::DefaultPlaneBoundedVolumeListSceneQuery
DefaultPlaneBoundedVolumeListSceneQuery(SceneManager *creator)
OgreTexture.h
Ogre::SceneManager::mRenderObjectListeners
RenderObjectListenerList mRenderObjectListeners
Definition: OgreSceneManager.h:656
Ogre::SceneManager::mShadowTextureCustomCasterFragmentProgram
String mShadowTextureCustomCasterFragmentProgram
Definition: OgreSceneManager.h:864
Ogre::SceneManager::destroyAllRibbonTrails
virtual void destroyAllRibbonTrails(void)
Removes & destroys all RibbonTrails from the SceneManager.
Ogre::SceneManager::mDebugShadows
bool mDebugShadows
Definition: OgreSceneManager.h:732
Ogre::SceneManager::setVisibilityMask
virtual void setVisibilityMask(uint32 vmask)
Sets a mask which is bitwise 'and'ed with objects own visibility masks to determine if the object is ...
Definition: OgreSceneManager.h:3332
Ogre::SceneManager::Listener::Listener
Listener()
Definition: OgreSceneManager.h:225
Ogre::SceneManager::ShadowCamLightMapping
map< const Camera *, const Light * >::type ShadowCamLightMapping
ShadowCamera to light mapping.
Definition: OgreSceneManager.h:501
Ogre::VisibleObjectsBoundsInfo::receiverAabb
AxisAlignedBox receiverAabb
The axis-aligned bounds of the visible shadow receiver objects.
Definition: OgreSceneManager.h:91
Ogre::SceneManager::setWorldGeometry
virtual void setWorldGeometry(const String &filename)
Sets the source of the 'world' geometry, i.e.
Ogre::DefaultIntersectionSceneQuery::DefaultIntersectionSceneQuery
DefaultIntersectionSceneQuery(SceneManager *creator)
Ogre::SceneManager::getLightClippingPlanes
virtual const PlaneList & getLightClippingPlanes(Light *l)
Retrieve a set of clipping planes for a given light.
Ogre::DefaultRaySceneQuery::~DefaultRaySceneQuery
~DefaultRaySceneQuery()
Ogre::RENDER_QUEUE_SKIES_EARLY
@ RENDER_QUEUE_SKIES_EARLY
First queue (after backgrounds), used for skyboxes if rendered first.
Definition: OgreRenderQueue.h:58
Ogre::SceneManager::getCamera
virtual Camera * getCamera(const String &name) const
Retrieves a pointer to the named camera.
Ogre::SceneManager::mShadowCasterSphereQuery
SphereSceneQuery * mShadowCasterSphereQuery
Definition: OgreSceneManager.h:853
Ogre::SceneManager::deriveShadowReceiverPass
virtual const Pass * deriveShadowReceiverPass(const Pass *pass)
Internal method for turning a regular pass into a shadow receiver pass.
Ogre::SceneManager::firePreFindVisibleObjects
virtual void firePreFindVisibleObjects(Viewport *v)
Internal method for firing find visible objects event.
Ogre::DefaultRaySceneQuery
Default implementation of RaySceneQuery.
Definition: OgreSceneManager.h:3566
Ogre::SceneManager::Listener::preUpdateSceneGraph
virtual void preUpdateSceneGraph(SceneManager *source, Camera *camera)
Called prior to updating the scene graph in this SceneManager.
Definition: OgreSceneManager.h:234
Ogre::SceneManager::RenderQueueListenerList
vector< RenderQueueListener * >::type RenderQueueListenerList
Definition: OgreSceneManager.h:652
Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME
static String DEFAULT_RESOURCE_GROUP_NAME
Default resource group name.
Definition: OgreResourceGroupManager.h:266
Ogre::SceneManager::mDefaultShadowFarDistSquared
Real mDefaultShadowFarDistSquared
Definition: OgreSceneManager.h:856
Ogre::SceneManager::setViewport
virtual void setViewport(Viewport *vp)
Internal method for setting the destination viewport for the next render.
Ogre::SceneManager::_handleLodEvents
void _handleLodEvents()
Handle LOD events.
Ogre::SceneManager::mLastLightLimit
unsigned short mLastLightLimit
Definition: OgreSceneManager.h:993
Ogre::SceneManager::createAABBQuery
virtual AxisAlignedBoxSceneQuery * createAABBQuery(const AxisAlignedBox &box, uint32 mask=0xFFFFFFFF)
Creates an AxisAlignedBoxSceneQuery for this scene manager.
Ogre::SceneManager::mShadowTextureSelfShadow
bool mShadowTextureSelfShadow
As a proportion e.g. 0.9.
Definition: OgreSceneManager.h:860
Ogre::SceneManager::ShadowCasterSceneQueryListener::mSceneMgr
SceneManager * mSceneMgr
Definition: OgreSceneManager.h:889
Ogre::SceneManager::setShadowUseLightClipPlanes
virtual void setShadowUseLightClipPlanes(bool enabled)
Sets whether when using a built-in additive shadow mode, user clip planes should be used to restrict ...
Definition: OgreSceneManager.h:3080
Ogre::SceneManager::mSkyDomeRenderQueue
uint8 mSkyDomeRenderQueue
Definition: OgreSceneManager.h:463
Ogre::SceneManager::createParticleSystem
virtual ParticleSystem * createParticleSystem(size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Create a blank particle system with a generated name.
Ogre::SceneManager::_setSkyPlane
virtual void _setSkyPlane(bool enable, const Plane &plane, const String &materialName, Real scale=1000, Real tiling=10, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, Real bow=0, int xsegments=1, int ysegments=1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky plane' i.e.
Ogre::SceneManager::mGpuParamsDirty
uint16 mGpuParamsDirty
Gpu params that need rebinding (mask of GpuParamVariability)
Definition: OgreSceneManager.h:996
Ogre::SceneManager::renderAdditiveTextureShadowedQueueGroupObjects
virtual void renderAdditiveTextureShadowedQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group with additive texture shadows.
Ogre::SceneManager::mLastFrameNumber
unsigned long mLastFrameNumber
Definition: OgreSceneManager.h:479
Ogre::SceneManager::SkyDomeGenParameters
Definition: OgreSceneManager.h:196
Ogre::SceneManager::getEntity
virtual Entity * getEntity(const String &name) const
Retrieves a pointer to the named Entity.
Ogre::SceneManager::MovableObjectCollection
Simple structure to hold MovableObject map and a mutex to go with it.
Definition: OgreSceneManager.h:542
Ogre::SceneManager::getAnimationIterator
AnimationIterator getAnimationIterator(void)
Returns a specialised MapIterator over all animations in the scene.
Definition: OgreSceneManager.h:2660
Ogre::SceneManager::ShadowCasterList
vector< ShadowCaster * >::type ShadowCasterList
Definition: OgreSceneManager.h:851
Ogre::SceneManager::createMovableObject
virtual MovableObject * createMovableObject(const String &name, const String &typeName, const NameValuePairList *params=0)
Create a movable object of the type specified.
Ogre::SceneManager::hasOption
virtual bool hasOption(const String &strKey) const
Method for verifying whether the scene manager has an implementation-specific option.
Definition: OgreSceneManager.h:1774
Ogre::SceneManager::IRS_NONE
@ IRS_NONE
No special illumination stage.
Definition: OgreSceneManager.h:176
Ogre::SceneManagerFactory::mMetaDataInit
bool mMetaDataInit
Definition: OgreSceneManager.h:3641
Ogre::AxisAlignedBox
A 3D box aligned with the x/y/z axes.
Definition: OgreAxisAlignedBox.h:55
Ogre::SceneManager::mShadowTextureConfigDirty
bool mShadowTextureConfigDirty
Definition: OgreSceneManager.h:745
_OgreExport
#define _OgreExport
Definition: OgrePlatform.h:257
Ogre::SceneManager::~SceneManager
virtual ~SceneManager()
Default destructor.
Ogre::SceneManager::destroyManualObject
virtual void destroyManualObject(const String &name)
Removes & destroys a ManualObject from the SceneManager.
Ogre::SceneManager::mShadowCasterAABBQuery
AxisAlignedBoxSceneQuery * mShadowCasterAABBQuery
Definition: OgreSceneManager.h:854
Ogre::SceneManager::destroyLight
virtual void destroyLight(Light *light)
Removes the light from the scene and destroys it based on a pointer.
Ogre::SceneManager::setViewMatrix
virtual void setViewMatrix(const Matrix4 &m)
Ogre::SceneManager::mCachedViewMatrix
Matrix4 mCachedViewMatrix
Definition: OgreSceneManager.h:988
OgreCommon.h
Ogre::SceneManager::mShadowTextureIndexLightList
vector< size_t >::type mShadowTextureIndexLightList
Array defining shadow texture index in light list.
Definition: OgreSceneManager.h:508
Ogre::SceneManager::isShadowTechniqueTextureBased
virtual bool isShadowTechniqueTextureBased(void) const
Is there a texture shadow based shadowing technique in use?
Definition: OgreSceneManager.h:3063
Ogre::ShadowTextureConfig
Structure containing the configuration for one shadow texture.
Definition: OgreShadowTextureManager.h:53
Ogre::SceneManager::_notifyLightsDirty
virtual void _notifyLightsDirty(void)
Advance method to increase the lights dirty counter due lights changed.
Ogre::SceneManager::LightInfo::type
int type
Just a pointer for comparison, the light might destroyed for some reason.
Definition: OgreSceneManager.h:514
Ogre::SceneManager::BoxPlane
BoxPlane
Definition: OgreSceneManager.h:608
Ogre::CullingMode
CullingMode
Hardware culling modes based on vertex winding.
Definition: OgreCommon.h:136
Ogre::SceneManager::setShadowCameraSetup
virtual void setShadowCameraSetup(const ShadowCameraSetupPtr &shadowSetup)
Set the shadow camera setup to use for all lights which don't have their own shadow camera setup.
Ogre::RenderSystem::RenderSystemContext
Definition: OgreRenderSystem.h:904
Ogre::SceneManager::mDefaultShadowFarDist
Real mDefaultShadowFarDist
Definition: OgreSceneManager.h:855
Ogre::SceneManager::createAnimation
virtual Animation * createAnimation(const String &name, Real length)
Creates an animation which can be used to animate scene nodes.
OgreShadowTextureManager.h
Ogre::SceneManager::mSuppressRenderStateChanges
bool mSuppressRenderStateChanges
Suppress render state changes?
Definition: OgreSceneManager.h:877
Ogre::SceneManager::updateRenderQueueSplitOptions
virtual void updateRenderQueueSplitOptions(void)
Update the state of the global render queue splitting based on a shadow option change.
Ogre::ST_EXTERIOR_FAR
@ ST_EXTERIOR_FAR
Definition: OgreSceneManager.h:3616
Ogre::SceneManager::STATICGEOMETRY_TYPE_MASK
static uint32 STATICGEOMETRY_TYPE_MASK
Query type mask which will be used for StaticGeometry.
Definition: OgreSceneManager.h:153
Ogre::SceneManager::mShadowTextureCustomReceiverFPParams
GpuProgramParametersSharedPtr mShadowTextureCustomReceiverFPParams
Definition: OgreSceneManager.h:870
Ogre::SceneManager::MovableObjectCollectionMap
map< String, MovableObjectCollection * >::type MovableObjectCollectionMap
Definition: OgreSceneManager.h:546
OgreSceneNode.h
Ogre::SceneManager::mVisibilityMask
uint32 mVisibilityMask
Visibility mask used to show / hide objects.
Definition: OgreSceneManager.h:873
Ogre::SceneManager::destroyInstancedEntity
virtual void destroyInstancedEntity(InstancedEntity *instancedEntity)
Removes an InstancedEntity,.
Ogre::SceneManager::useRenderableViewProjMode
virtual void useRenderableViewProjMode(const Renderable *pRend, bool fixedFunction)
Internal method used by _renderSingleObject to deal with renderables which override the camera's own ...
Ogre::ST_EXTERIOR_CLOSE
@ ST_EXTERIOR_CLOSE
Definition: OgreSceneManager.h:3615
Ogre::SceneManager::mAmbientLight
ColourValue mAmbientLight
Current ambient light, cached for RenderSystem.
Definition: OgreSceneManager.h:400
Ogre::SceneManager::mListeners
ListenerList mListeners
Definition: OgreSceneManager.h:658
Ogre::SceneManager::_getCurrentRenderStage
IlluminationRenderStage _getCurrentRenderStage()
Definition: OgreSceneManager.h:3549
Ogre::SceneManager::initShadowVolumeMaterials
virtual void initShadowVolumeMaterials(void)
Internal method for setting up materials for shadows.
Ogre::SceneManager::findLightsAffectingFrustum
virtual void findLightsAffectingFrustum(const Camera *camera)
Internal method for locating a list of lights which could be affecting the frustum.
Ogre::SceneManager::setShadowTextureFadeStart
virtual void setShadowTextureFadeStart(Real fadeStart)
Sets the proportional distance at which texture shadows begin to fade out.
Definition: OgreSceneManager.h:2918
Ogre::SceneManager::mResetIdentityView
bool mResetIdentityView
Definition: OgreSceneManager.h:481
Ogre::SceneManager::destroyLight
virtual void destroyLight(const String &name)
Removes the named light from the scene and destroys it.
Ogre::SceneManager::USER_TYPE_MASK_LIMIT
static uint32 USER_TYPE_MASK_LIMIT
User type mask limit.
Definition: OgreSceneManager.h:159
Ogre::SceneManager::hasAnimation
virtual bool hasAnimation(const String &name) const
Returns whether an animation with the given name exists.
Ogre::SceneManager::isLateMaterialResolving
virtual bool isLateMaterialResolving() const
Gets whether using late material resolving or not.
Definition: OgreSceneManager.h:3100
Ogre::SceneManager::createSphereQuery
virtual SphereSceneQuery * createSphereQuery(const Sphere &sphere, uint32 mask=0xFFFFFFFF)
Creates a SphereSceneQuery for this scene manager.
Ogre::SceneManager::LightClippingInfo::LightClippingInfo
LightClippingInfo()
Definition: OgreSceneManager.h:761
Ogre::Animation
An animation sequence.
Definition: OgreAnimation.h:93
Ogre::SceneManager::useLights
virtual void useLights(const LightList &lights, unsigned short limit)
Ogre::SceneManager::SpecialCaseRenderQueueMode
SpecialCaseRenderQueueMode
Enumeration of the possible modes allowed for processing the special case render queue list.
Definition: OgreSceneManager.h:188
Ogre::SHADOWDETAILTYPE_ADDITIVE
@ SHADOWDETAILTYPE_ADDITIVE
Mask for additive shadows (not for direct use, use SHADOWTYPE_ enum instead)
Definition: OgreCommon.h:196
Ogre::SceneManager::SkyPlaneGenParameters::skyPlaneXSegments
int skyPlaneXSegments
Definition: OgreSceneManager.h:210
Ogre::SceneManager::MovableObjectMap
map< String, MovableObject * >::type MovableObjectMap
Definition: OgreSceneManager.h:539
Ogre::SceneManager::hasParticleSystem
virtual bool hasParticleSystem(const String &name) const
Returns whether a particle system with the given name exists.
Ogre::ulong
unsigned long ulong
Definition: OgrePrerequisites.h:115
Ogre::SceneManager::destroyInstanceManager
virtual void destroyInstanceManager(InstanceManager *instanceManager)
Ogre::SceneManager::destroyRibbonTrail
virtual void destroyRibbonTrail(RibbonTrail *obj)
Removes & destroys a RibbonTrail from the SceneManager.
Ogre::SceneManager::Listener::~Listener
virtual ~Listener()
Definition: OgreSceneManager.h:226
Ogre::Sphere
A sphere primitive, mostly used for bounds checking.
Definition: OgreSphere.h:52
Ogre::SceneManager::_getActiveCompositorChain
virtual CompositorChain * _getActiveCompositorChain() const
Gets the active compositor chain of the current scene being rendered.
Definition: OgreSceneManager.h:3103
Ogre::SceneManager::_setPass
virtual const Pass * _setPass(const Pass *pass, bool evenIfSuppressed=false, bool shadowDerivation=true)
Internal method for setting up the renderstate for a rendering pass.
Ogre::ColourValue::White
static const ColourValue White
Definition: OgreColourValue.h:62
Ogre::Frustum
A frustum represents a pyramid, capped at the near and far end which is used to represent either a vi...
Definition: OgreFrustum.h:86
Ogre::SceneManager::SkyBoxGenParameters
Definition: OgreSceneManager.h:215
Ogre::SceneManager::getMovableObjectIterator
virtual MovableObjectIterator getMovableObjectIterator(const String &typeName)
Get an iterator over all MovableObect instances of a given type.
Ogre::SceneManager::_suppressShadows
virtual void _suppressShadows(bool suppress)
Indicates to the SceneManager whether it should suppress the active shadow rendering technique until ...
Ogre::ShadowTextureConfigList
vector< ShadowTextureConfig >::type ShadowTextureConfigList
Definition: OgreShadowTextureManager.h:64
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::visit
bool visit(const Pass *p)
Ogre::SceneManager::destroyAllParticleSystems
virtual void destroyAllParticleSystems(void)
Removes & destroys all ParticleSystems from the SceneManager.
Ogre::SceneManager::CamVisibleObjectsMap
map< const Camera *, VisibleObjectsBoundsInfo >::type CamVisibleObjectsMap
Visible objects bounding box list.
Definition: OgreSceneManager.h:497
Ogre::SceneManager::IRS_RENDER_TO_TEXTURE
@ IRS_RENDER_TO_TEXTURE
Render to texture stage, used for texture based shadows.
Definition: OgreSceneManager.h:178
Ogre::SceneManager::setShadowDirectionalLightExtrusionDistance
virtual void setShadowDirectionalLightExtrusionDistance(Real dist)
Sets the distance a shadow volume is extruded for a directional light.
Ogre::SceneManager::mShadowTextureConfigList
ShadowTextureConfigList mShadowTextureConfigList
Definition: OgreSceneManager.h:744
Ogre::SceneManager::Listener::preFindVisibleObjects
virtual void preFindVisibleObjects(SceneManager *source, IlluminationRenderStage irs, Viewport *v)
Called prior to searching for visible objects in this SceneManager.
Definition: OgreSceneManager.h:255
Ogre::SceneManager::createSkyboxPlane
virtual MeshPtr createSkyboxPlane(BoxPlane bp, Real distance, const Quaternion &orientation, const String &groupName)
Ogre::LodListener
A interface class defining a listener which can be used to receive notifications of LOD events.
Definition: OgreLodListener.h:118
Ogre::SceneManager::mSkyPlane
Plane mSkyPlane
Definition: OgreSceneManager.h:454
Ogre::SharedPtr< Mesh >
Ogre::SceneManager::LightInfo::lightMask
uint32 lightMask
Sets to zero if directional light.
Definition: OgreSceneManager.h:517
Ogre::SceneManager::createBillboardSet
virtual BillboardSet * createBillboardSet(const String &name, unsigned int poolSize=20)
Creates a new BillboardSet for use with this scene manager.
Ogre::SceneManager::mShadowStencilPass
Pass * mShadowStencilPass
Definition: OgreSceneManager.h:735
Ogre::SceneManager::getFogColour
virtual const ColourValue & getFogColour(void) const
Returns the fog colour for the scene.
Ogre::SceneManager::mDefaultShadowCameraSetup
ShadowCameraSetupPtr mDefaultShadowCameraSetup
default shadow camera setup
Definition: OgreSceneManager.h:769
Ogre::SceneManager::mRenderQueueListeners
RenderQueueListenerList mRenderQueueListeners
Definition: OgreSceneManager.h:653
Ogre::uint8
unsigned char uint8
Definition: OgrePlatform.h:361
Ogre::SceneManager::_injectRenderWithPass
virtual void _injectRenderWithPass(Pass *pass, Renderable *rend, bool shadowDerivation=true, bool doLightIteration=false, const LightList *manualLightList=0)
Render something as if it came from the current queue.
Ogre::SceneManager::getMovableObject
virtual MovableObject * getMovableObject(const String &name, const String &typeName) const
Get a reference to a previously created MovableObject.
OgreAnimationState.h
Ogre::SceneManager::setSkyPlaneEnabled
virtual void setSkyPlaneEnabled(bool enable)
Enables / disables a 'sky plane'.
Definition: OgreSceneManager.h:1978
Ogre::SceneManager::mDefaultQueuedRenderableVisitor
SceneMgrQueuedRenderableVisitor mDefaultQueuedRenderableVisitor
Storage for default renderable visitor.
Definition: OgreSceneManager.h:984
Ogre::MapIterator
Concrete IteratorWrapper for nonconst access to the underlying key-value container.
Definition: OgreIteratorWrapper.h:319
Ogre::SceneManager::setShowDebugShadows
virtual void setShowDebugShadows(bool debug)
Enables / disables the rendering of debug information for shadows.
Definition: OgreSceneManager.h:2709
Ogre::SceneManager::renderModulativeTextureShadowedQueueGroupObjects
virtual void renderModulativeTextureShadowedQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group with the added complexity of modulative texture shadows.
Ogre::SceneManager::RenderContext::viewport
Viewport * viewport
Definition: OgreSceneManager.h:816
Ogre::SceneManager::showBoundingBoxes
virtual void showBoundingBoxes(bool bShow)
Allows all bounding boxes of scene nodes to be displayed.
Ogre::SceneManager::getManualObject
virtual ManualObject * getManualObject(const String &name) const
Retrieves a pointer to the named ManualObject.
Ogre::DefaultPlaneBoundedVolumeListSceneQuery
Default implementation of PlaneBoundedVolumeListSceneQuery.
Definition: OgreSceneManager.h:3586
Ogre::SceneManager::_applySceneAnimations
virtual void _applySceneAnimations(void)
Internal method for applying animations to scene nodes.
Ogre::MovableObjectLodChangedEvent
Struct containing information about a LOD change event for movable objects.
Definition: OgreLodListener.h:45
Ogre::AnimationStateSet
Class encapsulating a set of AnimationState objects.
Definition: OgreAnimationState.h:197
Ogre::RaySceneQuery
Specialises the SceneQuery class for querying along a ray.
Definition: OgreSceneQuery.h:377
Ogre::SceneManagerFactory::initMetaData
virtual void initMetaData(void) const =0
Internal method to initialise the metadata, must be implemented.
OgrePlane.h
Ogre::SceneManager::destroyQuery
virtual void destroyQuery(SceneQuery *query)
Destroys a scene query of any type.
Ogre::FOG_NONE
@ FOG_NONE
No fog. Duh.
Definition: OgreCommon.h:124
Ogre::SceneManager::isSkyPlaneEnabled
virtual bool isSkyPlaneEnabled(void) const
Return whether a key plane is enabled.
Definition: OgreSceneManager.h:1981
Ogre::SceneManager::mFlipCullingOnNegativeScale
bool mFlipCullingOnNegativeScale
Definition: OgreSceneManager.h:485
Ogre::SceneManager::updateDirtyInstanceManagers
void updateDirtyInstanceManagers(void)
Updates all instance managaers with dirty instance batches.
Ogre::SceneManager::addRenderObjectListener
virtual void addRenderObjectListener(RenderObjectListener *newListener)
Registers a new Render Object Listener which will be notified when rendering an object.
Ogre::SceneManager::mShadowTextureCustomCasterFPParams
GpuProgramParametersSharedPtr mShadowTextureCustomCasterFPParams
Definition: OgreSceneManager.h:868
Ogre::SceneManager::firePreRenderQueues
virtual void firePreRenderQueues()
Internal method for firing the queue start event.
Ogre::SceneManager::destroyAllBillboardChains
virtual void destroyAllBillboardChains(void)
Removes & destroys all BillboardChains from the SceneManager.
Ogre::IntersectionSceneQueryListener
Alternative listener class for dealing with IntersectionSceneQuery.
Definition: OgreSceneQuery.h:462
Ogre::PlaneBoundedVolumeListSceneQuery
Specialises the SceneQuery class for querying within a plane-bounded volume.
Definition: OgreSceneQuery.h:305
Ogre::SceneManager::getMovableObjectCollection
MovableObjectCollection * getMovableObjectCollection(const String &typeName)
Gets the movable object collection for the given type name.
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::manualLightList
const LightList * manualLightList
Manual light list.
Definition: OgreSceneManager.h:377
Ogre::SceneManager::destroyAllLights
virtual void destroyAllLights(void)
Removes and destroys all lights in the scene.
Ogre::SceneManager::getCameras
const CameraList & getCameras() const
Returns a const version of the camera list.
Definition: OgreSceneManager.h:2658
Ogre::DefaultSphereSceneQuery::execute
void execute(SceneQueryListener *listener)
See SceneQuery.
Ogre::SceneManager::createSceneNodeImpl
virtual SceneNode * createSceneNodeImpl(void)
Subclasses can override this to ensure their specialised SceneNode is used.
Ogre::SceneManager::createEntity
virtual Entity * createEntity(const String &entityName, const String &meshName, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME)
Create an Entity (instance of a discrete mesh).
Ogre::SceneManager::checkCachedLightClippingInfo
virtual void checkCachedLightClippingInfo()
Ogre::SceneManager::buildScissor
virtual void buildScissor(const Light *l, const Camera *cam, RealRect &rect)
Update a scissor rectangle from a single light.
Ogre::SceneManager::firePostUpdateSceneGraph
virtual void firePostUpdateSceneGraph(Camera *camera)
Internal method for firing post update scene graph event.
Ogre::SceneManager::LodListenerSet
set< LodListener * >::type LodListenerSet
Set of registered LOD listeners.
Definition: OgreSceneManager.h:1012
Ogre::SceneManager::addListener
virtual void addListener(Listener *s)
Add a listener which will get called back on scene manager events.
Ogre::SceneManager::createRibbonTrail
virtual RibbonTrail * createRibbonTrail()
Create a RibbonTrail, an object which you can use to render a linked chain of billboards which follow...
Ogre::SceneManager::RenderContext::rsContext
RenderSystem::RenderSystemContext * rsContext
Definition: OgreSceneManager.h:819
Ogre::SceneManager::getShowBoundingBoxes
virtual bool getShowBoundingBoxes() const
Returns if all bounding boxes of scene nodes are to be displayed.
Ogre::SceneManager::addSpecialCaseRenderQueue
virtual void addSpecialCaseRenderQueue(uint8 qid)
Adds an item to the 'special case' render queue list.
Ogre::VisibleObjectsBoundsInfo::aabb
AxisAlignedBox aabb
The axis-aligned bounds of the visible objects.
Definition: OgreSceneManager.h:89
Ogre::SceneManager::mIlluminationStage
IlluminationRenderStage mIlluminationStage
Definition: OgreSceneManager.h:743
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::mUsedPass
const Pass * mUsedPass
Pass that was actually used at the grouping level.
Definition: OgreSceneManager.h:361
OgreColourValue.h
Ogre::SceneManager::isRenderQueueToBeProcessed
virtual bool isRenderQueueToBeProcessed(uint8 qid)
Returns whether or not the named queue will be rendered based on the current 'special case' render qu...
Ogre::ColourValue
Class representing colour.
Definition: OgreColourValue.h:58
Ogre::SceneManager::mShadowDirLightExtrudeDist
Real mShadowDirLightExtrudeDist
Definition: OgreSceneManager.h:742
Ogre::SceneManager::bindGpuProgram
virtual void bindGpuProgram(GpuProgram *prog)
Ogre::SceneManager::hasLight
virtual bool hasLight(const String &name) const
Returns whether a light with the given name exists.
Ogre::ST_EXTERIOR_REAL_FAR
@ ST_EXTERIOR_REAL_FAR
Definition: OgreSceneManager.h:3617
Ogre::SceneManager::getShadowCasterBoundsInfo
const VisibleObjectsBoundsInfo & getShadowCasterBoundsInfo(const Light *light, size_t iteration=0) const
Returns the shadow caster AAB for a specific light-camera combination.
Ogre::SceneManager::mLightClippingInfoMapFrameNumber
unsigned long mLightClippingInfoMapFrameNumber
Definition: OgreSceneManager.h:766
Ogre::VisibleObjectsBoundsInfo::minDistance
Real minDistance
The closest a visible object is to the camera.
Definition: OgreSceneManager.h:93
Ogre::SceneManager::destroySceneNode
virtual void destroySceneNode(const String &name)
Destroys a SceneNode with a given name.
Ogre::SceneManager::createSceneNode
virtual SceneNode * createSceneNode(const String &name)
Creates an instance of a SceneNode with a given name.
Ogre::SceneManager::hasManualObject
virtual bool hasManualObject(const String &name) const
Returns whether a manual object with the given name exists.
Ogre::SceneManager::mAutoParamDataSource
AutoParamDataSource * mAutoParamDataSource
Utility class for calculating automatic parameters for gpu programs.
Definition: OgreSceneManager.h:726
Ogre::SceneManager::_findVisibleObjects
virtual void _findVisibleObjects(Camera *cam, VisibleObjectsBoundsInfo *visibleBounds, bool onlyShadowCasters)
Internal method which parses the scene to find visible objects to render.
Ogre::SceneManager::destroyAllManualObjects
virtual void destroyAllManualObjects(void)
Removes & destroys all ManualObjects from the SceneManager.
Ogre::RaySceneQueryListener
Alternative listener class for dealing with RaySceneQuery.
Definition: OgreSceneQuery.h:336
Ogre::SceneManager::deriveShadowCasterPass
virtual const Pass * deriveShadowCasterPass(const Pass *pass)
Internal method for turning a regular pass into a shadow caster pass.
Ogre::DefaultAxisAlignedBoxSceneQuery
Default implementation of AxisAlignedBoxSceneQuery.
Definition: OgreSceneManager.h:3596
Ogre::SceneManager::mSkyPlaneGenParameters
SkyPlaneGenParameters mSkyPlaneGenParameters
Definition: OgreSceneManager.h:455
Ogre::SceneManager::getAnimations
const AnimationList & getAnimations() const
Returns a const version of the animation list.
Definition: OgreSceneManager.h:2665
Ogre::DefaultSphereSceneQuery::DefaultSphereSceneQuery
DefaultSphereSceneQuery(SceneManager *creator)
Ogre::DefaultRaySceneQuery::DefaultRaySceneQuery
DefaultRaySceneQuery(SceneManager *creator)
Ogre::SceneManager::mSkyDomeGenParameters
SkyDomeGenParameters mSkyDomeGenParameters
Definition: OgreSceneManager.h:465
Ogre::SceneManager::InstanceManagerVec
vector< InstanceManager * >::type InstanceManagerVec
Definition: OgreSceneManager.h:799
Ogre::SceneManager::mDirtyInstanceMgrsTmp
InstanceManagerVec mDirtyInstanceMgrsTmp
Definition: OgreSceneManager.h:801
Ogre::SceneManager::getCameraRelativeRendering
virtual bool getCameraRelativeRendering() const
Get whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the ...
Definition: OgreSceneManager.h:3524
Ogre::SceneManager::firePostRenderQueues
virtual void firePostRenderQueues()
Internal method for firing the queue end event.
Ogre::SceneManager::SkyDomeGenParameters::skyDomeCurvature
Real skyDomeCurvature
Definition: OgreSceneManager.h:197
Ogre::SceneManager::injectMovableObject
virtual void injectMovableObject(MovableObject *m)
Inject a MovableObject instance created externally.
Ogre::SceneManager::_updateSceneGraph
virtual void _updateSceneGraph(Camera *cam)
Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class...
Ogre::SceneManager::setShadowTextureFSAA
virtual void setShadowTextureFSAA(unsigned short fsaa)
Set the level of multisample AA of the textures used for texture-based shadows.
Ogre::SceneManager::getSkyDomeNode
virtual SceneNode * getSkyDomeNode(void) const
Get the sky dome node, if enabled.
Definition: OgreSceneManager.h:2206
Ogre::SceneManager::_renderVisibleObjects
virtual void _renderVisibleObjects(void)
Sends visible objects found in _findVisibleObjects to the rendering engine.
Ogre::SceneManager::getLight
virtual Light * getLight(const String &name) const
Returns a pointer to the named Light which has previously been added to the scene.
Ogre::SceneManager::getShadowDirLightTextureOffset
virtual Real getShadowDirLightTextureOffset(void) const
Gets the proportional distance which a texture shadow which is generated from a directional light wil...
Definition: OgreSceneManager.h:2910
Ogre::SceneManager::RenderContext::camera
Camera * camera
Definition: OgreSceneManager.h:817
Ogre::SceneManager::getFogMode
virtual FogMode getFogMode(void) const
Returns the fog mode for the scene.
Ogre::SceneManager::SkyPlaneGenParameters::skyPlaneYSegments
int skyPlaneYSegments
Definition: OgreSceneManager.h:211
Ogre::SceneManager::destroyInstanceManager
virtual void destroyInstanceManager(const String &name)
Destroys an InstanceManager if it was created with createInstanceManager()
Ogre::SceneManager::setShadowTextureCountPerLightType
void setShadowTextureCountPerLightType(Light::LightTypes type, size_t count)
Set the number of shadow textures a light type uses.
Definition: OgreSceneManager.h:2868
Ogre::QueuedRenderableCollection
Lowest level collection of renderables.
Definition: OgreRenderQueueSortingGrouping.h:114
Ogre::Renderable
Abstract class defining the interface all renderable objects must implement.
Definition: OgreRenderable.h:64
Ogre::SceneManager::setSkyDomeEnabled
virtual void setSkyDomeEnabled(bool enable)
Enables / disables a 'sky dome'.
Definition: OgreSceneManager.h:2200
Ogre::SceneManager::destroyAnimation
virtual void destroyAnimation(const String &name)
Destroys an Animation.
Ogre::Rectangle2D
Allows the rendering of a simple 2D rectangle This class renders a simple 2D rectangle; this rectangl...
Definition: OgreRectangle2D.h:50
Ogre::SceneManager::getBillboardSet
virtual BillboardSet * getBillboardSet(const String &name) const
Retrieves a pointer to the named BillboardSet.
Ogre::SceneManager::mSkyBoxNode
SceneNode * mSkyBoxNode
Definition: OgreSceneManager.h:449
Ogre::SceneManager::setShadowCasterRenderBackFaces
virtual void setShadowCasterRenderBackFaces(bool bf)
Sets whether or not shadow casters should be rendered into shadow textures using their back faces rat...
Definition: OgreSceneManager.h:3001
Ogre::ParticleSystem
Class defining particle system based special effects.
Definition: OgreParticleSystem.h:68
Ogre::SceneQuery::WorldFragment
Represents part of the world geometry that is a result of a SceneQuery.
Definition: OgreSceneQuery.h:109
Ogre::SceneManager::renderModulativeStencilShadowedQueueGroupObjects
virtual void renderModulativeStencilShadowedQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group with the added complexity of modulative stencil shadows.
Ogre::SceneManager::addLodListener
void addLodListener(LodListener *listener)
Add a level of detail listener.
Ogre::SceneManager::destroyParticleSystem
virtual void destroyParticleSystem(const String &name)
Removes & destroys a ParticleSystem from the SceneManager.
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::SceneMgrQueuedRenderableVisitor
SceneMgrQueuedRenderableVisitor()
Definition: OgreSceneManager.h:363
Ogre::SceneManager::hasSceneNode
virtual bool hasSceneNode(const String &name) const
Returns whether a scene node with the given name exists.
Ogre::SceneManager::resetViewProjMode
virtual void resetViewProjMode(bool fixedFunction)
Internal method used by _renderSingleObject to deal with renderables which override the camera's own ...
OGRE_NEW
#define OGRE_NEW
Definition: OgreMemoryAllocatorConfig.h:473
Ogre::VisibleObjectsBoundsInfo::maxDistanceInFrustum
Real maxDistanceInFrustum
The farthest object in the frustum regardless of visibility / shadow caster flags.
Definition: OgreSceneManager.h:99
Ogre::SceneManager::destroyShadowTextures
virtual void destroyShadowTextures(void)
Internal method for destroying shadow textures (texture-based shadows)
Ogre::SceneManager::mLodListeners
LodListenerSet mLodListeners
Definition: OgreSceneManager.h:1013
Ogre::SceneManager::Listener::postUpdateSceneGraph
virtual void postUpdateSceneGraph(SceneManager *source, Camera *camera)
Called after updating the scene graph in this SceneManager.
Definition: OgreSceneManager.h:243
Ogre::SceneManagerFactory::~SceneManagerFactory
virtual ~SceneManagerFactory()
Definition: OgreSceneManager.h:3646
Ogre::SHADOWDETAILTYPE_TEXTURE
@ SHADOWDETAILTYPE_TEXTURE
Mask for texture shadows (not for direct use, use SHADOWTYPE_ enum instead)
Definition: OgreCommon.h:208
Ogre::SceneManager::prepareWorldGeometry
virtual void prepareWorldGeometry(const String &filename)
Sets the source of the 'world' geometry, i.e.
Ogre::SceneManager::mMovableNameGenerator
NameGenerator mMovableNameGenerator
Definition: OgreSceneManager.h:548
Ogre::SceneManager::setDisplaySceneNodes
virtual void setDisplaySceneNodes(bool display)
Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the...
Ogre::SceneManager::destroyAllInstanceManagers
virtual void destroyAllInstanceManagers(void)
Ogre::SceneManager::mFiniteExtrusionParams
GpuProgramParametersSharedPtr mFiniteExtrusionParams
Definition: OgreSceneManager.h:883
Ogre::SceneManager::getSceneNode
virtual SceneNode * getSceneNode(const String &name) const
Retrieves a named SceneNode from the scene graph.
Ogre::SceneManager::getTypeName
virtual const String & getTypeName(void) const =0
Retrieve the type name of this scene manager.
Ogre::SceneManager::getInstancedGeometry
virtual InstancedGeometry * getInstancedGeometry(const String &name) const
Retrieve a previously created InstancedGeometry instance.
Ogre::SceneManager::getCameraIterator
CameraIterator getCameraIterator(void)
Returns a specialised MapIterator over all cameras in the scene.
Definition: OgreSceneManager.h:2653
Ogre::Quaternion::IDENTITY
static const Quaternion IDENTITY
Definition: OgreQuaternion.h:301
Ogre::SceneManager::destroyAllBillboardSets
virtual void destroyAllBillboardSets(void)
Removes & destroys all BillboardSets.
Ogre::SceneManager::createInstancedGeometry
virtual InstancedGeometry * createInstancedGeometry(const String &name)
Creates a InstancedGeometry instance suitable for use with this SceneManager.
Ogre::SceneManager::InstancedGeometryList
map< String, InstancedGeometry * >::type InstancedGeometryList
Definition: OgreSceneManager.h:413
Ogre::SceneManager::hasCamera
virtual bool hasCamera(const String &name) const
Returns whether a camera with the given name exists.
Ogre::EntityMeshLodChangedEvent
Struct containing information about a mesh LOD change event for entities.
Definition: OgreLodListener.h:55
Ogre::SceneManager::mInfiniteExtrusionParams
GpuProgramParametersSharedPtr mInfiniteExtrusionParams
Definition: OgreSceneManager.h:882
Ogre::SceneManager::getShadowIndexBufferSize
virtual size_t getShadowIndexBufferSize(void) const
Get the size of the shadow index buffer.
Definition: OgreSceneManager.h:2794
Ogre::SceneManager::mSkyPlaneNode
SceneNode * mSkyPlaneNode
Definition: OgreSceneManager.h:447
Ogre::SceneManager::destroyBillboardSet
virtual void destroyBillboardSet(const String &name)
Removes & destroys an BillboardSet from the SceneManager by name.
Ogre::SceneManager::createSkydomePlane
virtual MeshPtr createSkydomePlane(BoxPlane bp, Real curvature, Real tiling, Real distance, const Quaternion &orientation, int xsegments, int ysegments, int ySegmentsToKeep, const String &groupName)
OgreSceneQuery.h
Ogre::SceneManager::EntityMaterialLodChangedEventList
vector< EntityMaterialLodChangedEvent >::type EntityMaterialLodChangedEventList
List of entity material LOD changed events.
Definition: OgreSceneManager.h:1024
Ogre::SceneManager::getShadowUseLightClipPlanes
virtual bool getShadowUseLightClipPlanes() const
Gets whether when using a built-in additive shadow mode, user clip planes should be used to restrict ...
Definition: OgreSceneManager.h:3084
Ogre::Real
float Real
Software floating point type.
Definition: OgrePrerequisites.h:70
Ogre::SceneManager::mSpecialCaseQueueList
SpecialCaseRenderQueueList mSpecialCaseQueueList
Definition: OgreSceneManager.h:475
Ogre::SceneManager::_notifyAutotrackingSceneNode
virtual void _notifyAutotrackingSceneNode(SceneNode *node, bool autoTrack)
Internal method for notifying the manager that a SceneNode is autotracking.
Ogre::PlaneBoundedVolumeList
vector< PlaneBoundedVolume >::type PlaneBoundedVolumeList
Definition: OgrePlaneBoundedVolume.h:128
Ogre::ST_GENERIC
@ ST_GENERIC
Definition: OgreSceneManager.h:3614
Ogre::SceneManager::setCameraRelativeRendering
virtual void setCameraRelativeRendering(bool rel)
Set whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the ...
Definition: OgreSceneManager.h:3519
Ogre::SceneManager::renderShadowVolumesToStencil
virtual void renderShadowVolumesToStencil(const Light *light, const Camera *cam, bool calcScissor)
Internal method for rendering all the objects for a given light into the stencil buffer.
Ogre::SceneManager::_setSkyBox
virtual void _setSkyBox(bool enable, const String &materialName, Real distance=5000, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, const Quaternion &orientation=Quaternion::IDENTITY, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky box' i.e.
Ogre::SceneManager::setSpecialCaseRenderQueueMode
virtual void setSpecialCaseRenderQueueMode(SpecialCaseRenderQueueMode mode)
Sets the way the special case render queue list is processed.
Ogre::SceneManager::mShadowTextureCustomCasterVertexProgram
String mShadowTextureCustomCasterVertexProgram
Definition: OgreSceneManager.h:863
Ogre::SHADOWDETAILTYPE_STENCIL
@ SHADOWDETAILTYPE_STENCIL
Mask for stencil shadows (not for direct use, use SHADOWTYPE_ enum instead)
Definition: OgreCommon.h:205
Ogre::SceneManager::hasBillboardSet
virtual bool hasBillboardSet(const String &name) const
Returns whether a billboardset with the given name exists.
Ogre::SceneManager::ShadowCasterSceneQueryListener::mFarDistSquared
Real mFarDistSquared
Definition: OgreSceneManager.h:895
Ogre::SceneManager::getQueuedRenderableVisitor
SceneMgrQueuedRenderableVisitor * getQueuedRenderableVisitor(void) const
Gets the current visitor object which processes queued renderables.
Ogre::SceneManager::getOptionKeys
virtual bool getOptionKeys(StringVector &refKeys)
Method for getting all the implementation-specific options of the scene manager.
Definition: OgreSceneManager.h:1800
Ogre::SceneManager::SkyPlaneGenParameters
Definition: OgreSceneManager.h:206
Ogre::BillboardChain
Allows the rendering of a chain of connected billboards.
Definition: OgreBillboardChain.h:78
Ogre::SceneManager::getAnimation
virtual Animation * getAnimation(const String &name) const
Looks up an Animation object previously created with createAnimation.
Ogre::SceneManager::getRenderQueue
virtual RenderQueue * getRenderQueue(void)
Retrieves the internal render queue, for advanced users only.
Ogre::SceneManager::setWorldGeometryRenderQueue
virtual void setWorldGeometryRenderQueue(uint8 qid)
Sets the render queue that the world geometry (if any) this SceneManager renders will be associated w...
Ogre::SceneManager::updateRenderQueueGroupSplitOptions
virtual void updateRenderQueueGroupSplitOptions(RenderQueueGroup *group, bool suppressShadows, bool suppressRenderState)
Update the state of the render queue group splitting based on a shadow option change.
Ogre::SceneManager::getShadowDirectionalLightExtrusionDistance
virtual Real getShadowDirectionalLightExtrusionDistance(void) const
Gets the distance a shadow volume is extruded for a directional light.
Ogre::SceneManager::mShadowTextureFadeStart
Real mShadowTextureFadeStart
Proportion of texture offset in view direction e.g. 0.4.
Definition: OgreSceneManager.h:858
Ogre::SceneManager::ShadowTextureCameraList
vector< Camera * >::type ShadowTextureCameraList
Definition: OgreSceneManager.h:748
Ogre::SceneManager::setShadowTextureConfig
virtual void setShadowTextureConfig(size_t shadowIndex, const ShadowTextureConfig &config)
Set the detailed configuration for a shadow texture.
Ogre::SceneManager::updateGpuProgramParameters
virtual void updateGpuProgramParameters(const Pass *p)
Ogre::SceneManager::setQueuedRenderableVisitor
void setQueuedRenderableVisitor(SceneMgrQueuedRenderableVisitor *visitor)
Advanced method for supplying an alternative visitor, used for parsing the render queues and sending ...
Ogre::SceneManager::isShadowTechniqueIntegrated
virtual bool isShadowTechniqueIntegrated(void) const
Is the shadow technique integrated into primary materials?
Definition: OgreSceneManager.h:3072
Ogre::SceneManager::LightInfo
Cached light information, used to tracking light's changes.
Definition: OgreSceneManager.h:512
Ogre::SceneManager::clearScene
virtual void clearScene(void)
Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc.
Ogre::SceneManager::prepareRenderQueue
virtual void prepareRenderQueue(void)
Internal method for preparing the render queue for use with each render.
Ogre::SceneManager::getNumInstancesPerBatch
virtual size_t getNumInstancesPerBatch(const String &meshName, const String &groupName, const String &materialName, InstanceManager::InstancingTechnique technique, size_t numInstancesPerBatch, uint16 flags=0, unsigned short subMeshIdx=0)
Ogre::SceneManager::mShadowIndexBufferSize
size_t mShadowIndexBufferSize
Definition: OgreSceneManager.h:739
Ogre::SceneManager::renderShadowVolumeObjects
void renderShadowVolumeObjects(ShadowCaster::ShadowRenderableListIterator iShadowRenderables, Pass *pass, const LightList *manualLightList, unsigned long flags, bool secondpass, bool zfail, bool twosided)
Render a set of shadow renderables.
Ogre::SceneManager::mLightsDirtyCounter
ulong mLightsDirtyCounter
Definition: OgreSceneManager.h:536
OgreCamera.h
Ogre::SceneManager::mCamVisibleObjectsMap
CamVisibleObjectsMap mCamVisibleObjectsMap
Definition: OgreSceneManager.h:498
Ogre::SceneManager::buildLightClip
virtual void buildLightClip(const Light *l, PlaneList &planes)
Ogre::SceneManager::getLightScissorRect
virtual const RealRect & getLightScissorRect(Light *l, const Camera *cam)
Retrieve a scissor rectangle for a given light and camera.
Ogre::SceneManager::destroyCamera
virtual void destroyCamera(const String &name)
Removes a camera from the scene.
Ogre::SceneManager::isShadowTechniqueStencilBased
virtual bool isShadowTechniqueStencilBased(void) const
Is there a stencil shadow based shadowing technique in use?
Definition: OgreSceneManager.h:3060
Ogre::DefaultAxisAlignedBoxSceneQuery::~DefaultAxisAlignedBoxSceneQuery
~DefaultAxisAlignedBoxSceneQuery()
Ogre::operator==
bool operator==(STLAllocator< T, P > const &, STLAllocator< T2, P > const &)
determine equality, can memory from another allocator be released by this allocator,...
Definition: OgreMemorySTLAllocator.h:184
OgreString.h
Ogre::SceneManager::_addDirtyInstanceManager
void _addDirtyInstanceManager(InstanceManager *dirtyManager)
Called by an InstanceManager when it has at least one InstanceBatch that needs their bounds to be upd...
Ogre::SceneManager::getWorldGeometryRenderQueue
virtual uint8 getWorldGeometryRenderQueue(void)
Gets the render queue that the world geometry (if any) this SceneManager renders will be associated w...
Ogre::SceneManager::getOptionValues
virtual bool getOptionValues(const String &strKey, StringVector &refValueList)
Method for getting all possible values for a specific option.
Definition: OgreSceneManager.h:1791
Ogre::SceneManager::mShadowTextureCustomCasterPass
Pass * mShadowTextureCustomCasterPass
Definition: OgreSceneManager.h:861
Ogre::vector
Definition: OgrePrerequisites.h:492
Ogre::Ray
Representation of a ray in space, i.e.
Definition: OgreRay.h:47
Ogre::SceneManager::getSpecialCaseRenderQueueMode
virtual SpecialCaseRenderQueueMode getSpecialCaseRenderQueueMode(void)
Gets the way the special case render queue list is processed.
Ogre::SceneManager::createManualObject
virtual ManualObject * createManualObject(const String &name)
Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mod...
Ogre::SceneManager::_renderQueueGroupObjects
virtual void _renderQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render the objects in a given queue group.
Ogre::SceneManager::setSkyDome
virtual void setSkyDome(bool enable, const String &materialName, Real curvature=10, Real tiling=8, Real distance=4000, bool drawFirst=true, const Quaternion &orientation=Quaternion::IDENTITY, int xsegments=16, int ysegments=16, int ysegments_keep=-1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky dome' i.e.
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::~SceneMgrQueuedRenderableVisitor
~SceneMgrQueuedRenderableVisitor()
Definition: OgreSceneManager.h:365
OgreRectangle2D.h
Ogre::SceneManager::mSkyDomeNode
SceneNode * mSkyDomeNode
Definition: OgreSceneManager.h:448
Ogre::SceneManager::mCurrentShadowTexture
Texture * mCurrentShadowTexture
Definition: OgreSceneManager.h:750
Ogre::SceneManager::_setSkyDome
virtual void _setSkyDome(bool enable, const String &materialName, Real curvature=10, Real tiling=8, Real distance=4000, uint8 renderQueue=RENDER_QUEUE_SKIES_EARLY, const Quaternion &orientation=Quaternion::IDENTITY, int xsegments=16, int ysegments=16, int ysegments_keep=-1, const String &groupName=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Enables / disables a 'sky dome' i.e.
Ogre::SceneManager::removeLodListener
void removeLodListener(LodListener *listener)
Remove a level of detail listener.
Ogre::SceneManager::SkyPlaneGenParameters::skyPlaneScale
Real skyPlaneScale
Definition: OgreSceneManager.h:207
Ogre::SceneManager::RenderContext::activeChain
CompositorChain * activeChain
Definition: OgreSceneManager.h:818
Ogre::SceneManager::ShadowCasterSceneQueryListener::mIsLightInFrustum
bool mIsLightInFrustum
Definition: OgreSceneManager.h:891
Ogre::SHADOWDETAILTYPE_INTEGRATED
@ SHADOWDETAILTYPE_INTEGRATED
Mask for integrated shadows (not for direct use, use SHADOWTYPE_ enum instead)
Definition: OgreCommon.h:202
Ogre::SceneManager::PT_PLANE
@ PT_PLANE
Definition: OgreSceneManager.h:1372
Ogre::SceneManager::mShadowCasterRenderBackFaces
bool mShadowCasterRenderBackFaces
Definition: OgreSceneManager.h:752
Ogre::SceneManager::mShadowTextureOffset
Real mShadowTextureOffset
Definition: OgreSceneManager.h:857
Ogre::ViewPoint
Structure for holding a position & orientation pair.
Definition: OgreSceneManager.h:71
Ogre::SceneManager::mPassCullingMode
CullingMode mPassCullingMode
Definition: OgreSceneManager.h:486
Ogre::SceneManager::createAnimationState
virtual AnimationState * createAnimationState(const String &animName)
Create an AnimationState object for managing application of animations.
Ogre::SceneManager::mResetIdentityProj
bool mResetIdentityProj
Definition: OgreSceneManager.h:482
Ogre::SceneManager::lightsForShadowTextureLess
Default sorting routine which sorts lights which cast shadows to the front of a list,...
Definition: OgreSceneManager.h:780
Ogre::SceneManager::getBillboardChain
virtual BillboardChain * getBillboardChain(const String &name) const
Retrieves a pointer to the named BillboardChain.
Ogre::SceneManager::renderObjects
virtual void renderObjects(const QueuedRenderableCollection &objs, QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0)
Render a set of objects, see renderSingleObject for param definitions.
Ogre::SceneManager::hasAnimationState
virtual bool hasAnimationState(const String &name) const
Returns whether an animation state with the given name exists.
Ogre::SceneManager::_areRenderStateChangesSuppressed
virtual bool _areRenderStateChangesSuppressed(void) const
Are render state changes suppressed?
Definition: OgreSceneManager.h:3418
Ogre::SceneManager::mSkyBoxRenderQueue
uint8 mSkyBoxRenderQueue
Definition: OgreSceneManager.h:458
Ogre::AnimationStateSet::getAnimationStateIterator
AnimationStateIterator getAnimationStateIterator(void)
Get an iterator over all the animation states in this set.
Ogre::SceneManager::mTestLightInfos
LightInfoList mTestLightInfos
Definition: OgreSceneManager.h:535
OgreAutoParamDataSource.h
Ogre::InstancedEntity
Definition: OgreInstancedEntity.h:78
Ogre::PF_X8R8G8B8
@ PF_X8R8G8B8
32-bit pixel format, 8 bits for red, 8 bits for green, 8 bits for blue like PF_A8R8G8B8,...
Definition: OgrePixelFormat.h:84
Ogre::SceneManager::getDisplaySceneNodes
virtual bool getDisplaySceneNodes(void) const
Returns true if all scene nodes axis are to be displayed.
Definition: OgreSceneManager.h:2330
Ogre::SceneManager::resetLightClip
virtual void resetLightClip()
Ogre::SceneManager::mShadowTextureCustomReceiverVertexProgram
String mShadowTextureCustomReceiverVertexProgram
Definition: OgreSceneManager.h:865
Ogre::SceneManager::createSceneNode
virtual SceneNode * createSceneNode(void)
Creates an instance of a SceneNode.
Ogre::SceneManager::getSkyPlaneGenParameters
virtual const SkyPlaneGenParameters & getSkyPlaneGenParameters(void) const
Get the parameters used to construct the SkyPlane, if any.
Definition: OgreSceneManager.h:1987
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::visit
void visit(Renderable *r)
Visit method called once per Renderable on a grouped collection.
Ogre::SceneManager::mLastLightHash
uint32 mLastLightHash
Last light sets.
Definition: OgreSceneManager.h:992
Ogre::SceneManager::getCurrentViewport
Viewport * getCurrentViewport(void) const
Gets the current viewport being rendered (advanced use only, only valid during viewport update.
Definition: OgreSceneManager.h:3497
Ogre::SceneManager::ShadowCasterSceneQueryListener::mLightClipVolumeList
const PlaneBoundedVolumeList * mLightClipVolumeList
Definition: OgreSceneManager.h:892
Ogre::SceneManager::getShadowTexture
virtual const TexturePtr & getShadowTexture(size_t shadowIndex)
Get a reference to the shadow texture currently in use at the given index.
Ogre::PlaneList
vector< Plane >::type PlaneList
Definition: OgrePlane.h:160
Ogre::SceneManager::Listener::shadowTextureReceiverPreViewProj
virtual void shadowTextureReceiverPreViewProj(Light *light, Frustum *frustum)
This event occurs just before the view & projection matrices are set for re-rendering a shadow receiv...
Definition: OgreSceneManager.h:320
Ogre::SceneManager::getAnimationStateIterator
AnimationStateIterator getAnimationStateIterator(void)
Returns a specialised MapIterator over all animation states in the scene.
Definition: OgreSceneManager.h:2667
Ogre::SHADOWDETAILTYPE_MODULATIVE
@ SHADOWDETAILTYPE_MODULATIVE
Mask for modulative shadows (not for direct use, use SHADOWTYPE_ enum instead)
Definition: OgreCommon.h:199
Ogre::Vector3
Standard 3-dimensional vector.
Definition: OgreVector3.h:52
Ogre::SceneManager::hasStaticGeometry
virtual bool hasStaticGeometry(const String &name) const
Returns whether a static geometry instance with the given name exists.
Ogre::SceneManager::getStaticGeometry
virtual StaticGeometry * getStaticGeometry(const String &name) const
Retrieve a previously created StaticGeometry instance.
Ogre::SceneManager::mNullShadowTexture
TexturePtr mNullShadowTexture
Definition: OgreSceneManager.h:747
Ogre::RenderOperation
'New' rendering operation using vertex buffers.
Definition: OgreRenderOperation.h:45
Ogre::SceneManager::_notifyEntityMeshLodChanged
void _notifyEntityMeshLodChanged(EntityMeshLodChangedEvent &evt)
Notify that an entity mesh LOD change event has occurred.
Ogre::SceneManager::createBillboardChain
virtual BillboardChain * createBillboardChain(const String &name)
Create a BillboardChain, an object which you can use to render a linked chain of billboards.
Ogre::SceneManager::_markGpuParamsDirty
virtual void _markGpuParamsDirty(uint16 mask)
Method to allow you to mark gpu parameters as dirty, causing them to be updated according to the mask...
Ogre::SceneManager::MovableObjectLodChangedEventList
vector< MovableObjectLodChangedEvent >::type MovableObjectLodChangedEventList
List of movable object LOD changed events.
Definition: OgreSceneManager.h:1016
Ogre::SceneManager::destroyBillboardChain
virtual void destroyBillboardChain(BillboardChain *obj)
Removes & destroys a BillboardChain from the SceneManager.
Ogre::SceneManager::manualRender
virtual void manualRender(Renderable *rend, const Pass *pass, Viewport *vp, const Matrix4 &viewMatrix, const Matrix4 &projMatrix, bool doBeginEndFrame=false, bool lightScissoringClipping=true, bool doLightIteration=true, const LightList *manualLightList=0)
Manual rendering method for rendering a single object.
Ogre::SceneManager::StaticGeometryList
map< String, StaticGeometry * >::type StaticGeometryList
Definition: OgreSceneManager.h:411
Ogre::SceneManager::renderTextureShadowReceiverQueueGroupObjects
virtual void renderTextureShadowReceiverQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group rendering only shadow receivers.
Ogre::SceneManager::getShadowTextureConfigIterator
ConstShadowTextureConfigIterator getShadowTextureConfigIterator() const
Get an iterator over the current shadow texture settings.
Ogre::SceneManager::setShadowTexturePixelFormat
virtual void setShadowTexturePixelFormat(PixelFormat fmt)
Set the pixel format of the textures used for texture-based shadows.
Ogre::SceneManager::CameraList
map< String, Camera * >::type CameraList
Definition: OgreSceneManager.h:405
Ogre::ConstVectorIterator
Concrete IteratorWrapper for const access to the underlying container.
Definition: OgreIteratorWrapper.h:217
Ogre::SceneManager::mShadowUseInfiniteFarPlane
bool mShadowUseInfiniteFarPlane
Definition: OgreSceneManager.h:751
Ogre::RenderQueue
Class to manage the scene object rendering queue.
Definition: OgreRenderQueue.h:93
Ogre::RenderablePass
Struct associating a single Pass with a single Renderable.
Definition: OgreRenderQueueSortingGrouping.h:52
Ogre::SceneManager::renderAdditiveStencilShadowedQueueGroupObjects
virtual void renderAdditiveStencilShadowedQueueGroupObjects(RenderQueueGroup *group, QueuedRenderableCollection::OrganisationMode om)
Render a group with the added complexity of additive stencil shadows.
Ogre::SceneManager::extractMovableObject
virtual void extractMovableObject(const String &name, const String &typeName)
Extract a previously injected MovableObject.
Ogre::SceneManager::setNormaliseNormalsOnScale
virtual void setNormaliseNormalsOnScale(bool n)
Set whether to automatically normalise normals on objects whenever they are scaled.
Definition: OgreSceneManager.h:3365
Ogre::SceneManager::mCameraRelativePosition
Vector3 mCameraRelativePosition
Definition: OgreSceneManager.h:989
Ogre::SceneManager::setShadowTextureConfig
virtual void setShadowTextureConfig(size_t shadowIndex, unsigned short width, unsigned short height, PixelFormat format, unsigned short fsaa=0, uint16 depthBufferPoolId=1)
Set the detailed configuration for a shadow texture.
Ogre::SceneManager::mShadowReceiverPass
Pass * mShadowReceiverPass
A pass designed to let us render shadow receivers for texture shadows.
Definition: OgreSceneManager.h:570
Ogre::SceneManager::getRootSceneNode
virtual SceneNode * getRootSceneNode(void)
Gets the SceneNode at the root of the scene hierarchy.
Ogre::SceneManager::createParticleSystem
virtual ParticleSystem * createParticleSystem(const String &name, size_t quota=500, const String &resourceGroup=ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME)
Create a blank particle system.
Ogre::SceneManager::initRenderQueue
virtual void initRenderQueue(void)
Internal method for initialising the render queue.
Ogre::SceneManager::destroyBillboardChain
virtual void destroyBillboardChain(const String &name)
Removes & destroys a BillboardChain from the SceneManager.
Ogre::SceneManager::InstanceManagerMap
map< String, InstanceManager * >::type InstanceManagerMap
Definition: OgreSceneManager.h:416
Ogre::SceneManager::RenderContext
Definition: OgreSceneManager.h:814
Ogre::SceneManager::LightClippingInfo
Struct for caching light clipping information for re-use in a frame.
Definition: OgreSceneManager.h:756
Ogre::SceneManager::getShowDebugShadows
virtual bool getShowDebugShadows(void) const
Are debug shadows shown?
Definition: OgreSceneManager.h:2711
Ogre::SceneManager::estimateWorldGeometry
virtual size_t estimateWorldGeometry(DataStreamPtr &stream, const String &typeName=StringUtil::BLANK)
Estimate the number of loading stages required to load the named world geometry.
Definition: OgreSceneManager.h:1713
Ogre::SceneManager::setShadowTextureSelfShadow
virtual void setShadowTextureSelfShadow(bool selfShadow)
Sets whether or not texture shadows should attempt to self-shadow.
Ogre::SceneManager::prepareWorldGeometry
virtual void prepareWorldGeometry(DataStreamPtr &stream, const String &typeName=StringUtil::BLANK)
Sets the source of the 'world' geometry, i.e.
Ogre::SceneManager::getOption
virtual bool getOption(const String &strKey, void *pDestValue)
Method for getting the value of an implementation-specific Scene Manager option.
Definition: OgreSceneManager.h:1762
Ogre::SceneManager::mDisplayNodes
bool mDisplayNodes
Flag indicating whether SceneNodes will be rendered as a set of 3 axes.
Definition: OgreSceneManager.h:635
Ogre::SceneManager::mEntityMeshLodChangedEvents
EntityMeshLodChangedEventList mEntityMeshLodChangedEvents
Definition: OgreSceneManager.h:1021
Ogre::SceneManager::mMovableObjectLodChangedEvents
MovableObjectLodChangedEventList mMovableObjectLodChangedEvents
Definition: OgreSceneManager.h:1017
Ogre::SceneManager::mShadowIndexBufferUsedSize
size_t mShadowIndexBufferUsedSize
Definition: OgreSceneManager.h:740
OgreRenderSystem.h

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.