Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Ogre::OctreeCamera Class Reference

Specialized viewpoint from which an Octree can be rendered. More...

#include <OgreOctreeCamera.h>

Inheritance diagram for Ogre::OctreeCamera:

Inheritance graph
[legend]
List of all members.

Public Types

enum  Visibility { NONE, PARTIAL, FULL }
 Visibility types. More...

typedef std::vector< ShadowRenderable * > ShadowRenderableList
typedef VectorIterator< ShadowRenderableListShadowRenderableListIterator

Public Methods

 OctreeCamera (const String &name, SceneManager *sm)
 ~OctreeCamera ()
OctreeCamera::Visibility getVisibility (const AxisAlignedBox &bound)
 Returns the visiblity of the box.

SceneManagergetSceneManager (void) const
 Returns a pointer to the SceneManager this camera is rendering through.

virtual const StringgetName (void) const
 Gets the camera's name.

void setDetailLevel (SceneDetailLevel sd)
 Sets the level of rendering detail required from this camera.

SceneDetailLevel getDetailLevel (void) const
 Retrieves the level of detail that the camera will render.

void setPosition (Real x, Real y, Real z)
 Sets the camera's position.

void setPosition (const Vector3 &vec)
 Sets the camera's position.

const Vector3getPosition (void) const
 Retrieves the camera's position.

void move (const Vector3 &vec)
 Moves the camera's position by the vector offset provided along world axes.

void moveRelative (const Vector3 &vec)
 Moves the camera's position by the vector offset provided along it's own axes (relative to orientation).

void setDirection (Real x, Real y, Real z)
 Sets the camera's direction vector.

void setDirection (const Vector3 &vec)
 Sets the camera's direction vector.

Vector3 getDirection (void) const
Vector3 getUp (void) const
 Gets the camera's up vector.

Vector3 getRight (void) const
 Gets the camera's right vector.

void lookAt (const Vector3 &targetPoint)
 Points the camera at a location in worldspace.

void lookAt (Real x, Real y, Real z)
 Points the camera at a location in worldspace.

void roll (const Radian &angle)
 Rolls the camera anticlockwise, around its local z axis.

void yaw (const Radian &angle)
 Rotates the camera anticlockwise around it's local y axis.

void pitch (const Radian &angle)
 Pitches the camera up/down anticlockwise around it's local z axis.

void rotate (const Vector3 &axis, const Radian &angle)
 Rotate the camera around an arbitrary axis.

void rotate (const Quaternion &q)
 Rotate the camera around an aritrary axis using a Quarternion.

void setFixedYawAxis (bool useFixed, const Vector3 &fixedAxis=Vector3::UNIT_Y)
 Tells the camera whether to yaw around it's own local Y axis or a fixed axis of choice.

const QuaterniongetOrientation (void) const
 Returns the camera's current orientation.

void setOrientation (const Quaternion &q)
 Sets the camera's orientation.

void _renderScene (Viewport *vp, bool includeOverlays)
 Tells the Camera to contact the SceneManager to render from it's viewpoint.

void _notifyRenderedFaces (unsigned int numfaces)
 Internal method to notify camera of the visible faces in the last render.

unsigned int _getNumRenderedFaces (void) const
 Internal method to retrieve the number of visible faces in the last render.

const QuaterniongetDerivedOrientation (void) const
 Gets the derived orientation of the camera, including any rotation inherited from a node attachment.

const Vector3getDerivedPosition (void) const
 Gets the derived position of the camera, including any translation inherited from a node attachment.

Vector3 getDerivedDirection (void) const
 Gets the derived direction vector of the camera, including any translation inherited from a node attachment.

const StringgetMovableType (void) const
 Overridden from MovableObject.

void setAutoTracking (bool enabled, SceneNode *target=0, const Vector3 &offset=Vector3::ZERO)
 Enables / disables automatic tracking of a SceneNode.

void setLodBias (Real factor=1.0)
 Sets the level-of-detail factor for this Camera.

Real getLodBias (void) const
 Returns the level-of-detail bias factor currently applied to this camera.

Ray getCameraToViewportRay (Real screenx, Real screeny) const
 Gets a world space ray as cast from the camera through a viewport position.

Real _getLodBiasInverse (void) const
 Internal method for OGRE to use for LOD calculations.

void _autoTrack (void)
 Internal method used by OGRE to update auto-tracking cameras.

virtual void setWindow (Real Left, Real Top, Real Right, Real Bottom)
 Sets the viewing window inside of viewport.

virtual void resetWindow (void)
 Cancel view window.

virtual bool isWindowSet (void) const
 Returns if a viewport window is being used.

const std::vector< Plane > & getWindowPlanes (void) const
 Gets the window clip planes, only applicable if isWindowSet == true.

Real getBoundingRadius (void) const
 Overridden from MovableObject.

SceneNodegetAutoTrackTarget (void) const
 Get the auto tracking target for this camera, if any.

const Vector3getAutoTrackOffset (void) const
 Get the auto tracking offset for this camera, if it is auto tracking.

ViewportgetViewport (void) const
 Get the last viewport which was attached to this camera.

void _notifyViewport (Viewport *viewport)
 Notifies this camera that a viewport is using it.

void setAutoAspectRatio (bool autoratio)
 If set to true a vieport that owns this frustum will be able to recalculate the aspect ratio whenever the frustum is resized.

bool getAutoAspectRatio (void) const
 Retreives if AutoAspectRatio is currently set or not.

virtual void setFOVy (const Radian &fovy)
 Sets the Y-dimension Field Of View (FOV) of the frustum.

virtual const RadiangetFOVy (void) const
 Retrieves the frustums Y-dimension Field Of View (FOV).

virtual void setNearClipDistance (Real nearDist)
 Sets the position of the near clipping plane.

virtual Real getNearClipDistance (void) const
 Sets the position of the near clipping plane.

virtual void setFarClipDistance (Real farDist)
 Sets the distance to the far clipping plane.

virtual Real getFarClipDistance (void) const
 Retrieves the distance from the frustum to the far clipping plane.

virtual void setAspectRatio (Real ratio)
 Sets the aspect ratio for the frustum viewport.

virtual Real getAspectRatio (void) const
 Retreives the current aspect ratio.

virtual const Matrix4getProjectionMatrix (void) const
 Gets the projection matrix for this frustum.

virtual const Matrix4getStandardProjectionMatrix (void) const
 Gets the 'standard' projection matrix for this frustum, ie the projection matrix which conforms to standard right-handed rules.

virtual const Matrix4getViewMatrix (void) const
 Gets the view matrix for this frustum.

virtual const PlanegetFrustumPlane (unsigned short plane) const
 Retrieves a specified plane of the frustum.

virtual bool isVisible (const AxisAlignedBox &bound, FrustumPlane *culledBy=0) const
 Tests whether the given container is visible in the Frustum.

virtual bool isVisible (const Sphere &bound, FrustumPlane *culledBy=0) const
 Tests whether the given container is visible in the Frustum.

virtual bool isVisible (const Vector3 &vert, FrustumPlane *culledBy=0) const
 Tests whether the given vertex is visible in the Frustum.

virtual bool isVisible (void) const
 Returns whether or not this object is supposed to be visible or not.

const AxisAlignedBoxgetBoundingBox (void) const
 Overridden from MovableObject.

void _updateRenderQueue (RenderQueue *queue)
 Overridden from MovableObject.

void _notifyCurrentCamera (Camera *cam)
 Overridden from MovableObject.

MaterialgetMaterial (void) const
 Overridden from Renderable.

void getRenderOperation (RenderOperation &op)
 Overridden from Renderable.

void getWorldTransforms (Matrix4 *xform) const
 Overridden from Renderable.

const QuaterniongetWorldOrientation (void) const
 Overridden from Renderable.

const Vector3getWorldPosition (void) const
 Overridden from Renderable.

Real getSquaredViewDepth (const Camera *cam) const
 Overridden from Renderable.

const LightListgetLights (void) const
 Overridden from Renderable.

virtual const Vector3getWorldSpaceCorners (void) const
 Gets the world space corners of the frustum.

virtual void setProjectionType (ProjectionType pt)
 Sets the type of projection to use (orthographic or perspective).

virtual ProjectionType getProjectionType (void) const
 Retrieves info on the type of projection used (orthographic or perspective).

virtual void enableReflection (const Plane &p)
 Modifies this frustum so it always renders from the reflection of itself through the plane specified.

virtual void enableReflection (const MovablePlane *p)
 Modifies this frustum so it always renders from the reflection of itself through the plane specified.

virtual void disableReflection (void)
 Disables reflection modification previously turned on with enableReflection.

virtual bool isReflected (void) const
 Returns whether this frustum is being reflected.

virtual const Matrix4getReflectionMatrix (void) const
 Returns the reflection matrix of the frustum if appropriate.

virtual const PlanegetReflectionPlane (void) const
 Returns the reflection plane of the frustum if appropriate.

virtual bool projectSphere (const Sphere &sphere, Real *left, Real *top, Real *right, Real *bottom) const
 Project a sphere onto the near plane and get the bounding rectangle.

virtual void enableCustomNearClipPlane (const MovablePlane *plane)
 Links the frustum to a custom near clip plane, which can be used to clip geometry in a custom manner without using user clip planes.

virtual void enableCustomNearClipPlane (const Plane &plane)
 Links the frustum to a custom near clip plane, which can be used to clip geometry in a custom manner without using user clip planes.

virtual void disableCustomNearClipPlane (void)
 Disables any custom near clip plane.

virtual NodegetParentNode (void) const
 Returns the node to which this object is attached.

virtual SceneNodegetParentSceneNode (void) const
 Returns the scene node to which this object is attached.

virtual void _notifyAttached (Node *parent, bool isTagPoint=false)
 Internal method called to notify the object that it has been attached to a node.

virtual bool isAttached (void) const
 Returns true if this object is attached to a SceneNode or TagPoint.

virtual const AxisAlignedBoxgetWorldBoundingBox (bool derive=false) const
 Retrieves the axis-aligned bounding box for this object in world coordinates.

virtual const SpheregetWorldBoundingSphere (bool derive=false) const
 Retrieves the worldspace bounding sphere for this object.

virtual void setVisible (bool visible)
 Tells this object whether to be visible or not, if it has a renderable component.

virtual void setUserObject (UserDefinedObject *obj)
 Call this to associate your own custom user object instance with this MovableObject.

virtual UserDefinedObjectgetUserObject (void)
 Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject.

virtual void setRenderQueueGroup (RenderQueueGroupID queueID)
 Sets the render queue group this entity will be rendered through.

virtual RenderQueueGroupID getRenderQueueGroup (void) const
 Gets the queue group for this entity, see setRenderQueueGroup for full details.

virtual Matrix4 _getParentNodeFullTransform (void) const
 return the full transformation of the parent sceneNode or the attachingPoint node

virtual void setQueryFlags (unsigned long flags)
 Sets the query flags for this object.

virtual void addQueryFlags (unsigned long flags)
 As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object.

virtual void removeQueryFlags (unsigned long flags)
 As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object.

virtual unsigned long getQueryFlags (void) const
 Returns the query flags relevant for this object.

EdgeDatagetEdgeList (void)
 Define a default implementation of method from ShadowCaster which implements no shadows.

ShadowRenderableListIterator getShadowVolumeRenderableIterator (ShadowTechnique shadowTechnique, const Light *light, HardwareIndexBufferSharedPtr *indexBuffer, bool extrudeVertices, Real extrusionDist, unsigned long flags=0)
 Define a default implementation of method from ShadowCaster which implements no shadows.

ShadowRenderableListIterator getLastShadowVolumeRenderableIterator (void)
 Return the last calculated shadow renderables.

const AxisAlignedBoxgetLightCapBounds (void) const
 Overridden member from ShadowCaster.

const AxisAlignedBoxgetDarkCapBounds (const Light &light, Real dirLightExtrusionDist) const
 Overridden member from ShadowCaster.

void setCastShadows (bool enabled)
 Sets whether or not this object will cast shadows.

bool getCastShadows (void) const
 Returns whether shadow casting is enabled for this object.

Real getPointExtrusionDistance (const Light *l) const
 Get the distance to extrude for a point/spot light.

virtual TechniquegetTechnique (void) const
 Retrieves a pointer to the Material Technique this renderable object uses.

virtual unsigned short getNumWorldTransforms (void) const
 Returns the number of world transform matrices this renderable requires.

virtual bool useIdentityProjection (void) const
 Returns whether or not to use an 'identity' projection.

virtual bool useIdentityView (void) const
 Returns whether or not to use an 'identity' projection.

virtual SceneDetailLevel getRenderDetail () const
 Returns the preferred rasterisation mode of this renderable.

virtual bool getNormaliseNormals (void) const
 Returns whether or not this Renderable wishes the hardware to normalise normals.

virtual const PlaneListgetClipPlanes () const
virtual bool getCastsShadows (void) const
 Method which reports whether this renderable would normally cast a shadow.

void setCustomParameter (size_t index, const Vector4 &value)
 Sets a custom parameter for this Renderable, which may be used to drive calculations for this specific Renderable, like GPU program parameters.

const Vector4getCustomParameter (size_t index) const
 Gets the custom value associated with this Renderable at the given index.

virtual void _updateCustomGpuParameter (const GpuProgramParameters::AutoConstantEntry &constantEntry, GpuProgramParameters *params) const
 Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.


Static Public Methods

void extrudeVertices (HardwareVertexBufferSharedPtr vertexBuffer, size_t originalVertexCount, const Vector4 &lightPos, Real extrudeDist)
 Utility method for extruding vertices based on a light.


Static Public Attributes

const Real INFINITE_FAR_PLANE_ADJUST = 0.00001
 Small constant used to reduce far plane projection to avoid inaccuracies.


Protected Types

typedef std::map< size_t,
Vector4
CustomParameterMap

Protected Methods

void updateFrustum (void) const
void updateView (void) const
bool isViewOutOfDate (void) const
void invalidateFrustum (void) const
 Signal to update frustum information.

void invalidateView (void) const
 Signal to update view information.

virtual void setWindowImpl (void) const
 Do actual window setting, using parameters set in SetWindow call.

const Vector3getPositionForViewUpdate (void) const
 Get the derived position of this frustum.

const QuaterniongetOrientationForViewUpdate (void) const
 Get the derived orientation of this frustum.

virtual bool isFrustumOutOfDate (void) const
Real getExtrusionDistance (const Vector3 &objectPos, const Light *light) const
 Helper moethod for calculating extrusion distance.

virtual void updateEdgeListLightFacing (EdgeData *edgeData, const Vector4 &lightPos)
 Tells the caster to perform the tasks necessary to update the edge data's light listing.

virtual void generateShadowVolume (EdgeData *edgeData, HardwareIndexBufferSharedPtr indexBuffer, const Light *light, ShadowRenderableList &shadowRenderables, unsigned long flags)
 Generates the indexes required to render a shadow volume into the index buffer which is passed in, and updates shadow renderables to use it.

virtual void extrudeBounds (AxisAlignedBox &box, const Vector4 &lightPos, Real extrudeDist) const
 Utility method for extruding a bounding box.


Protected Attributes

String mName
 Camera name.

SceneManagermSceneMgr
 Scene manager responsible for the scene.

Quaternion mOrientation
 Camera orientation, quaternion style.

Vector3 mPosition
 Camera position - default (0,0,0).

Quaternion mDerivedOrientation
 Derived positions of parent orientation / position.

Vector3 mDerivedPosition
bool mYawFixed
 Whether to yaw around a fixed axis.

Vector3 mYawFixedAxis
 Fixed axis to yaw around.

SceneDetailLevel mSceneDetail
 Rendering type.

unsigned int mVisFacesLastRender
 Stored number of visible faces in the last render.

SceneNodemAutoTrackTarget
 SceneNode which this Camera will automatically track.

Vector3 mAutoTrackOffset
 Tracking offset for fine tuning.

Real mSceneLodFactor
Real mSceneLodFactorInv
 Inverted scene LOD factor, can be used by Renderables to adjust their LOD.

Real mWLeft
 Viewing window.

Real mWTop
 Viewing window.

Real mWRight
 Viewing window.

Real mWBottom
 Viewing window.

bool mWindowSet
 Is viewing window used.

std::vector< PlanemWindowClipPlanes
 Windowed viewport clip planes.

bool mRecalcWindow
ViewportmLastViewport
 The last viewport to be added using this camera.

bool mAutoAspectRatio
 Whether aspect ratio will automaticaally be recalculated when a vieport changes its size.

ProjectionType mProjType
 Orthographic or perspective?

Radian mFOVy
 y-direction field-of-view (default 45)

Real mFarDist
 Far clip distance - default 10000.

Real mNearDist
 Near clip distance - default 100.

Real mAspect
 x/y viewport ratio - default 1.3333

Plane mFrustumPlanes [6]
 The 6 main clipping planes.

Quaternion mLastParentOrientation
 Stored versions of parent orientation / position.

Vector3 mLastParentPosition
Matrix4 mProjMatrix
 Pre-calced projection matrix.

Matrix4 mStandardProjMatrix
 Pre-calced standard projection matrix.

Matrix4 mViewMatrix
 Pre-calced view matrix.

bool mRecalcFrustum
 Something's changed in the frustrum shape?

bool mRecalcView
 Something re the view pos has changed.

Real mCoeffL [2]
 Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Real mCoeffR [2]
 Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Real mCoeffB [2]
 Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Real mCoeffT [2]
 Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

AxisAlignedBox mBoundingBox
VertexData mVertexData
MaterialmMaterial
Vector3 mWorldSpaceCorners [8]
bool mReflect
 Is this frustum to act as a reflection of itself?

Matrix4 mReflectMatrix
 Derived reflection matrix.

Plane mReflectPlane
 Fixed reflection plane.

const MovablePlanemLinkedReflectPlane
 Pointer to a reflection plane (automatically updated).

Plane mLastLinkedReflectionPlane
 Record of the last world-space reflection plane info used.

bool mObliqueDepthProjection
 Is this frustum using an oblique depth projection?

Plane mObliqueProjPlane
 Fixed oblique projection plane.

const MovablePlanemLinkedObliqueProjPlane
 Pointer to oblique projection plane (automatically updated).

Plane mLastLinkedObliqueProjPlane
 Record of the last world-space oblique depth projection plane info used.

NodemParentNode
 node to which this object is attached

bool mParentIsTagPoint
bool mVisible
 Is this object visible?

UserDefinedObjectmUserObject
 User defined object which is linked to this object.

RenderQueueGroupID mRenderQueueID
 The render queue to use when rendering this object.

bool mRenderQueueIDSet
 Flags whether the RenderQueue's default should be used.

unsigned long mQueryFlags
 Flags determining whether this object is included / excluded from scene queries.

AxisAlignedBox mWorldAABB
 Cached world AABB of this object.

Sphere mWorldBoundingSphere
AxisAlignedBox mWorldDarkCapBounds
 World space AABB of this object's dark cap.

bool mCastShadows
 Does this object cast shadows?

CustomParameterMap mCustomParameters

Static Protected Attributes

String msMovableType = "Camera"
 Shared class-level name for Movable type.

const PlaneList msDummyPlaneList

Friends

std::ostream & operator<< (std::ostream &o, Camera &c)
 Function for outputting to a stream.


Detailed Description

Specialized viewpoint from which an Octree can be rendered.

Remarks:
This class contains several speciliazations of the Ogre::Camera class. It implements the getRenderOperation method inorder to return displayable geometry for debuggin purposes. It also implements a visibility function that is more granular than the default.

Definition at line 60 of file OgreOctreeCamera.h.


Member Typedef Documentation

typedef std::map<size_t, Vector4> Ogre::Renderable::CustomParameterMap [protected, inherited]
 

Definition at line 232 of file OgreRenderable.h.

typedef std::vector<ShadowRenderable*> Ogre::ShadowCaster::ShadowRenderableList [inherited]
 

Definition at line 125 of file OgreShadowCaster.h.

typedef VectorIterator<ShadowRenderableList> Ogre::ShadowCaster::ShadowRenderableListIterator [inherited]
 

Definition at line 126 of file OgreShadowCaster.h.

Referenced by Ogre::Entity::getLastShadowVolumeRenderableIterator().


Member Enumeration Documentation

enum Ogre::OctreeCamera::Visibility
 

Visibility types.

Enumeration values:
NONE 
PARTIAL 
FULL 

Definition at line 65 of file OgreOctreeCamera.h.


Constructor & Destructor Documentation

Ogre::OctreeCamera::OctreeCamera const String   name,
SceneManager   sm
 

Definition at line 43 of file OgreOctreeCamera.cpp.

References Ogre::String.

Ogre::OctreeCamera::~OctreeCamera  
 

Definition at line 48 of file OgreOctreeCamera.cpp.


Member Function Documentation

void Ogre::Camera::_autoTrack void    [inherited]
 

Internal method used by OGRE to update auto-tracking cameras.

Definition at line 484 of file OgreCamera.cpp.

References Ogre::Node::_getDerivedPosition(), Ogre::Camera::lookAt(), Ogre::Camera::mAutoTrackOffset, and Ogre::Camera::mAutoTrackTarget.

Referenced by Ogre::SceneManager::_renderScene().

Real Ogre::Camera::_getLodBiasInverse void    const [inherited]
 

Internal method for OGRE to use for LOD calculations.

Definition at line 505 of file OgreCamera.cpp.

References Ogre::Camera::mSceneLodFactorInv, and Ogre::Real.

Referenced by Ogre::Entity::_notifyCurrentCamera().

unsigned int Ogre::Camera::_getNumRenderedFaces void    const [inherited]
 

Internal method to retrieve the number of visible faces in the last render.

Definition at line 427 of file OgreCamera.cpp.

References Ogre::Camera::mVisFacesLastRender.

Referenced by Ogre::Viewport::_getNumRenderedFaces().

Matrix4 Ogre::MovableObject::_getParentNodeFullTransform void    const [virtual, inherited]
 

return the full transformation of the parent sceneNode or the attachingPoint node

Definition at line 121 of file OgreMovableObject.cpp.

References Ogre::Node::_getFullTransform(), and Ogre::MovableObject::mParentNode.

Referenced by Ogre::Entity::cacheBoneMatrices(), Ogre::TagPoint::getParentEntityTransform(), Ogre::MovableObject::getWorldBoundingBox(), Ogre::SubEntity::getWorldTransforms(), Ogre::Entity::EntityShadowRenderable::getWorldTransforms(), and Ogre::BillboardSet::getWorldTransforms().

void Ogre::MovableObject::_notifyAttached Node   parent,
bool    isTagPoint = false
[virtual, inherited]
 

Internal method called to notify the object that it has been attached to a node.

Reimplemented in Ogre::Entity.

Definition at line 69 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mParentIsTagPoint, and Ogre::MovableObject::mParentNode.

Referenced by Ogre::SceneNode::attachObject(), Ogre::Entity::attachObjectImpl(), Ogre::SceneNode::detachAllObjects(), Ogre::SceneNode::detachObject(), Ogre::Entity::detachObjectImpl(), and Ogre::SceneNode::~SceneNode().

void Ogre::Frustum::_notifyCurrentCamera Camera   cam [virtual, inherited]
 

Overridden from MovableObject.

Implements Ogre::MovableObject.

Definition at line 668 of file OgreFrustum.cpp.

void Ogre::Camera::_notifyRenderedFaces unsigned int    numfaces [inherited]
 

Internal method to notify camera of the visible faces in the last render.

Definition at line 421 of file OgreCamera.cpp.

References Ogre::Camera::mVisFacesLastRender.

Referenced by Ogre::SceneManager::_renderScene().

void Ogre::Camera::_notifyViewport Viewport   viewport [inherited]
 

Notifies this camera that a viewport is using it.

Definition at line 437 of file OgreCamera.h.

void Ogre::Camera::_renderScene Viewport   vp,
bool    includeOverlays
[inherited]
 

Tells the Camera to contact the SceneManager to render from it's viewpoint.

Parameters:
vp  The viewport to render to
includeOverlays  Whether or not any overlay objects should be included

Definition at line 387 of file OgreCamera.cpp.

References Ogre::SceneManager::_renderScene(), and Ogre::Camera::mSceneMgr.

Referenced by Ogre::Viewport::update().

virtual void Ogre::Renderable::_updateCustomGpuParameter const GpuProgramParameters::AutoConstantEntry   constantEntry,
GpuProgramParameters   params
const [virtual, inherited]
 

Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.

Remarks:
This method allows a Renderable to map in a custom GPU program parameter based on it's own data. This is represented by a GPU auto parameter of ACT_CUSTOM, and to allow there to be more than one of these per Renderable, the 'data' field on the auto parameter will identify which parameter is being updated. The implementation of this method must identify the parameter being updated, and call a 'setConstant' method on the passed in GpuProgramParameters object, using the details provided in the incoming auto constant setting to identify the index at which to set the parameter.

You do not need to override this method if you're using the standard sets of data associated with the Renderable as provided by setCustomParameter and getCustomParameter. By default, the implementation will map from the value indexed by the 'constantEntry.data' parameter to a value previously set by setCustomParameter. But custom Renderables are free to override this if they want, in any case.

Parameters:
constantEntry  The auto constant entry referring to the parameter being updated
params  The parameters object which this method should call to set the updated parameters.

Reimplemented in Ogre::TerrainRenderable.

Definition at line 218 of file OgreRenderable.h.

References Ogre::GpuProgramParameters::AutoConstantEntry::data, Ogre::GpuProgramParameters::AutoConstantEntry::index, params, and Ogre::GpuProgramParameters::setConstant().

Referenced by Ogre::GpuProgramParameters::_updateAutoParamsNoLights().

void Ogre::Frustum::_updateRenderQueue RenderQueue   queue [virtual, inherited]
 

Overridden from MovableObject.

Implements Ogre::MovableObject.

Definition at line 593 of file OgreFrustum.cpp.

References Ogre::RenderQueue::addRenderable().

virtual void Ogre::MovableObject::addQueryFlags unsigned long    flags [virtual, inherited]
 

As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object.

Definition at line 185 of file OgreMovableObject.h.

void Ogre::Frustum::disableCustomNearClipPlane void    [virtual, inherited]
 

Disables any custom near clip plane.

Definition at line 796 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mLinkedObliqueProjPlane, and Ogre::Frustum::mObliqueDepthProjection.

void Ogre::Frustum::disableReflection void    [virtual, inherited]
 

Disables reflection modification previously turned on with enableReflection.

Definition at line 733 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateView(), Ogre::Frustum::mLastLinkedReflectionPlane, Ogre::Frustum::mReflect, and Ogre::Plane::normal.

void Ogre::Frustum::enableCustomNearClipPlane const Plane   plane [virtual, inherited]
 

Links the frustum to a custom near clip plane, which can be used to clip geometry in a custom manner without using user clip planes.

Remarks:
There are several applications for clipping a scene arbitrarily by a single plane; the most common is when rendering a reflection to a texture, and you only want to render geometry that is above the water plane (to do otherwise results in artefacts). Whilst it is possible to use user clip planes, they are not supported on all cards, and sometimes are not hardware accelerated when they are available. Instead, where a single clip plane is involved, this technique uses a 'fudging' of the near clip plane, which is available and fast on all hardware, to perform as the arbitrary clip plane. This does change the shape of the frustum, leading to some depth buffer loss of precision, but for many of the uses of this technique that is not an issue.
Note:
This technique only works for perspective projection.
Parameters:
plane  The plane to link to to perform the clipping. This plane must continue to exist while the camera is linked to it; do not destroy it before the frustum.

Definition at line 788 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mLinkedObliqueProjPlane, Ogre::Frustum::mObliqueDepthProjection, and Ogre::Frustum::mObliqueProjPlane.

void Ogre::Frustum::enableCustomNearClipPlane const MovablePlane   plane [virtual, inherited]
 

Links the frustum to a custom near clip plane, which can be used to clip geometry in a custom manner without using user clip planes.

Remarks:
There are several applications for clipping a scene arbitrarily by a single plane; the most common is when rendering a reflection to a texture, and you only want to render geometry that is above the water plane (to do otherwise results in artefacts). Whilst it is possible to use user clip planes, they are not supported on all cards, and sometimes are not hardware accelerated when they are available. Instead, where a single clip plane is involved, this technique uses a 'fudging' of the near clip plane, which is available and fast on all hardware, to perform as the arbitrary clip plane. This does change the shape of the frustum, leading to some depth buffer loss of precision, but for many of the uses of this technique that is not an issue.

This version of the method links to a plane, rather than requiring a by-value plane definition, and therefore you can make changes to the plane (e.g. by moving / rotating the node it is attached to) and they will automatically affect this object.

Note:
This technique only works for perspective projection.
Parameters:
plane  The plane to link to to perform the clipping. This plane must continue to exist while the camera is linked to it; do not destroy it before the frustum.

Definition at line 780 of file OgreFrustum.cpp.

References Ogre::MovablePlane::_getDerivedPlane(), Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mLinkedObliqueProjPlane, Ogre::Frustum::mObliqueDepthProjection, and Ogre::Frustum::mObliqueProjPlane.

void Ogre::Frustum::enableReflection const MovablePlane   p [virtual, inherited]
 

Modifies this frustum so it always renders from the reflection of itself through the plane specified.

Note that this version of the method links to a plane so that changes to it are picked up automatically. It is important that this plane continues to exist whilst this object does; do not destroy the plane before the frustum.

Remarks:
This is obviously useful for performing planar reflections.

Definition at line 723 of file OgreFrustum.cpp.

References Ogre::MovablePlane::_getDerivedPlane(), Ogre::Frustum::invalidateView(), Ogre::Frustum::mLastLinkedReflectionPlane, Ogre::Frustum::mLinkedReflectPlane, Ogre::Frustum::mReflect, Ogre::Frustum::mReflectMatrix, and Ogre::Frustum::mReflectPlane.

void Ogre::Frustum::enableReflection const Plane   p [virtual, inherited]
 

Modifies this frustum so it always renders from the reflection of itself through the plane specified.

Remarks:
This is obviously useful for performing planar reflections.

Definition at line 713 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateView(), Ogre::Frustum::mLinkedReflectPlane, Ogre::Frustum::mReflect, Ogre::Frustum::mReflectMatrix, and Ogre::Frustum::mReflectPlane.

void Ogre::ShadowCaster::extrudeBounds AxisAlignedBox   box,
const Vector4   lightPos,
Real    extrudeDist
const [protected, virtual, inherited]
 

Utility method for extruding a bounding box.

Parameters:
box  Original bounding box, will be updated in-place
lightPos  4D light position in object space, when w=0.0f this represents a directional light
extrudeDist  The distance to extrude

Definition at line 275 of file OgreShadowCaster.cpp.

References Ogre::AxisAlignedBox::getAllCorners(), Ogre::AxisAlignedBox::getMaximum(), Ogre::AxisAlignedBox::getMinimum(), Ogre::Vector3::makeCeil(), Ogre::Vector3::makeFloor(), Ogre::Vector3::normalise(), Ogre::Real, Ogre::AxisAlignedBox::setExtents(), Ogre::Vector4::w, Ogre::Vector4::x, Ogre::Vector3::x, Ogre::Vector4::y, Ogre::Vector3::y, Ogre::Vector4::z, and Ogre::Vector3::z.

Referenced by Ogre::MovableObject::getDarkCapBounds().

void Ogre::ShadowCaster::extrudeVertices HardwareVertexBufferSharedPtr    vertexBuffer,
size_t    originalVertexCount,
const Vector4   lightPos,
Real    extrudeDist
[static, inherited]
 

Utility method for extruding vertices based on a light.

Remarks:
Unfortunately, because D3D cannot handle homogenous (4D) position coordinates in the fixed-function pipeline (GL can, but we have to be cross-API), when we extrude in software we cannot extrude to infinity the way we do in the vertex program (by setting w to 0.0f). Therefore we extrude by a fixed distance, which may cause some problems with larger scenes. Luckily better hardware (ie vertex programs) can fix this.
Parameters:
vertexBuffer  The vertex buffer containing ONLY xyz position values, which must be originalVertexCount * 2 * 3 floats long.
originalVertexCount  The count of the original number of vertices, ie the number in the mesh, not counting the doubling which has already been done (by VertexData::prepareForShadowVolume) to provide the extruded area of the buffer.
lightPos  4D light position in object space, when w=0.0f this represents a directional light
extrudeDist  The distance to extrude

Definition at line 236 of file OgreShadowCaster.cpp.

References Ogre::Vector3::normalise(), Ogre::Real, Ogre::Vector4::w, Ogre::Vector3::x, Ogre::Vector4::x, Ogre::Vector3::y, Ogre::Vector4::y, Ogre::Vector3::z, and Ogre::Vector4::z.

Referenced by Ogre::Entity::getShadowVolumeRenderableIterator().

void Ogre::ShadowCaster::generateShadowVolume EdgeData   edgeData,
HardwareIndexBufferSharedPtr    indexBuffer,
const Light   light,
ShadowRenderableList   shadowRenderables,
unsigned long    flags
[protected, virtual, inherited]
 

Generates the indexes required to render a shadow volume into the index buffer which is passed in, and updates shadow renderables to use it.

Parameters:
edgeData  The edge information to use
indexBuffer  The buffer into which to write data into; current contents are assumed to be discardable.
light  The light, mainly for type info as silhouette calculations should already have been done in updateEdgeListLightFacing
shadowRenderables  A list of shadow renderables which has already been constructed but will need populating with details of the index ranges to be used.
flags  Additional controller flags, see ShadowRenderableFlags

Definition at line 37 of file OgreShadowCaster.cpp.

References Ogre::EdgeData::Edge::degenerate, Ogre::EdgeData::edgeGroups, Ogre::EdgeData::EdgeGroup::edges, Ogre::ShadowRenderable::getLightCapRenderable(), Ogre::ShadowRenderable::getRenderOperationForUpdate(), Ogre::Light::getType(), Ogre::IndexData::indexCount, Ogre::RenderOperation::indexData, Ogre::IndexData::indexStart, Ogre::EdgeData::Triangle::lightFacing, Ogre::SRF_EXTRUDE_TO_INFINITY, Ogre::SRF_INCLUDE_DARK_CAP, Ogre::SRF_INCLUDE_LIGHT_CAP, Ogre::EdgeData::triangles, Ogre::EdgeData::Edge::triIndex, Ogre::VertexData::vertexCount, Ogre::EdgeData::EdgeGroup::vertexData, Ogre::EdgeData::EdgeGroup::vertexSet, Ogre::EdgeData::Triangle::vertexSet, Ogre::EdgeData::Triangle::vertIndex, and Ogre::EdgeData::Edge::vertIndex.

Referenced by Ogre::Entity::getShadowVolumeRenderableIterator().

Real Ogre::Frustum::getAspectRatio void    const [virtual, inherited]
 

Retreives the current aspect ratio.

Definition at line 575 of file OgreFrustum.cpp.

References Ogre::Frustum::mAspect, and Ogre::Real.

bool Ogre::Camera::getAutoAspectRatio void    const [inherited]
 

Retreives if AutoAspectRatio is currently set or not.

Definition at line 617 of file OgreCamera.cpp.

References Ogre::Camera::mAutoAspectRatio.

Referenced by Ogre::Viewport::_updateDimensions().

const Vector3& Ogre::Camera::getAutoTrackOffset void    const [inherited]
 

Get the auto tracking offset for this camera, if it is auto tracking.

Definition at line 428 of file OgreCamera.h.

SceneNode* Ogre::Camera::getAutoTrackTarget void    const [inherited]
 

Get the auto tracking target for this camera, if any.

Definition at line 426 of file OgreCamera.h.

const AxisAlignedBox & Ogre::Frustum::getBoundingBox void    const [virtual, inherited]
 

Overridden from MovableObject.

Implements Ogre::MovableObject.

Definition at line 588 of file OgreFrustum.cpp.

References Ogre::Frustum::mBoundingBox.

Real Ogre::Camera::getBoundingRadius void    const [virtual, inherited]
 

Overridden from MovableObject.

Reimplemented from Ogre::Frustum.

Definition at line 598 of file OgreCamera.cpp.

References Ogre::Frustum::mNearDist, and Ogre::Real.

Ray Ogre::Camera::getCameraToViewportRay Real    screenx,
Real    screeny
const [inherited]
 

Gets a world space ray as cast from the camera through a viewport position.

Parameters:
screenx, screeny  The x and y position at which the ray should intersect the viewport, in normalised screen coordinates [0,1]

Definition at line 510 of file OgreCamera.cpp.

References Ogre::Camera::getDerivedOrientation(), Ogre::Camera::getDerivedPosition(), Ogre::Frustum::mAspect, Ogre::Frustum::mFOVy, Ogre::Frustum::mNearDist, Ogre::Vector3::normalise(), and Ogre::Real.

bool Ogre::MovableObject::getCastShadows void    const [virtual, inherited]
 

Returns whether shadow casting is enabled for this object.

Implements Ogre::ShadowCaster.

Definition at line 231 of file OgreMovableObject.h.

Referenced by Ogre::OctreeNode::_addToRenderQueue(), Ogre::SubEntity::getCastsShadows(), Ogre::SceneManager::prepareShadowTextures(), Ogre::BspSceneManager::processVisibleLeaf(), Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult(), Ogre::SceneManager::renderAdditiveStencilShadowedQueueGroupObjects(), Ogre::SceneManager::renderModulativeStencilShadowedQueueGroupObjects(), and Ogre::SceneManager::renderModulativeTextureShadowedQueueGroupObjects().

virtual bool Ogre::Renderable::getCastsShadows void    const [virtual, inherited]
 

Method which reports whether this renderable would normally cast a shadow.

Remarks:
Subclasses should override this if they could have been used to generate a shadow.

Reimplemented in Ogre::SubEntity.

Definition at line 153 of file OgreRenderable.h.

Referenced by Ogre::SceneManager::validateRenderableForRendering().

virtual const PlaneList& Ogre::Renderable::getClipPlanes   const [virtual, inherited]
 

Definition at line 145 of file OgreRenderable.h.

References Ogre::PlaneList.

Referenced by Ogre::SceneManager::renderSingleObject().

const Vector4& Ogre::Renderable::getCustomParameter size_t    index const [inherited]
 

Gets the custom value associated with this Renderable at the given index.

Parameters:
see  setCustomParaemter for full details.

Definition at line 179 of file OgreRenderable.h.

References Except.

const AxisAlignedBox & Ogre::MovableObject::getDarkCapBounds const Light   light,
Real    dirLightExtrusionDist
const [virtual, inherited]
 

Overridden member from ShadowCaster.

Implements Ogre::ShadowCaster.

Definition at line 162 of file OgreMovableObject.cpp.

References Ogre::ShadowCaster::extrudeBounds(), Ogre::Light::getAs4DVector(), Ogre::MovableObject::getLightCapBounds(), Ogre::MovableObject::mWorldDarkCapBounds, and Ogre::Real.

Vector3 Ogre::Camera::getDerivedDirection void    const [inherited]
 

Gets the derived direction vector of the camera, including any translation inherited from a node attachment.

Definition at line 457 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedOrientation, and Ogre::Camera::updateView().

Referenced by Ogre::ParticleSystem::genBillboardAxes(), Ogre::BillboardSet::genBillboardAxes(), and Ogre::SceneManager::prepareShadowTextures().

const Quaternion & Ogre::Camera::getDerivedOrientation void    const [inherited]
 

Gets the derived orientation of the camera, including any rotation inherited from a node attachment.

Definition at line 445 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedOrientation, and Ogre::Camera::updateView().

Referenced by Ogre::Overlay::_findVisibleObjects(), Ogre::ParticleSystem::genBillboardAxes(), Ogre::BillboardSet::genBillboardAxes(), and Ogre::Camera::getCameraToViewportRay().

const Vector3 & Ogre::Camera::getDerivedPosition void    const [inherited]
 

Gets the derived position of the camera, including any translation inherited from a node attachment.

Definition at line 451 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedPosition, and Ogre::Camera::updateView().

Referenced by Ogre::Overlay::_findVisibleObjects(), Ogre::Light::_getNearClipVolume(), Ogre::SceneManager::_queueSkiesForRendering(), Ogre::AutoParamDataSource::getCameraPositionObjectSpace(), Ogre::Camera::getCameraToViewportRay(), Ogre::WireBoundingBox::getSquaredViewDepth(), Ogre::TerrainRenderable::getSquaredViewDepth(), Ogre::Node::getSquaredViewDepth(), Ogre::Frustum::getSquaredViewDepth(), Ogre::SceneManager::prepareShadowTextures(), Ogre::BspSceneManager::processVisibleLeaf(), Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult(), and Ogre::BspSceneManager::walkTree().

SceneDetailLevel Ogre::Camera::getDetailLevel void    const [inherited]
 

Retrieves the level of detail that the camera will render.

Definition at line 116 of file OgreCamera.cpp.

References Ogre::Camera::mSceneDetail, and Ogre::SceneDetailLevel.

Referenced by Ogre::SceneManager::_renderScene(), and Ogre::SceneManager::renderSingleObject().

Vector3 Ogre::Camera::getDirection void    const [inherited]
 

Definition at line 223 of file OgreCamera.cpp.

References Ogre::Camera::mOrientation.

EdgeData* Ogre::MovableObject::getEdgeList void    [virtual, inherited]
 

Define a default implementation of method from ShadowCaster which implements no shadows.

Implements Ogre::ShadowCaster.

Reimplemented in Ogre::Entity.

Definition at line 195 of file OgreMovableObject.h.

Real Ogre::ShadowCaster::getExtrusionDistance const Vector3   objectPos,
const Light   light
const [protected, inherited]
 

Helper moethod for calculating extrusion distance.

Definition at line 321 of file OgreShadowCaster.cpp.

References Ogre::Light::getAttenuationRange(), Ogre::Light::getDerivedPosition(), Ogre::Vector3::length(), and Ogre::Real.

Referenced by Ogre::MovableObject::getPointExtrusionDistance().

Real Ogre::Frustum::getFarClipDistance void    const [virtual, inherited]
 

Retrieves the distance from the frustum to the far clipping plane.

Definition at line 114 of file OgreFrustum.cpp.

References Ogre::Frustum::mFarDist, and Ogre::Real.

Referenced by Ogre::Light::_getFrustumClipVolumes(), and Ogre::SceneManager::_renderScene().

const Radian & Ogre::Frustum::getFOVy void    const [virtual, inherited]
 

Retrieves the frustums Y-dimension Field Of View (FOV).

Definition at line 100 of file OgreFrustum.cpp.

References Ogre::Frustum::mFOVy.

const Plane & Ogre::Frustum::getFrustumPlane unsigned short    plane const [virtual, inherited]
 

Retrieves a specified plane of the frustum.

Remarks:
Gets a reference to one of the planes which make up the frustum frustum, e.g. for clipping purposes.

Definition at line 161 of file OgreFrustum.cpp.

References Ogre::Frustum::mFrustumPlanes, and Ogre::Frustum::updateView().

Referenced by Ogre::Light::_getFrustumClipVolumes().

ShadowRenderableListIterator Ogre::MovableObject::getLastShadowVolumeRenderableIterator void    [virtual, inherited]
 

Return the last calculated shadow renderables.

Implements Ogre::ShadowCaster.

Reimplemented in Ogre::Entity.

Definition at line 206 of file OgreMovableObject.h.

const AxisAlignedBox & Ogre::MovableObject::getLightCapBounds void    const [virtual, inherited]
 

Overridden member from ShadowCaster.

Implements Ogre::ShadowCaster.

Definition at line 156 of file OgreMovableObject.cpp.

References Ogre::MovableObject::getWorldBoundingBox().

Referenced by Ogre::MovableObject::getDarkCapBounds().

const LightList & Ogre::Frustum::getLights void    const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 655 of file OgreFrustum.cpp.

References Ogre::LightList.

Real Ogre::Camera::getLodBias void    const [inherited]
 

Returns the level-of-detail bias factor currently applied to this camera.

Remarks:
See Camera::setLodBias for more details.

Definition at line 500 of file OgreCamera.cpp.

References Ogre::Camera::mSceneLodFactor, and Ogre::Real.

Material * Ogre::Frustum::getMaterial void    const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 609 of file OgreFrustum.cpp.

References Ogre::Frustum::mMaterial.

const String & Ogre::Camera::getMovableType void    const [virtual, inherited]
 

Overridden from MovableObject.

Reimplemented from Ogre::Frustum.

Definition at line 464 of file OgreCamera.cpp.

References Ogre::Camera::msMovableType, and Ogre::String.

const String & Ogre::Camera::getName void    const [virtual, inherited]
 

Gets the camera's name.

Reimplemented from Ogre::Frustum.

Definition at line 103 of file OgreCamera.cpp.

References Ogre::Camera::mName, and Ogre::String.

Referenced by Ogre::Viewport::_updateDimensions().

Real Ogre::Frustum::getNearClipDistance void    const [virtual, inherited]
 

Sets the position of the near clipping plane.

Definition at line 130 of file OgreFrustum.cpp.

References Ogre::Frustum::mNearDist, and Ogre::Real.

Referenced by Ogre::Light::_getNearClipVolume(), and Ogre::SceneManager::prepareShadowTextures().

virtual bool Ogre::Renderable::getNormaliseNormals void    const [virtual, inherited]
 

Returns whether or not this Renderable wishes the hardware to normalise normals.

Reimplemented in Ogre::SubEntity.

Definition at line 137 of file OgreRenderable.h.

Referenced by Ogre::SceneManager::renderSingleObject().

virtual unsigned short Ogre::Renderable::getNumWorldTransforms void    const [virtual, inherited]
 

Returns the number of world transform matrices this renderable requires.

Remarks:
When a renderable uses vertex blending, it uses multiple world matrices instead of a single one. Each vertex sent to the pipeline can reference one or more matrices in this list with given weights. If a renderable does not use vertex blending this method returns 1, which is the default for simplicity.

Reimplemented in Ogre::SubEntity, and Ogre::BorderRenderable.

Definition at line 103 of file OgreRenderable.h.

Referenced by Ogre::AutoParamDataSource::getWorldMatrix(), Ogre::AutoParamDataSource::getWorldMatrixArray(), Ogre::AutoParamDataSource::getWorldMatrixCount(), and Ogre::SceneManager::renderSingleObject().

const Quaternion & Ogre::Camera::getOrientation void    const [inherited]
 

Returns the camera's current orientation.

Definition at line 433 of file OgreCamera.cpp.

References Ogre::Camera::mOrientation.

const Quaternion & Ogre::Camera::getOrientationForViewUpdate void    const [protected, virtual, inherited]
 

Get the derived orientation of this frustum.

Reimplemented from Ogre::Frustum.

Definition at line 612 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedOrientation.

Node * Ogre::MovableObject::getParentNode void    const [virtual, inherited]
 

Returns the node to which this object is attached.

Remarks:
A MovableObject may be attached to either a SceneNode or to a TagPoint, the latter case if it's attached to a bone on an animated entity. Both are Node subclasses so this method will return either.

Definition at line 75 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mParentNode.

Referenced by Ogre::TagPoint::_updateFromParent(), Ogre::Entity::detachObjectImpl(), Ogre::BspIntersectionSceneQuery::execute(), Ogre::SubEntity::getSquaredViewDepth(), Ogre::Entity::EntityShadowRenderable::getWorldOrientation(), Ogre::Entity::EntityShadowRenderable::getWorldPosition(), Ogre::TagPoint::needUpdate(), Ogre::BspSceneManager::processVisibleLeaf(), and Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult().

SceneNode * Ogre::MovableObject::getParentSceneNode void    const [virtual, inherited]
 

Returns the scene node to which this object is attached.

Remarks:
A MovableObject may be attached to either a SceneNode or to a TagPoint, the latter case if it's attached to a bone on an animated entity. This method will return the scene node of the parent entity if the latter is true.

Definition at line 80 of file OgreMovableObject.cpp.

References Ogre::TagPoint::getParentEntity().

Referenced by Ogre::TerrainRenderable::getLights(), Ogre::TagPoint::getLights(), Ogre::SubEntity::getLights(), Ogre::SimpleRenderable::getLights(), and Ogre::BillboardSet::getLights().

Real Ogre::MovableObject::getPointExtrusionDistance const Light   l const [virtual, inherited]
 

Get the distance to extrude for a point/spot light.

Implements Ogre::ShadowCaster.

Definition at line 172 of file OgreMovableObject.cpp.

References Ogre::Node::_getDerivedPosition(), Ogre::ShadowCaster::getExtrusionDistance(), Ogre::MovableObject::mParentNode, and Ogre::Real.

const Vector3 & Ogre::Camera::getPosition void    const [inherited]
 

Retrieves the camera's position.

Definition at line 138 of file OgreCamera.cpp.

References Ogre::Camera::mPosition.

Referenced by Ogre::Camera::setWindowImpl().

const Vector3 & Ogre::Camera::getPositionForViewUpdate void    const [protected, virtual, inherited]
 

Get the derived position of this frustum.

Reimplemented from Ogre::Frustum.

Definition at line 606 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedPosition.

const Matrix4 & Ogre::Frustum::getProjectionMatrix void    const [virtual, inherited]
 

Gets the projection matrix for this frustum.

Mainly for use by OGRE internally.

Remarks:
This method retrieves the rendering-API dependent version of the projection matrix. If you want a 'typical' projection matrix then use getStandardProjectionMatrix.

Definition at line 136 of file OgreFrustum.cpp.

References Ogre::Frustum::mProjMatrix, and Ogre::Frustum::updateFrustum().

Referenced by Ogre::GLRenderSystem::_setTextureCoordCalculation(), Ogre::D3D9RenderSystem::_setTextureMatrix(), Ogre::D3DRenderSystem::_setTextureMatrix(), Ogre::BspSceneManager::renderStaticGeometry(), and Ogre::SceneManager::useRenderableViewProjMode().

ProjectionType Ogre::Frustum::getProjectionType void    const [virtual, inherited]
 

Retrieves info on the type of projection used (orthographic or perspective).

Definition at line 698 of file OgreFrustum.cpp.

References Ogre::Frustum::mProjType, and Ogre::ProjectionType.

Referenced by Ogre::D3D9RenderSystem::_setTextureMatrix(), and Ogre::D3DRenderSystem::_setTextureMatrix().

virtual unsigned long Ogre::MovableObject::getQueryFlags void    const [virtual, inherited]
 

Returns the query flags relevant for this object.

Definition at line 192 of file OgreMovableObject.h.

Referenced by Ogre::OctreePlaneBoundedVolumeListSceneQuery::execute(), Ogre::OctreeSphereSceneQuery::execute(), Ogre::OctreeRaySceneQuery::execute(), Ogre::OctreeAxisAlignedBoxSceneQuery::execute(), Ogre::OctreeIntersectionSceneQuery::execute(), and Ogre::BspIntersectionSceneQuery::execute().

virtual const Matrix4& Ogre::Frustum::getReflectionMatrix void    const [virtual, inherited]
 

Returns the reflection matrix of the frustum if appropriate.

Definition at line 381 of file OgreFrustum.h.

virtual const Plane& Ogre::Frustum::getReflectionPlane void    const [virtual, inherited]
 

Returns the reflection plane of the frustum if appropriate.

Definition at line 383 of file OgreFrustum.h.

virtual SceneDetailLevel Ogre::Renderable::getRenderDetail   const [virtual, inherited]
 

Returns the preferred rasterisation mode of this renderable.

Reimplemented in Ogre::SubEntity.

Definition at line 134 of file OgreRenderable.h.

References Ogre::SceneDetailLevel, and Ogre::SDL_SOLID.

Referenced by Ogre::SceneManager::renderSingleObject().

void Ogre::Frustum::getRenderOperation RenderOperation   op [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 614 of file OgreFrustum.cpp.

References Ogre::Frustum::mVertexData, Ogre::RenderOperation::operationType, Ogre::Frustum::updateFrustum(), Ogre::Frustum::updateView(), Ogre::RenderOperation::useIndexes, and Ogre::RenderOperation::vertexData.

RenderQueueGroupID Ogre::MovableObject::getRenderQueueGroup void    const [virtual, inherited]
 

Gets the queue group for this entity, see setRenderQueueGroup for full details.

Definition at line 116 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mRenderQueueID, and Ogre::RenderQueueGroupID.

Vector3 Ogre::Camera::getRight void    const [inherited]
 

Gets the camera's right vector.

Definition at line 236 of file OgreCamera.cpp.

References Ogre::Camera::mOrientation.

SceneManager * Ogre::Camera::getSceneManager void    const [inherited]
 

Returns a pointer to the SceneManager this camera is rendering through.

Definition at line 98 of file OgreCamera.cpp.

References Ogre::Camera::mSceneMgr.

ShadowRenderableListIterator Ogre::MovableObject::getShadowVolumeRenderableIterator ShadowTechnique    shadowTechnique,
const Light   light,
HardwareIndexBufferSharedPtr   indexBuffer,
bool    extrudeVertices,
Real    extrusionDist,
unsigned long    flags = 0
[virtual, inherited]
 

Define a default implementation of method from ShadowCaster which implements no shadows.

Implements Ogre::ShadowCaster.

Reimplemented in Ogre::Entity.

Definition at line 197 of file OgreMovableObject.h.

References Ogre::Real, and Ogre::ShadowTechnique.

Real Ogre::Frustum::getSquaredViewDepth const Camera   cam const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 645 of file OgreFrustum.cpp.

References Ogre::Node::_getDerivedPosition(), Ogre::Camera::getDerivedPosition(), Ogre::MovableObject::mParentNode, and Ogre::Real.

const Matrix4 & Ogre::Frustum::getStandardProjectionMatrix void    const [virtual, inherited]
 

Gets the 'standard' projection matrix for this frustum, ie the projection matrix which conforms to standard right-handed rules.

Remarks:
This differs from the rendering-API dependent getProjectionMatrix in that it always returns a right-handed projection matrix result no matter what rendering API is being used - this is required for vertex and fragment programs for example. However, the resulting depth range may still vary between render systems since D3D uses [0,1] and GL uses [-1,1], and the range must be kept the same between programmable and fixed-function pipelines.

Definition at line 144 of file OgreFrustum.cpp.

References Ogre::Frustum::mStandardProjMatrix, and Ogre::Frustum::updateFrustum().

Referenced by Ogre::AutoParamDataSource::getProjectionMatrix(), Ogre::AutoParamDataSource::getTextureViewProjMatrix(), and Ogre::Frustum::projectSphere().

virtual Technique* Ogre::Renderable::getTechnique void    const [virtual, inherited]
 

Retrieves a pointer to the Material Technique this renderable object uses.

Remarks:
This is to allow Renderables to use a chosen Technique if they wish, otherwise they will use the best Technique available for the Material they are using.

Reimplemented in Ogre::SubEntity.

Definition at line 68 of file OgreRenderable.h.

Referenced by Ogre::RenderPriorityGroup::addRenderable().

Vector3 Ogre::Camera::getUp void    const [inherited]
 

Gets the camera's up vector.

Definition at line 230 of file OgreCamera.cpp.

References Ogre::Camera::mOrientation.

virtual UserDefinedObject* Ogre::MovableObject::getUserObject void    [virtual, inherited]
 

Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject.

Definition at line 153 of file OgreMovableObject.h.

const Matrix4 & Ogre::Frustum::getViewMatrix void    const [virtual, inherited]
 

Gets the view matrix for this frustum.

Mainly for use by OGRE internally.

Definition at line 152 of file OgreFrustum.cpp.

References Ogre::Frustum::mViewMatrix, and Ogre::Frustum::updateView().

Referenced by Ogre::Light::_getFrustumClipVolumes(), Ogre::Light::_getNearClipVolume(), Ogre::GLRenderSystem::_setTextureCoordCalculation(), Ogre::D3D9RenderSystem::_setTextureMatrix(), Ogre::D3DRenderSystem::_setTextureMatrix(), Ogre::AutoParamDataSource::getTextureViewProjMatrix(), Ogre::AutoParamDataSource::getViewMatrix(), Ogre::Frustum::projectSphere(), Ogre::BspSceneManager::renderStaticGeometry(), and Ogre::SceneManager::useRenderableViewProjMode().

Viewport* Ogre::Camera::getViewport void    const [inherited]
 

Get the last viewport which was attached to this camera.

Note:
This is not guaranteed to be the only viewport which is using this camera, just the last once which was created referring to it.

Definition at line 435 of file OgreCamera.h.

Referenced by Ogre::TerrainRenderable::_calculateCFactor().

OctreeCamera::Visibility Ogre::OctreeCamera::getVisibility const AxisAlignedBox   bound
 

Returns the visiblity of the box.

Definition at line 52 of file OgreOctreeCamera.cpp.

References Ogre::FRUSTUM_PLANE_BOTTOM, Ogre::FRUSTUM_PLANE_FAR, Ogre::FRUSTUM_PLANE_LEFT, Ogre::FRUSTUM_PLANE_NEAR, Ogre::FRUSTUM_PLANE_RIGHT, Ogre::FRUSTUM_PLANE_TOP, FULL, Ogre::AxisAlignedBox::getAllCorners(), Ogre::Plane::getDistance(), Ogre::AxisAlignedBox::isNull(), Ogre::Frustum::mFarDist, Ogre::Frustum::mFrustumPlanes, NONE, PARTIAL, and Ogre::Camera::updateView().

const std::vector< Plane > & Ogre::Camera::getWindowPlanes void    const [inherited]
 

Gets the window clip planes, only applicable if isWindowSet == true.

Definition at line 592 of file OgreCamera.cpp.

References Ogre::Camera::mWindowClipPlanes, and Ogre::Camera::setWindowImpl().

Referenced by Ogre::SceneManager::_renderScene().

const AxisAlignedBox & Ogre::MovableObject::getWorldBoundingBox bool    derive = false const [virtual, inherited]
 

Retrieves the axis-aligned bounding box for this object in world coordinates.

Implements Ogre::ShadowCaster.

Definition at line 133 of file OgreMovableObject.cpp.

References Ogre::MovableObject::_getParentNodeFullTransform(), Ogre::MovableObject::getBoundingBox(), Ogre::MovableObject::mWorldAABB, and Ogre::AxisAlignedBox::transform().

Referenced by Ogre::OctreePlaneBoundedVolumeListSceneQuery::execute(), Ogre::OctreeSphereSceneQuery::execute(), Ogre::OctreeRaySceneQuery::execute(), Ogre::OctreeAxisAlignedBoxSceneQuery::execute(), Ogre::OctreeIntersectionSceneQuery::execute(), Ogre::BspIntersectionSceneQuery::execute(), Ogre::MovableObject::getLightCapBounds(), Ogre::BspSceneManager::processVisibleLeaf(), and Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult().

const Sphere & Ogre::MovableObject::getWorldBoundingSphere bool    derive = false const [virtual, inherited]
 

Retrieves the worldspace bounding sphere for this object.

Definition at line 145 of file OgreMovableObject.cpp.

References Ogre::Node::_getDerivedPosition(), Ogre::MovableObject::getBoundingRadius(), Ogre::MovableObject::mParentNode, Ogre::MovableObject::mWorldBoundingSphere, Ogre::Sphere::setCenter(), and Ogre::Sphere::setRadius().

Referenced by Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult().

const Quaternion & Ogre::Frustum::getWorldOrientation void    const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 629 of file OgreFrustum.cpp.

References Ogre::Node::_getDerivedOrientation(), and Ogre::MovableObject::mParentNode.

const Vector3 & Ogre::Frustum::getWorldPosition void    const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 637 of file OgreFrustum.cpp.

References Ogre::Node::_getDerivedPosition(), and Ogre::MovableObject::mParentNode.

const Vector3 * Ogre::Frustum::getWorldSpaceCorners void    const [virtual, inherited]
 

Gets the world space corners of the frustum.

Remarks:
The corners are ordered as follows: top-right near, top-left near, bottom-left near, bottom-right near, top-right far, top-left far, bottom-left far, bottom-right far.

Definition at line 684 of file OgreFrustum.cpp.

References Ogre::Frustum::mWorldSpaceCorners, and Ogre::Frustum::updateView().

Referenced by Ogre::Light::_getFrustumClipVolumes(), Ogre::Light::_getNearClipVolume(), and Ogre::SceneManager::findShadowCastersForLight().

void Ogre::Frustum::getWorldTransforms Matrix4   xform const [virtual, inherited]
 

Overridden from Renderable.

Implements Ogre::Renderable.

Definition at line 623 of file OgreFrustum.cpp.

References Ogre::Node::getWorldTransforms(), and Ogre::MovableObject::mParentNode.

void Ogre::Camera::invalidateFrustum void    const [protected, virtual, inherited]
 

Signal to update frustum information.

Reimplemented from Ogre::Frustum.

Definition at line 381 of file OgreCamera.cpp.

References Ogre::Frustum::mRecalcFrustum, and Ogre::Camera::mRecalcWindow.

Referenced by Ogre::Camera::Camera().

void Ogre::Camera::invalidateView void    const [protected, virtual, inherited]
 

Signal to update view information.

Reimplemented from Ogre::Frustum.

Definition at line 375 of file OgreCamera.cpp.

References Ogre::Frustum::mRecalcView, and Ogre::Camera::mRecalcWindow.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::move(), Ogre::Camera::moveRelative(), Ogre::Camera::pitch(), Ogre::Camera::roll(), Ogre::Camera::rotate(), Ogre::Camera::setDirection(), Ogre::Camera::setOrientation(), Ogre::Camera::setPosition(), Ogre::Camera::setWindow(), and Ogre::Camera::yaw().

bool Ogre::MovableObject::isAttached void    const [virtual, inherited]
 

Returns true if this object is attached to a SceneNode or TagPoint.

Definition at line 93 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mParentNode.

Referenced by Ogre::Entity::attachObjectToBone().

bool Ogre::Frustum::isFrustumOutOfDate void    const [protected, virtual, inherited]
 

Definition at line 430 of file OgreFrustum.cpp.

References Ogre::MovablePlane::_getDerivedPlane(), Ogre::Frustum::mLastLinkedObliqueProjPlane, Ogre::Frustum::mLinkedObliqueProjPlane, Ogre::Frustum::mObliqueProjPlane, and Ogre::Frustum::mRecalcFrustum.

Referenced by Ogre::Frustum::updateFrustum().

virtual bool Ogre::Frustum::isReflected void    const [virtual, inherited]
 

Returns whether this frustum is being reflected.

Definition at line 379 of file OgreFrustum.h.

Referenced by Ogre::SceneManager::_renderScene().

bool Ogre::Camera::isViewOutOfDate void    const [protected, virtual, inherited]
 

Reimplemented from Ogre::Frustum.

Definition at line 323 of file OgreCamera.cpp.

References Ogre::Node::_getDerivedOrientation(), Ogre::MovablePlane::_getDerivedPlane(), Ogre::Node::_getDerivedPosition(), Ogre::Camera::mDerivedOrientation, Ogre::Camera::mDerivedPosition, Ogre::Frustum::mLastLinkedReflectionPlane, Ogre::Frustum::mLastParentOrientation, Ogre::Frustum::mLastParentPosition, Ogre::Frustum::mLinkedReflectPlane, Ogre::Camera::mOrientation, Ogre::MovableObject::mParentNode, Ogre::Camera::mPosition, Ogre::Frustum::mRecalcView, Ogre::Frustum::mReflect, Ogre::Frustum::mReflectMatrix, and Ogre::Frustum::mReflectPlane.

bool Ogre::MovableObject::isVisible void    const [virtual, inherited]
 

Returns whether or not this object is supposed to be visible or not.

Definition at line 104 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mVisible.

Referenced by Ogre::OctreeNode::_addToRenderQueue(), Ogre::SceneManager::_populateLightList(), Ogre::BspSceneManager::processVisibleLeaf(), and Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult().

bool Ogre::Frustum::isVisible const Vector3   vert,
FrustumPlane   culledBy = 0
const [virtual, inherited]
 

Tests whether the given vertex is visible in the Frustum.

Parameters:
vert  Vertex to be checked
culledBy  Optional pointer to an int which will be filled by the plane number which culled the box if the result was false;
Returns:
If the box was visible, true is returned.

Otherwise, false is returned.

Definition at line 212 of file OgreFrustum.cpp.

References Ogre::FRUSTUM_PLANE_FAR, Ogre::FrustumPlane, Ogre::Plane::getSide(), Ogre::Frustum::mFarDist, Ogre::Frustum::mFrustumPlanes, and Ogre::Frustum::updateView().

bool Ogre::Frustum::isVisible const Sphere   bound,
FrustumPlane   culledBy = 0
const [virtual, inherited]
 

Tests whether the given container is visible in the Frustum.

Parameters:
bound  Bounding sphere to be checked
culledBy  Optional pointer to an int which will be filled by the plane number which culled the box if the result was false;
Returns:
If the sphere was visible, true is returned.

Otherwise, false is returned.

Definition at line 239 of file OgreFrustum.cpp.

References Ogre::FRUSTUM_PLANE_FAR, Ogre::FrustumPlane, Ogre::Sphere::getCenter(), Ogre::Plane::getDistance(), Ogre::Sphere::getRadius(), Ogre::Frustum::mFarDist, Ogre::Frustum::mFrustumPlanes, and Ogre::Frustum::updateView().

bool Ogre::Frustum::isVisible const AxisAlignedBox   bound,
FrustumPlane   culledBy = 0
const [virtual, inherited]
 

Tests whether the given container is visible in the Frustum.

Parameters:
bound  Bounding box to be checked
culledBy  Optional pointer to an int which will be filled by the plane number which culled the box if the result was false;
Returns:
If the box was visible, true is returned.

Otherwise, false is returned.

Definition at line 171 of file OgreFrustum.cpp.

References Ogre::FRUSTUM_PLANE_FAR, Ogre::FrustumPlane, Ogre::AxisAlignedBox::getAllCorners(), Ogre::Plane::getSide(), Ogre::AxisAlignedBox::isNull(), Ogre::Frustum::mFarDist, Ogre::Frustum::mFrustumPlanes, and Ogre::Frustum::updateView().

Referenced by Ogre::SceneNode::_findVisibleObjects(), Ogre::BillboardSet::billboardVisible(), Ogre::SceneManager::findLightsAffectingFrustum(), Ogre::SceneManager::findShadowCastersForLight(), Ogre::BspSceneManager::processVisibleLeaf(), Ogre::SceneManager::ShadowCasterSceneQueryListener::queryResult(), Ogre::SceneManager::renderShadowVolumesToStencil(), and Ogre::BspSceneManager::walkTree().

virtual bool Ogre::Camera::isWindowSet void    const [virtual, inherited]
 

Returns if a viewport window is being used.

Definition at line 419 of file OgreCamera.h.

Referenced by Ogre::SceneManager::_renderScene().

void Ogre::Camera::lookAt Real    x,
Real    y,
Real    z
[inherited]
 

Points the camera at a location in worldspace.

Remarks:
This is a helper method to automatically generate the direction vector for the camera, based on it's current position and the supplied look-at point.
Parameters:
x 
y 
z  Co-ordinates of the point to look at.

Definition at line 249 of file OgreCamera.cpp.

References Ogre::Camera::lookAt(), and Ogre::Real.

void Ogre::Camera::lookAt const Vector3   targetPoint [inherited]
 

Points the camera at a location in worldspace.

Remarks:
This is a helper method to automatically generate the direction vector for the camera, based on it's current position and the supplied look-at point.
Parameters:
targetPoint  A vector specifying the look at point.

Definition at line 242 of file OgreCamera.cpp.

References Ogre::Camera::mDerivedPosition, Ogre::Camera::setDirection(), and Ogre::Camera::updateView().

Referenced by Ogre::Camera::_autoTrack(), and Ogre::Camera::lookAt().

void Ogre::Camera::move const Vector3   vec [inherited]
 

Moves the camera's position by the vector offset provided along world axes.

Definition at line 144 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), and Ogre::Camera::mPosition.

void Ogre::Camera::moveRelative const Vector3   vec [inherited]
 

Moves the camera's position by the vector offset provided along it's own axes (relative to orientation).

Definition at line 151 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mOrientation, and Ogre::Camera::mPosition.

void Ogre::Camera::pitch const Radian   angle [inherited]
 

Pitches the camera up/down anticlockwise around it's local z axis.

Definition at line 287 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mOrientation, and Ogre::Camera::rotate().

bool Ogre::Frustum::projectSphere const Sphere   sphere,
Real   left,
Real   top,
Real   right,
Real   bottom
const [virtual, inherited]
 

Project a sphere onto the near plane and get the bounding rectangle.

Parameters:
sphere  The world-space sphere to project
radius  Radius of the sphere
left, top, right, bottom  Pointers to destination values, these will be completed with the normalised device coordinates (in the range {-1,1})
Returns:
true if the sphere was projected to a subset of the near plane, false if the entire near plane was contained

Definition at line 740 of file OgreFrustum.cpp.

References Ogre::Sphere::getCenter(), Ogre::Sphere::getRadius(), Ogre::Frustum::getStandardProjectionMatrix(), Ogre::Frustum::getViewMatrix(), Ogre::Real, Ogre::Vector3::squaredLength(), Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.

Referenced by Ogre::SceneManager::renderShadowVolumesToStencil().

virtual void Ogre::MovableObject::removeQueryFlags unsigned long    flags [virtual, inherited]
 

As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object.

Definition at line 189 of file OgreMovableObject.h.

void Ogre::Camera::resetWindow void    [virtual, inherited]
 

Cancel view window.

Definition at line 542 of file OgreCamera.cpp.

References Ogre::Camera::mWindowSet.

void Ogre::Camera::roll const Radian   angle [inherited]
 

Rolls the camera anticlockwise, around its local z axis.

Definition at line 256 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mOrientation, and Ogre::Camera::rotate().

void Ogre::Camera::rotate const Quaternion   q [inherited]
 

Rotate the camera around an aritrary axis using a Quarternion.

Definition at line 306 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), and Ogre::Camera::mOrientation.

void Ogre::Camera::rotate const Vector3   axis,
const Radian   angle
[inherited]
 

Rotate the camera around an arbitrary axis.

Definition at line 298 of file OgreCamera.cpp.

References Ogre::Quaternion::FromAngleAxis().

Referenced by Ogre::Camera::pitch(), Ogre::Camera::roll(), and Ogre::Camera::yaw().

void Ogre::Frustum::setAspectRatio Real    ratio [virtual, inherited]
 

Sets the aspect ratio for the frustum viewport.

Remarks:
The ratio between the x and y dimensions of the rectangular area visible through the frustum is known as aspect ratio: aspect = width / height .

The default for most fullscreen windows is 1.3333 - this is also assumed by Ogre unless you use this method to state otherwise.

Definition at line 581 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mAspect, and Ogre::Real.

Referenced by Ogre::Viewport::_updateDimensions(), and Ogre::SceneManager::createShadowTextures().

void Ogre::Camera::setAutoAspectRatio bool    autoratio [inherited]
 

If set to true a vieport that owns this frustum will be able to recalculate the aspect ratio whenever the frustum is resized.

Remarks:
You should set this to true only if the frustum / camera is used by one viewport at the same time. Otherwise the aspect ratio for other viewports may be wrong.

Definition at line 622 of file OgreCamera.cpp.

References Ogre::Camera::mAutoAspectRatio.

void Ogre::Camera::setAutoTracking bool    enabled,
SceneNode   target = 0,
const Vector3   offset = Vector3::ZERO
[inherited]
 

Enables / disables automatic tracking of a SceneNode.

Remarks:
If you enable auto-tracking, this Camera will automatically rotate to look at the target SceneNode every frame, no matter how it or SceneNode move. This is handy if you want a Camera to be focused on a single object or group of objects. Note that by default the Camera looks at the origin of the SceneNode, if you want to tweak this, e.g. if the object which is attached to this target node is quite big and you want to point the camera at a specific point on it, provide a vector in the 'offset' parameter and the camera's target point will be adjusted.
Parameters:
enabled  If true, the Camera will track the SceneNode supplied as the next parameter (cannot be null). If false the camera will cease tracking and will remain in it's current orientation.
target  Pointer to the SceneNode which this Camera will track. Make sure you don't delete this SceneNode before turning off tracking (e.g. SceneManager::clearScene will delete it so be careful of this). Can be null if and only if the enabled param is false.
offset  If supplied, the camera targets this point in local space of the target node instead of the origin of the target node. Good for fine tuning the look at point.

Definition at line 469 of file OgreCamera.cpp.

References Ogre::Camera::mAutoTrackOffset, and Ogre::Camera::mAutoTrackTarget.

void Ogre::MovableObject::setCastShadows bool    enabled [inherited]
 

Sets whether or not this object will cast shadows.

Remarks:
This setting simply allows you to turn on/off shadows for a given object. An object will not cast shadows unless the scene supports it in any case (see SceneManager::setShadowTechnique), and also the material which is in use must also have shadow casting enabled. By default all entities cast shadows. If, however, for some reason you wish to disable this for a single object then you can do so using this method.
Note:
This method normally refers to objects which block the light, but since Light is also a subclass of MovableObject, in that context it means whether the light causes shadows itself.

Definition at line 229 of file OgreMovableObject.h.

Referenced by Ogre::Entity::Entity(), Ogre::SceneManager::setSkyBox(), Ogre::SceneManager::setSkyDome(), and Ogre::SceneManager::setSkyPlane().

void Ogre::Renderable::setCustomParameter size_t    index,
const Vector4   value
[inherited]
 

Sets a custom parameter for this Renderable, which may be used to drive calculations for this specific Renderable, like GPU program parameters.

Remarks:
Calling this method simply associates a numeric index with a 4-dimensional value for this specific Renderable. This is most useful if the material which this Renderable uses a vertex or fragment program, and has an ACT_CUSTOM parameter entry. This parameter entry can refer to the index you specify as part of this call, thereby mapping a custom parameter for this renderable to a program parameter.
Parameters:
index  The index with which to associate the value. Note that this does not have to start at 0, and can include gaps. It also has no direct correlation with a GPU program parameter index - the mapping between the two is performed by the ACT_CUSTOM entry, if that is used.
value  The value to associate.

Definition at line 170 of file OgreRenderable.h.

void Ogre::Camera::setDetailLevel SceneDetailLevel    sd [inherited]
 

Sets the level of rendering detail required from this camera.

Remarks:
Each camera is set to render at full detail by default, that is with full texturing, lighting etc. This method lets you change that behaviour, allowing you to make the camera just render a wireframe view, for example.

Definition at line 110 of file OgreCamera.cpp.

References Ogre::Camera::mSceneDetail, and Ogre::SceneDetailLevel.

void Ogre::Camera::setDirection const Vector3   vec [inherited]
 

Sets the camera's direction vector.

Definition at line 167 of file OgreCamera.cpp.

References Ogre::Vector3::crossProduct(), Ogre::Quaternion::FromAngleAxis(), Ogre::Quaternion::FromAxes(), Ogre::Vector3::getRotationTo(), Ogre::Camera::invalidateView(), Ogre::Camera::mDerivedOrientation, Ogre::Camera::mOrientation, Ogre::Camera::mYawFixedAxis, Ogre::Vector3::normalise(), Ogre::Quaternion::ToAxes(), and Ogre::Camera::updateView().

void Ogre::Camera::setDirection Real    x,
Real    y,
Real    z
[inherited]
 

Sets the camera's direction vector.

Remarks:
Note that the 'up' vector for the camera will automatically be recalculated based on the current 'up' vector (i.e. the roll will remain the same).

Definition at line 161 of file OgreCamera.cpp.

References Ogre::Real.

Referenced by Ogre::Camera::lookAt(), and Ogre::SceneManager::prepareShadowTextures().

void Ogre::Frustum::setFarClipDistance Real    farDist [virtual, inherited]
 

Sets the distance to the far clipping plane.

Remarks:
The view frustrum is a pyramid created from the frustum position and the edges of the viewport. This method sets the distance for the far end of that pyramid. Different applications need different values: e.g. a flight sim needs a much further far clipping plane than a first-person shooter. An important point here is that the larger the ratio between near and far clipping planes, the lower the accuracy of the Z-buffer used to depth-cue pixels. This is because the Z-range is limited to the size of the Z buffer (16 or 32-bit) and the max values must be spread over the gap between near and far clip planes. As it happens, you can affect the accuracy far more by altering the near distance rather than the far distance, but keep this in mind.
Parameters:
far  The distance to the far clipping plane from the frustum in world coordinates.If you specify 0, this means an infinite view distance which is useful especially when projecting shadows; but be careful not to use a near distance too close.

Definition at line 107 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mFarDist, and Ogre::Real.

Referenced by Ogre::SceneManager::_renderScene().

void Ogre::Camera::setFixedYawAxis bool    useFixed,
const Vector3   fixedAxis = Vector3::UNIT_Y
[inherited]
 

Tells the camera whether to yaw around it's own local Y axis or a fixed axis of choice.

Remarks:
This method allows you to change the yaw behaviour of the camera - by default, the camera yaws around it's own local Y axis. This is often what you want - for example a flying camera
  • but sometimes this produces unwanted effects. For example, if you're making a first-person shooter, you really don't want the yaw axis to reflect the local camera Y, because this would mean a different yaw axis if the player is looking upwards rather than when they are looking straight ahead. You can change this behaviour by setting the yaw to a fixed axis (say, the world Y).
Parameters:
useFixed  If true, the axis passed in the second parameter will always be the yaw axis no matter what the camera orientation. If false, the camera returns to it's default behaviour.
fixedAxis  The axis to use if the first parameter is true.

Definition at line 414 of file OgreCamera.cpp.

References Ogre::Camera::mYawFixed, and Ogre::Camera::mYawFixedAxis.

Referenced by Ogre::Camera::Camera().

void Ogre::Frustum::setFOVy const Radian   fovy [virtual, inherited]
 

Sets the Y-dimension Field Of View (FOV) of the frustum.

Remarks:
Field Of View (FOV) is the angle made between the frustum's position, and the edges of the 'screen' onto which the scene is projected. High values (90+ degrees) result in a wide-angle, fish-eye kind of view, low values (30- degrees) in a stretched, telescopic kind of view. Typical values are between 45 and 60 degrees.

This value represents the VERTICAL field-of-view. The horizontal field of view is calculated from this depending on the dimensions of the viewport (they will only be the same if the viewport is square).

Note:
Setting the FOV overrides the value supplied for frustum::setNearClipPlane.

Definition at line 93 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), and Ogre::Frustum::mFOVy.

Referenced by Ogre::SceneManager::prepareShadowTextures().

void Ogre::Camera::setLodBias Real    factor = 1.0 [inherited]
 

Sets the level-of-detail factor for this Camera.

Remarks:
This method can be used to influence the overall level of detail of the scenes rendered using this camera. Various elements of the scene have level-of-detail reductions to improve rendering speed at distance; this method allows you to hint to those elements that you would like to adjust the level of detail that they would normally use (up or down).

The most common use for this method is to reduce the overall level of detail used for a secondary camera used for sub viewports like rear-view mirrors etc. Note that scene elements are at liberty to ignore this setting if they choose, this is merely a hint.

Parameters:
factor  The factor to apply to the usual level of detail calculation. Higher values increase the detail, so 2.0 doubles the normal detail and 0.5 halves it.

Definition at line 493 of file OgreCamera.cpp.

References Ogre::Camera::mSceneLodFactor, Ogre::Camera::mSceneLodFactorInv, and Ogre::Real.

void Ogre::Frustum::setNearClipDistance Real    nearDist [virtual, inherited]
 

Sets the position of the near clipping plane.

Remarks:
The position of the near clipping plane is the distance from the frustums position to the screen on which the world is projected. The near plane distance, combined with the field-of-view and the aspect ratio, determines the size of the viewport through which the world is viewed (in world co-ordinates). Note that this world viewport is different to a screen viewport, which has it's dimensions expressed in pixels. The frustums viewport should have the same aspect ratio as the screen viewport it renders into to avoid distortion.
Parameters:
near  The distance to the near clipping plane from the frustum in world coordinates.

Definition at line 120 of file OgreFrustum.cpp.

References Except, Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mNearDist, and Ogre::Real.

Referenced by Ogre::SceneManager::prepareShadowTextures().

void Ogre::Camera::setOrientation const Quaternion   q [inherited]
 

Sets the camera's orientation.

Definition at line 439 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), and Ogre::Camera::mOrientation.

Referenced by Ogre::SceneManager::prepareShadowTextures().

void Ogre::Camera::setPosition const Vector3   vec [inherited]
 

Sets the camera's position.

Definition at line 131 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), and Ogre::Camera::mPosition.

void Ogre::Camera::setPosition Real    x,
Real    y,
Real    z
[inherited]
 

Sets the camera's position.

Definition at line 122 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mPosition, Ogre::Real, Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.

Referenced by Ogre::SceneManager::prepareShadowTextures().

void Ogre::Frustum::setProjectionType ProjectionType    pt [virtual, inherited]
 

Sets the type of projection to use (orthographic or perspective).

Default is perspective.

Definition at line 691 of file OgreFrustum.cpp.

References Ogre::Frustum::invalidateFrustum(), Ogre::Frustum::mProjType, and Ogre::ProjectionType.

Referenced by Ogre::SceneManager::prepareShadowTextures().

virtual void Ogre::MovableObject::setQueryFlags unsigned long    flags [virtual, inherited]
 

Sets the query flags for this object.

Remarks:
When performing a scene query, this object will be included or excluded according to flags on the object and flags on the query. This is a bitwise value, so only when a bit on these flags is set, will it be included in a query asking for that flag. The meaning of the bits is application-specific.

Definition at line 181 of file OgreMovableObject.h.

void Ogre::MovableObject::setRenderQueueGroup RenderQueueGroupID    queueID [virtual, inherited]
 

Sets the render queue group this entity will be rendered through.

Remarks:
Render queues are grouped to allow you to more tightly control the ordering of rendered objects. If you do not call this method, all Entity objects default to the default queue (RenderQueue::getDefaultQueueGroup), which is fine for most objects. You may want to alter this if you want this entity to always appear in front of other objects, e.g. for a 3D menu system or such.

See RenderQueue for more details.

Parameters:
queueID  Enumerated value of the queue group to use.

Reimplemented in Ogre::Entity.

Definition at line 110 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mRenderQueueID, Ogre::MovableObject::mRenderQueueIDSet, and Ogre::RenderQueueGroupID.

virtual void Ogre::MovableObject::setUserObject UserDefinedObject   obj [virtual, inherited]
 

Call this to associate your own custom user object instance with this MovableObject.

Remarks:
By simply making your game / application object a subclass of UserDefinedObject, you can establish a link between an OGRE instance of MovableObject and your own application classes. Call this method to establish the link.

Definition at line 149 of file OgreMovableObject.h.

void Ogre::MovableObject::setVisible bool    visible [virtual, inherited]
 

Tells this object whether to be visible or not, if it has a renderable component.

Reimplemented in Ogre::Light.

Definition at line 99 of file OgreMovableObject.cpp.

References Ogre::MovableObject::mVisible.

void Ogre::Camera::setWindow Real    Left,
Real    Top,
Real    Right,
Real    Bottom
[virtual, inherited]
 

Sets the viewing window inside of viewport.

Remarks:
This method can be used to set a subset of the viewport as the rendering target.
Parameters:
Left  Relative to Viewport - 0 corresponds to left edge, 1 - to right edge (default - 0).
Top  Relative to Viewport - 0 corresponds to top edge, 1 - to bottom edge (default - 0).
Right  Relative to Viewport - 0 corresponds to left edge, 1 - to right edge (default - 1).
Bottom  Relative to Viewport - 0 corresponds to top edge, 1 - to bottom edge (default - 1).

Definition at line 529 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mRecalcWindow, Ogre::Camera::mWBottom, Ogre::Camera::mWindowSet, Ogre::Camera::mWLeft, Ogre::Camera::mWRight, Ogre::Camera::mWTop, and Ogre::Real.

void Ogre::Camera::setWindowImpl void    const [protected, virtual, inherited]
 

Do actual window setting, using parameters set in SetWindow call.

Remarks:
The method is called after projection matrix each change

Definition at line 547 of file OgreCamera.cpp.

References Ogre::Camera::getPosition(), Ogre::Matrix4::inverse(), Ogre::Frustum::mAspect, Ogre::Frustum::mFOVy, Ogre::Frustum::mNearDist, Ogre::Camera::mRecalcWindow, Ogre::Frustum::mViewMatrix, Ogre::Camera::mWBottom, Ogre::Camera::mWindowClipPlanes, Ogre::Camera::mWindowSet, Ogre::Camera::mWLeft, Ogre::Camera::mWRight, Ogre::Camera::mWTop, and Ogre::Real.

Referenced by Ogre::Camera::getWindowPlanes(), Ogre::Camera::updateFrustum(), and Ogre::Camera::updateView().

void Ogre::ShadowCaster::updateEdgeListLightFacing EdgeData   edgeData,
const Vector4   lightPos
[protected, virtual, inherited]
 

Tells the caster to perform the tasks necessary to update the edge data's light listing.

Can be overridden if the subclass needs to do additional things.

Parameters:
edgeData  The edge information to update
lightPos  4D vector representing the light, a directional light has w=0.0

Definition at line 31 of file OgreShadowCaster.cpp.

References Ogre::EdgeData::updateTriangleLightFacing().

Referenced by Ogre::Entity::getShadowVolumeRenderableIterator().

void Ogre::Camera::updateFrustum void    const [protected, virtual, inherited]
 

Reimplemented from Ogre::Frustum.

Definition at line 315 of file OgreCamera.cpp.

References Ogre::Camera::setWindowImpl().

void Ogre::Camera::updateView void    const [protected, virtual, inherited]
 

Reimplemented from Ogre::Frustum.

Definition at line 368 of file OgreCamera.cpp.

References Ogre::Camera::setWindowImpl().

Referenced by Ogre::Camera::getDerivedDirection(), Ogre::Camera::getDerivedOrientation(), Ogre::Camera::getDerivedPosition(), getVisibility(), Ogre::Camera::lookAt(), and Ogre::Camera::setDirection().

virtual bool Ogre::Renderable::useIdentityProjection void    const [virtual, inherited]
 

Returns whether or not to use an 'identity' projection.

Remarks:
Usually Renderable objects will use a projection matrix as determined by the active camera. However, if they want they can cancel this out and use an identity projection, which effectively projects in 2D using a {-1, 1} view space. Useful for overlay rendering. Normal renderables need not override this.

Reimplemented in Ogre::GuiElement, Ogre::Rectangle2D, and Ogre::BorderRenderable.

Definition at line 113 of file OgreRenderable.h.

Referenced by Ogre::SceneManager::useRenderableViewProjMode().

virtual bool Ogre::Renderable::useIdentityView void    const [virtual, inherited]
 

Returns whether or not to use an 'identity' projection.

Remarks:
Usually Renderable objects will use a view matrix as determined by the active camera. However, if they want they can cancel this out and use an identity matrix, which means all geometry is assumed to be relative to camera space already. Useful for overlay rendering. Normal renderables need not override this.

Reimplemented in Ogre::GuiElement, Ogre::Rectangle2D, and Ogre::BorderRenderable.

Definition at line 123 of file OgreRenderable.h.

Referenced by Ogre::SceneManager::useRenderableViewProjMode().

void Ogre::Camera::yaw const Radian   angle [inherited]
 

Rotates the camera anticlockwise around it's local y axis.

Definition at line 266 of file OgreCamera.cpp.

References Ogre::Camera::invalidateView(), Ogre::Camera::mOrientation, Ogre::Camera::mYawFixedAxis, and Ogre::Camera::rotate().


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &    o,
Camera   c
[friend, inherited]
 

Function for outputting to a stream.

Definition at line 395 of file OgreCamera.cpp.


Member Data Documentation

const Real Ogre::Frustum::INFINITE_FAR_PLANE_ADJUST = 0.00001 [static, inherited]
 

Small constant used to reduce far plane projection to avoid inaccuracies.

Definition at line 45 of file OgreFrustum.cpp.

Real Ogre::Frustum::mAspect [protected, inherited]
 

x/y viewport ratio - default 1.3333

Definition at line 74 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::getAspectRatio(), Ogre::Camera::getCameraToViewportRay(), Ogre::operator<<(), Ogre::Frustum::setAspectRatio(), Ogre::Camera::setWindowImpl(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

bool Ogre::Camera::mAutoAspectRatio [protected, inherited]
 

Whether aspect ratio will automaticaally be recalculated when a vieport changes its size.

Definition at line 135 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getAutoAspectRatio(), and Ogre::Camera::setAutoAspectRatio().

Vector3 Ogre::Camera::mAutoTrackOffset [protected, inherited]
 

Tracking offset for fine tuning.

Definition at line 111 of file OgreCamera.h.

Referenced by Ogre::Camera::_autoTrack(), and Ogre::Camera::setAutoTracking().

SceneNode* Ogre::Camera::mAutoTrackTarget [protected, inherited]
 

SceneNode which this Camera will automatically track.

Definition at line 109 of file OgreCamera.h.

Referenced by Ogre::Camera::_autoTrack(), Ogre::Camera::Camera(), and Ogre::Camera::setAutoTracking().

AxisAlignedBox Ogre::Frustum::mBoundingBox [protected, inherited]
 

Definition at line 116 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getBoundingBox(), and Ogre::Frustum::updateFrustum().

bool Ogre::MovableObject::mCastShadows [protected, inherited]
 

Does this object cast shadows?

Definition at line 67 of file OgreMovableObject.h.

Referenced by Ogre::BillboardSet::BillboardSet(), and Ogre::MovableObject::MovableObject().

Real Ogre::Frustum::mCoeffB[2] [protected, inherited]
 

Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Definition at line 98 of file OgreFrustum.h.

Real Ogre::Frustum::mCoeffL[2] [protected, inherited]
 

Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Definition at line 98 of file OgreFrustum.h.

Real Ogre::Frustum::mCoeffR[2] [protected, inherited]
 

Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Definition at line 98 of file OgreFrustum.h.

Real Ogre::Frustum::mCoeffT[2] [protected, inherited]
 

Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.

Definition at line 98 of file OgreFrustum.h.

CustomParameterMap Ogre::Renderable::mCustomParameters [protected, inherited]
 

Definition at line 233 of file OgreRenderable.h.

Quaternion Ogre::Camera::mDerivedOrientation [protected, inherited]
 

Derived positions of parent orientation / position.

Definition at line 91 of file OgreCamera.h.

Referenced by Ogre::Camera::getDerivedDirection(), Ogre::Camera::getDerivedOrientation(), Ogre::Camera::getOrientationForViewUpdate(), Ogre::Camera::isViewOutOfDate(), and Ogre::Camera::setDirection().

Vector3 Ogre::Camera::mDerivedPosition [protected, inherited]
 

Definition at line 92 of file OgreCamera.h.

Referenced by Ogre::Camera::getDerivedPosition(), Ogre::Camera::getPositionForViewUpdate(), Ogre::Camera::isViewOutOfDate(), and Ogre::Camera::lookAt().

Real Ogre::Frustum::mFarDist [protected, inherited]
 

Far clip distance - default 10000.

Definition at line 70 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::getBoundingRadius(), Ogre::Frustum::getFarClipDistance(), getVisibility(), Ogre::Frustum::isVisible(), Ogre::operator<<(), Ogre::Frustum::setFarClipDistance(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

Radian Ogre::Frustum::mFOVy [protected, inherited]
 

y-direction field-of-view (default 45)

Definition at line 68 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getCameraToViewportRay(), Ogre::Frustum::getFOVy(), Ogre::operator<<(), Ogre::Frustum::setFOVy(), Ogre::Camera::setWindowImpl(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

Plane Ogre::Frustum::mFrustumPlanes[6] [protected, inherited]
 

The 6 main clipping planes.

Definition at line 77 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getFrustumPlane(), getVisibility(), Ogre::Frustum::isVisible(), Ogre::operator<<(), and Ogre::Frustum::updateView().

Plane Ogre::Frustum::mLastLinkedObliqueProjPlane [protected, inherited]
 

Record of the last world-space oblique depth projection plane info used.

Definition at line 140 of file OgreFrustum.h.

Referenced by Ogre::Frustum::Frustum(), and Ogre::Frustum::isFrustumOutOfDate().

Plane Ogre::Frustum::mLastLinkedReflectionPlane [protected, inherited]
 

Record of the last world-space reflection plane info used.

Definition at line 131 of file OgreFrustum.h.

Referenced by Ogre::Frustum::disableReflection(), Ogre::Frustum::enableReflection(), Ogre::Frustum::Frustum(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

Quaternion Ogre::Frustum::mLastParentOrientation [protected, inherited]
 

Stored versions of parent orientation / position.

Definition at line 80 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getOrientationForViewUpdate(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

Vector3 Ogre::Frustum::mLastParentPosition [protected, inherited]
 

Definition at line 81 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getPositionForViewUpdate(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

Viewport* Ogre::Camera::mLastViewport [protected, inherited]
 

The last viewport to be added using this camera.

Definition at line 131 of file OgreCamera.h.

const MovablePlane* Ogre::Frustum::mLinkedObliqueProjPlane [protected, inherited]
 

Pointer to oblique projection plane (automatically updated).

Definition at line 138 of file OgreFrustum.h.

Referenced by Ogre::Frustum::disableCustomNearClipPlane(), Ogre::Frustum::enableCustomNearClipPlane(), and Ogre::Frustum::isFrustumOutOfDate().

const MovablePlane* Ogre::Frustum::mLinkedReflectPlane [protected, inherited]
 

Pointer to a reflection plane (automatically updated).

Definition at line 129 of file OgreFrustum.h.

Referenced by Ogre::Frustum::enableReflection(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

Material* Ogre::Frustum::mMaterial [protected, inherited]
 

Definition at line 119 of file OgreFrustum.h.

Referenced by Ogre::Frustum::Frustum(), and Ogre::Frustum::getMaterial().

String Ogre::Camera::mName [protected, inherited]
 

Camera name.

Definition at line 80 of file OgreCamera.h.

Referenced by Ogre::Camera::getName(), and Ogre::operator<<().

Real Ogre::Frustum::mNearDist [protected, inherited]
 

Near clip distance - default 100.

Definition at line 72 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getBoundingRadius(), Ogre::Camera::getCameraToViewportRay(), Ogre::Frustum::getNearClipDistance(), Ogre::operator<<(), Ogre::Frustum::setNearClipDistance(), Ogre::Camera::setWindowImpl(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

bool Ogre::Frustum::mObliqueDepthProjection [protected, inherited]
 

Is this frustum using an oblique depth projection?

Definition at line 134 of file OgreFrustum.h.

Referenced by Ogre::Frustum::disableCustomNearClipPlane(), and Ogre::Frustum::enableCustomNearClipPlane().

Plane Ogre::Frustum::mObliqueProjPlane [protected, inherited]
 

Fixed oblique projection plane.

Definition at line 136 of file OgreFrustum.h.

Referenced by Ogre::Frustum::enableCustomNearClipPlane(), Ogre::Frustum::isFrustumOutOfDate(), and Ogre::Frustum::updateFrustum().

Quaternion Ogre::Camera::mOrientation [protected, inherited]
 

Camera orientation, quaternion style.

Definition at line 85 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getDirection(), Ogre::Camera::getOrientation(), Ogre::Camera::getRight(), Ogre::Camera::getUp(), Ogre::Camera::isViewOutOfDate(), Ogre::Camera::moveRelative(), Ogre::operator<<(), Ogre::Camera::pitch(), Ogre::Camera::roll(), Ogre::Camera::rotate(), Ogre::Camera::setDirection(), Ogre::Camera::setOrientation(), and Ogre::Camera::yaw().

bool Ogre::MovableObject::mParentIsTagPoint [protected, inherited]
 

Definition at line 49 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::_notifyAttached(), and Ogre::MovableObject::MovableObject().

Node* Ogre::MovableObject::mParentNode [protected, inherited]
 

node to which this object is attached

Definition at line 48 of file OgreMovableObject.h.

Referenced by Ogre::MovablePlane::_getDerivedPlane(), Ogre::MovableObject::_getParentNodeFullTransform(), Ogre::MovableObject::_notifyAttached(), Ogre::Entity::_notifyCurrentCamera(), Ogre::ParticleSystem::_triggerEmitters(), Ogre::ParticleSystem::_updateBounds(), Ogre::BillboardSet::_updateBounds(), Ogre::Entity::attachObjectToBone(), Ogre::Camera::Camera(), Ogre::Entity::detachAllObjectsFromBone(), Ogre::Entity::detachObjectFromBone(), Ogre::Frustum::Frustum(), Ogre::BillboardSet::genBillboardAxes(), Ogre::Entity::getBoundingRadius(), Ogre::MovableObject::getParentNode(), Ogre::MovableObject::getPointExtrusionDistance(), Ogre::Entity::getShadowVolumeRenderableIterator(), Ogre::Frustum::getSquaredViewDepth(), Ogre::MovableObject::getWorldBoundingSphere(), Ogre::TerrainRenderable::getWorldOrientation(), Ogre::SubEntity::getWorldOrientation(), Ogre::SimpleRenderable::getWorldOrientation(), Ogre::ParticleSystem::getWorldOrientation(), Ogre::Frustum::getWorldOrientation(), Ogre::BillboardSet::getWorldOrientation(), Ogre::TerrainRenderable::getWorldPosition(), Ogre::SubEntity::getWorldPosition(), Ogre::SimpleRenderable::getWorldPosition(), Ogre::ParticleSystem::getWorldPosition(), Ogre::Frustum::getWorldPosition(), Ogre::BillboardSet::getWorldPosition(), Ogre::TerrainRenderable::getWorldTransforms(), Ogre::SimpleRenderable::getWorldTransforms(), Ogre::Frustum::getWorldTransforms(), Ogre::MovableObject::isAttached(), Ogre::Frustum::isViewOutOfDate(), Ogre::Camera::isViewOutOfDate(), Ogre::Light::Light(), Ogre::MovableObject::MovableObject(), Ogre::SimpleRenderable::SimpleRenderable(), Ogre::Light::update(), and Ogre::Entity::updateAnimation().

Vector3 Ogre::Camera::mPosition [protected, inherited]
 

Camera position - default (0,0,0).

Definition at line 88 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getPosition(), Ogre::Camera::isViewOutOfDate(), Ogre::Camera::move(), Ogre::Camera::moveRelative(), Ogre::operator<<(), and Ogre::Camera::setPosition().

Matrix4 Ogre::Frustum::mProjMatrix [protected, inherited]
 

Pre-calced projection matrix.

Definition at line 84 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::getProjectionMatrix(), and Ogre::Frustum::updateFrustum().

ProjectionType Ogre::Frustum::mProjType [protected, inherited]
 

Orthographic or perspective?

Definition at line 65 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::getProjectionType(), Ogre::Frustum::setProjectionType(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

unsigned long Ogre::MovableObject::mQueryFlags [protected, inherited]
 

Flags determining whether this object is included / excluded from scene queries.

Definition at line 59 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::MovableObject(), and Ogre::TerrainRenderable::TerrainRenderable().

bool Ogre::Frustum::mRecalcFrustum [protected, inherited]
 

Something's changed in the frustrum shape?

Definition at line 90 of file OgreFrustum.h.

Referenced by Ogre::Frustum::invalidateFrustum(), Ogre::Camera::invalidateFrustum(), Ogre::Frustum::isFrustumOutOfDate(), and Ogre::Frustum::updateFrustum().

bool Ogre::Frustum::mRecalcView [protected, inherited]
 

Something re the view pos has changed.

Definition at line 92 of file OgreFrustum.h.

Referenced by Ogre::Frustum::invalidateView(), Ogre::Camera::invalidateView(), Ogre::Frustum::isViewOutOfDate(), Ogre::Camera::isViewOutOfDate(), and Ogre::Frustum::updateView().

bool Ogre::Camera::mRecalcWindow [protected, inherited]
 

Definition at line 129 of file OgreCamera.h.

Referenced by Ogre::Camera::invalidateFrustum(), Ogre::Camera::invalidateView(), Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

bool Ogre::Frustum::mReflect [protected, inherited]
 

Is this frustum to act as a reflection of itself?

Definition at line 123 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::disableReflection(), Ogre::Frustum::enableReflection(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

Matrix4 Ogre::Frustum::mReflectMatrix [protected, inherited]
 

Derived reflection matrix.

Definition at line 125 of file OgreFrustum.h.

Referenced by Ogre::Frustum::enableReflection(), Ogre::Frustum::isViewOutOfDate(), Ogre::Camera::isViewOutOfDate(), and Ogre::Frustum::updateView().

Plane Ogre::Frustum::mReflectPlane [protected, inherited]
 

Fixed reflection plane.

Definition at line 127 of file OgreFrustum.h.

Referenced by Ogre::Frustum::enableReflection(), Ogre::Frustum::isViewOutOfDate(), and Ogre::Camera::isViewOutOfDate().

RenderQueueGroupID Ogre::MovableObject::mRenderQueueID [protected, inherited]
 

The render queue to use when rendering this object.

Definition at line 55 of file OgreMovableObject.h.

Referenced by Ogre::SimpleRenderable::_updateRenderQueue(), Ogre::Entity::_updateRenderQueue(), Ogre::BillboardSet::_updateRenderQueue(), Ogre::MovableObject::getRenderQueueGroup(), Ogre::MovableObject::MovableObject(), and Ogre::MovableObject::setRenderQueueGroup().

bool Ogre::MovableObject::mRenderQueueIDSet [protected, inherited]
 

Flags whether the RenderQueue's default should be used.

Definition at line 57 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::MovableObject(), and Ogre::MovableObject::setRenderQueueGroup().

SceneDetailLevel Ogre::Camera::mSceneDetail [protected, inherited]
 

Rendering type.

Definition at line 100 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getDetailLevel(), and Ogre::Camera::setDetailLevel().

Real Ogre::Camera::mSceneLodFactor [protected, inherited]
 

Definition at line 114 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::getLodBias(), and Ogre::Camera::setLodBias().

Real Ogre::Camera::mSceneLodFactorInv [protected, inherited]
 

Inverted scene LOD factor, can be used by Renderables to adjust their LOD.

Definition at line 116 of file OgreCamera.h.

Referenced by Ogre::Camera::_getLodBiasInverse(), Ogre::Camera::Camera(), and Ogre::Camera::setLodBias().

SceneManager* Ogre::Camera::mSceneMgr [protected, inherited]
 

Scene manager responsible for the scene.

Definition at line 82 of file OgreCamera.h.

Referenced by Ogre::Camera::_renderScene(), Ogre::Camera::Camera(), and Ogre::Camera::getSceneManager().

const PlaneList Ogre::Renderable::msDummyPlaneList [static, protected, inherited]
 

Definition at line 45 of file OgreRenderSystem.cpp.

String Ogre::Camera::msMovableType = "Camera" [static, protected, inherited]
 

Shared class-level name for Movable type.

Reimplemented from Ogre::Frustum.

Definition at line 41 of file OgreCamera.cpp.

Referenced by Ogre::Camera::getMovableType().

Matrix4 Ogre::Frustum::mStandardProjMatrix [protected, inherited]
 

Pre-calced standard projection matrix.

Definition at line 86 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getStandardProjectionMatrix(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

UserDefinedObject* Ogre::MovableObject::mUserObject [protected, inherited]
 

User defined object which is linked to this object.

Definition at line 53 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::MovableObject().

VertexData Ogre::Frustum::mVertexData [protected, inherited]
 

Definition at line 117 of file OgreFrustum.h.

Referenced by Ogre::Frustum::Frustum(), Ogre::Frustum::getRenderOperation(), and Ogre::Frustum::updateFrustum().

Matrix4 Ogre::Frustum::mViewMatrix [protected, inherited]
 

Pre-calced view matrix.

Definition at line 88 of file OgreFrustum.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::getViewMatrix(), Ogre::Camera::setWindowImpl(), Ogre::Frustum::updateFrustum(), and Ogre::Frustum::updateView().

unsigned int Ogre::Camera::mVisFacesLastRender [protected, inherited]
 

Stored number of visible faces in the last render.

Definition at line 103 of file OgreCamera.h.

Referenced by Ogre::Camera::_getNumRenderedFaces(), and Ogre::Camera::_notifyRenderedFaces().

bool Ogre::MovableObject::mVisible [protected, inherited]
 

Is this object visible?

Definition at line 51 of file OgreMovableObject.h.

Referenced by Ogre::Camera::Camera(), Ogre::Frustum::Frustum(), Ogre::MovableObject::isVisible(), Ogre::MovableObject::MovableObject(), and Ogre::MovableObject::setVisible().

Real Ogre::Camera::mWBottom [protected, inherited]
 

Viewing window.

Remarks:
Generalize camera class for the case, when viewing frustum doesn't cover all viewport.

Definition at line 123 of file OgreCamera.h.

Referenced by Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

std::vector<Plane> Ogre::Camera::mWindowClipPlanes [protected, inherited]
 

Windowed viewport clip planes.

Definition at line 127 of file OgreCamera.h.

Referenced by Ogre::Camera::getWindowPlanes(), and Ogre::Camera::setWindowImpl().

bool Ogre::Camera::mWindowSet [protected, inherited]
 

Is viewing window used.

Definition at line 125 of file OgreCamera.h.

Referenced by Ogre::Camera::Camera(), Ogre::Camera::resetWindow(), Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

Real Ogre::Camera::mWLeft [protected, inherited]
 

Viewing window.

Remarks:
Generalize camera class for the case, when viewing frustum doesn't cover all viewport.

Definition at line 123 of file OgreCamera.h.

Referenced by Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

AxisAlignedBox Ogre::MovableObject::mWorldAABB [protected, inherited]
 

Cached world AABB of this object.

Definition at line 61 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::getWorldBoundingBox(), and Ogre::MovableObject::MovableObject().

Sphere Ogre::MovableObject::mWorldBoundingSphere [protected, inherited]
 

Definition at line 63 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::getWorldBoundingSphere().

AxisAlignedBox Ogre::MovableObject::mWorldDarkCapBounds [protected, inherited]
 

World space AABB of this object's dark cap.

Definition at line 65 of file OgreMovableObject.h.

Referenced by Ogre::MovableObject::getDarkCapBounds().

Vector3 Ogre::Frustum::mWorldSpaceCorners[8] [protected, inherited]
 

Definition at line 120 of file OgreFrustum.h.

Referenced by Ogre::Frustum::getWorldSpaceCorners(), and Ogre::Frustum::updateView().

Real Ogre::Camera::mWRight [protected, inherited]
 

Viewing window.

Remarks:
Generalize camera class for the case, when viewing frustum doesn't cover all viewport.

Definition at line 123 of file OgreCamera.h.

Referenced by Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

Real Ogre::Camera::mWTop [protected, inherited]
 

Viewing window.

Remarks:
Generalize camera class for the case, when viewing frustum doesn't cover all viewport.

Definition at line 123 of file OgreCamera.h.

Referenced by Ogre::Camera::setWindow(), and Ogre::Camera::setWindowImpl().

bool Ogre::Camera::mYawFixed [protected, inherited]
 

Whether to yaw around a fixed axis.

Definition at line 95 of file OgreCamera.h.

Referenced by Ogre::Camera::setFixedYawAxis().

Vector3 Ogre::Camera::mYawFixedAxis [protected, inherited]
 

Fixed axis to yaw around.

Definition at line 97 of file OgreCamera.h.

Referenced by Ogre::Camera::setDirection(), Ogre::Camera::setFixedYawAxis(), and Ogre::Camera::yaw().


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

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:49:55 2004