#include <OgreOctreeCamera.h>
Inheritance diagram for Ogre::OctreeCamera:
Public Types | |
enum | Visibility { NONE, PARTIAL, FULL } |
Visibility types. More... | |
Public Methods | |
OctreeCamera (String name, SceneManager *sm) | |
~OctreeCamera () | |
OctreeCamera::Visibility | getVisibility (const AxisAlignedBox &bound) |
Returns the visiblity of the box. More... | |
virtual void | getRenderOperation (RenderOperation &rend) |
Sets up the render operation to render the view frustum of the camera. More... | |
SceneManager * | getSceneManager (void) const |
Returns a pointer to the SceneManager this camera is rendering through. More... | |
virtual const String & | getName (void) const |
Gets the camera's name. More... | |
void | setProjectionType (ProjectionType pt) |
Sets the type of projection to use (orthographic or perspective). More... | |
ProjectionType | getProjectionType (void) const |
Retrieves info on the type of projection used (orthographic or perspective). More... | |
void | setDetailLevel (SceneDetailLevel sd) |
Sets the level of rendering detail required from this camera. More... | |
SceneDetailLevel | getDetailLevel (void) const |
Retrieves the level of detail that the camera will render. More... | |
void | setPosition (Real x, Real y, Real z) |
Sets the camera's position. More... | |
void | setPosition (const Vector3 &vec) |
Sets the camera's position. More... | |
const Vector3 & | getPosition (void) const |
Retrieves the camera's position. More... | |
void | move (const Vector3 &vec) |
Moves the camera's position by the vector offset provided along world axes. More... | |
void | moveRelative (const Vector3 &vec) |
Moves the camera's position by the vector offset provided along it's own axes (relative to orientation). More... | |
void | setDirection (Real x, Real y, Real z) |
Sets the camera's direction vector. More... | |
void | setDirection (const Vector3 &vec) |
Sets the camera's direction vector. More... | |
Vector3 | getDirection (void) const |
void | lookAt (const Vector3 &targetPoint) |
Points the camera at a location in worldspace. More... | |
void | lookAt (Real x, Real y, Real z) |
Points the camera at a location in worldspace. More... | |
void | roll (Real degrees) |
Rolls the camera anticlockwise, in degrees, around its local z axis. More... | |
void | yaw (Real degrees) |
Rotates the camera anticlockwise around it's local y axis. More... | |
void | pitch (Real degrees) |
Pitches the camera up/down anticlockwise around it's local z axis. More... | |
void | rotate (const Vector3 &axis, Real degrees) |
Rotate the camera around an arbitrary axis. More... | |
void | rotate (const Quaternion &q) |
Rotate the camera around an aritrary axis using a Quarternion. More... | |
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. More... | |
void | setFOVy (Real fovy) |
Sets the Y-dimension Field Of View (FOV) of the camera. More... | |
Real | getFOVy (void) const |
Retrieves the cameras Y-dimension Field Of View (FOV). More... | |
void | setNearClipDistance (Real nearDist) |
Sets the position of the near clipping plane. More... | |
Real | getNearClipDistance (void) const |
Sets the position of the near clipping plane. More... | |
void | setFarClipDistance (Real farDist) |
Sets the distance to the far clipping plane. More... | |
Real | getFarClipDistance (void) const |
Retrieves the distance from the camera to the far clipping plane. More... | |
void | setAspectRatio (Real ratio) |
Sets the aspect ratio for the camera viewport. More... | |
Real | getAspectRatio (void) const |
Retreives the current aspect ratio. More... | |
const Matrix4 & | getProjectionMatrix (void) |
Gets the projection matrix for this camera. More... | |
const Matrix4 & | getViewMatrix (void) |
Gets the view matrix for this camera. More... | |
const Plane & | getFrustumPlane (FrustumPlane plane) |
Retrieves a specified plane of the frustum. More... | |
bool | isVisible (const AxisAlignedBox &bound, FrustumPlane *culledBy=0) |
Tests whether the given container is visible in the Frustum. More... | |
bool | isVisible (const Sphere &bound, FrustumPlane *culledBy=0) |
Tests whether the given container is visible in the Frustum. More... | |
bool | isVisible (const Vector3 &vert, FrustumPlane *culledBy=0) |
Tests whether the given vertex is visible in the Frustum. More... | |
virtual bool | isVisible (void) const |
Returns whether or not this object is supposed to be visible or not. More... | |
const Quaternion & | getOrientation (void) const |
Returns the camera's current orientation. More... | |
void | setOrientation (const Quaternion &q) |
Sets the camera's orientation. More... | |
void | _renderScene (Viewport *vp, bool includeOverlays) |
Tells the Camera to contact the SceneManager to render from it's viewpoint. More... | |
void | _notifyRenderedFaces (unsigned int numfaces) |
Internal method to notify camera of the visible faces in the last render. More... | |
unsigned int | _getNumRenderedFaces (void) const |
Internal method to retrieve the number of visible faces in the last render. More... | |
Quaternion | getDerivedOrientation (void) const |
Gets the derived orientation of the camera, including any rotation inherited from a node attachment. More... | |
Vector3 | getDerivedPosition (void) const |
Gets the derived position of the camera, including any translation inherited from a node attachment. More... | |
Vector3 | getDerivedDirection (void) const |
Gets the derived direction vector of the camera, including any translation inherited from a node attachment. More... | |
void | _notifyCurrentCamera (Camera *cam) |
Overridden from MovableObject. More... | |
const AxisAlignedBox & | getBoundingBox (void) const |
Overridden from MovableObject. More... | |
void | _updateRenderQueue (RenderQueue *queue) |
Overridden from MovableObject. More... | |
const String | getMovableType (void) const |
Overridden from MovableObject. More... | |
void | setAutoTracking (bool enabled, SceneNode *target=0, const Vector3 &offset=Vector3::ZERO) |
Enables / disables automatic tracking of a SceneNode. More... | |
void | setLodBias (Real factor=1.0) |
Sets the level-of-detail factor for this Camera. More... | |
Real | getLodBias (void) |
Returns the level-of-detail bias factor currently applied to this camera. More... | |
Real | _getLodBiasInverse (void) |
Internal method for OGRE to use for LOD calculations. More... | |
void | _autoTrack (void) |
Internal method used by OGRE to update auto-tracking cameras. More... | |
virtual SceneNode * | getParentNode (void) |
Returns the node to which this object is attached. More... | |
virtual void | _notifyAttached (SceneNode *parent) |
Internal method called to notify the object that it has been attached to a node. More... | |
virtual bool | isAttached (void) const |
Returns true if this object is attached to a SceneNode. More... | |
virtual void | setVisible (bool visible) |
Tells this object whether to be visible or not, if it has a renderable component. More... | |
virtual void | setUserObject (UserDefinedObject *obj) |
Call this to associate your own custom user object instance with this MovableObject. More... | |
virtual UserDefinedObject * | getUserObject (void) |
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject. More... | |
virtual void | setRenderQueueGroup (RenderQueueGroupID queueID) |
Sets the render queue group this entity will be rendered through. More... | |
virtual RenderQueueGroupID | getRenderQueueGroup (void) |
Gets the queue group for this entity, see setRenderQueueGroup for full details. More... | |
Protected Methods | |
void | _getCorner (Real *r, FrustumPlane p1, FrustumPlane p2, FrustumPlane p3) |
Internal method used to find corners of the view frustum. More... | |
void | updateFrustum (void) const |
void | updateView (void) const |
bool | isViewOutOfDate (void) const |
bool | isFrustumOutOfDate (void) const |
Protected Attributes | |
Real | mCorners [24] |
String | mName |
Camera name. More... | |
SceneManager * | mSceneMgr |
Scene manager responsible for the scene. More... | |
Quaternion | mOrientation |
Camera orientation, quaternion style. More... | |
Vector3 | mPosition |
Camera position - default (0,0,0). More... | |
Quaternion | mLastParentOrientation |
Stored versions of parent orientation / position. More... | |
Vector3 | mLastParentPosition |
Quaternion | mDerivedOrientation |
Derived positions of parent orientation / position. More... | |
Vector3 | mDerivedPosition |
Real | mFOVy |
Camera y-direction field-of-view (default 45). More... | |
Real | mFarDist |
Far clip distance - default 10000. More... | |
Real | mNearDist |
Near clip distance - default 100. More... | |
Real | mAspect |
x/y viewport ratio - default 1.3333. More... | |
bool | mYawFixed |
Whether to yaw around a fixed axis. More... | |
Vector3 | mYawFixedAxis |
Fixed axis to yaw around. More... | |
Plane | mFrustumPlanes [6] |
The 6 main clipping planes. More... | |
ProjectionType | mProjType |
Orthographic or perspective? More... | |
SceneDetailLevel | mSceneDetail |
Rendering type. More... | |
Matrix4 | mProjMatrix |
Pre-calced projection matrix. More... | |
Matrix4 | mViewMatrix |
Pre-calced view matrix. More... | |
bool | mRecalcFrustum |
Something's changed in the frustrum shape? More... | |
bool | mRecalcView |
Something re the view pos has changed. More... | |
Real | mCoeffL [2] |
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes. More... | |
Real | mCoeffR [2] |
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes. More... | |
Real | mCoeffB [2] |
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes. More... | |
Real | mCoeffT [2] |
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes. More... | |
unsigned int | mVisFacesLastRender |
Stored number of visible faces in the last render. More... | |
SceneNode * | mAutoTrackTarget |
SceneNode which this Camera will automatically track. More... | |
Vector3 | mAutoTrackOffset |
Tracking offset for fine tuning. More... | |
Real | mSceneLodFactor |
Real | mSceneLodFactorInv |
Inverted scene LOD factor, can be used by Renderables to adjust their LOD. More... | |
SceneNode * | mParentNode |
node to which this object is attached. More... | |
bool | mVisible |
Is this object visible? More... | |
UserDefinedObject * | mUserObject |
User defined object which is linked to this object. More... | |
RenderQueueGroupID | mRenderQueueID |
The render queue to use when rendering this object. More... | |
Static Protected Attributes | |
unsigned short | mIndexes [24] |
Shared list of indexes used to render. More... | |
unsigned long | mColors [8] = {red, red, red, red, red, red, red, red} |
Shared list of colors used to render. More... | |
String | msMovableType = "Camera" |
Shared class-level name for Movable type. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &o, Camera &c) |
Function for outputting to a stream. More... |
|
Visibility types.
|
|
|
|
|
|
Internal method used by OGRE to update auto-tracking cameras.
|
|
Internal method used to find corners of the view frustum.
|
|
Internal method for OGRE to use for LOD calculations.
|
|
Internal method to retrieve the number of visible faces in the last render.
|
|
Internal method called to notify the object that it has been attached to a node.
Reimplemented in Ogre::SimpleRenderable. |
|
Overridden from MovableObject.
Implements Ogre::MovableObject. |
|
Internal method to notify camera of the visible faces in the last render.
|
|
Tells the Camera to contact the SceneManager to render from it's viewpoint.
|
|
Overridden from MovableObject.
Implements Ogre::MovableObject. |
|
Retreives the current aspect ratio.
|
|
Overridden from MovableObject.
Implements Ogre::MovableObject. |
|
Gets the derived direction vector of the camera, including any translation inherited from a node attachment.
|
|
Gets the derived orientation of the camera, including any rotation inherited from a node attachment.
|
|
Gets the derived position of the camera, including any translation inherited from a node attachment.
|
|
Retrieves the level of detail that the camera will render.
|
|
|
|
Retrieves the distance from the camera to the far clipping plane.
|
|
Retrieves the cameras Y-dimension Field Of View (FOV).
|
|
Retrieves a specified plane of the frustum.
|
|
Returns the level-of-detail bias factor currently applied to this camera.
|
|
Overridden from MovableObject.
Implements Ogre::MovableObject. |
|
Gets the camera's name.
Implements Ogre::MovableObject. |
|
Sets the position of the near clipping plane.
|
|
Returns the camera's current orientation.
|
|
Returns the node to which this object is attached.
Reimplemented in Ogre::SimpleRenderable. |
|
Retrieves the camera's position.
|
|
Gets the projection matrix for this camera. Mainly for use by OGRE internally. |
|
Retrieves info on the type of projection used (orthographic or perspective).
|
|
Sets up the render operation to render the view frustum of the camera.
|
|
Gets the queue group for this entity, see setRenderQueueGroup for full details.
|
|
Returns a pointer to the SceneManager this camera is rendering through.
|
|
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject.
|
|
Gets the view matrix for this camera. Mainly for use by OGRE internally. |
|
Returns the visiblity of the box.
|
|
Returns true if this object is attached to a SceneNode.
|
|
|
|
|
|
Returns whether or not this object is supposed to be visible or not.
|
|
Tests whether the given vertex is visible in the Frustum.
|
|
Tests whether the given container is visible in the Frustum.
|
|
Tests whether the given container is visible in the Frustum.
|
|
Points the camera at a location in worldspace.
|
|
Points the camera at a location in worldspace.
|
|
Moves the camera's position by the vector offset provided along world axes.
|
|
Moves the camera's position by the vector offset provided along it's own axes (relative to orientation).
|
|
Pitches the camera up/down anticlockwise around it's local z axis.
|
|
Rolls the camera anticlockwise, in degrees, around its local z axis.
|
|
Rotate the camera around an aritrary axis using a Quarternion.
|
|
Rotate the camera around an arbitrary axis.
|
|
Sets the aspect ratio for the camera viewport.
|
|
Enables / disables automatic tracking of a SceneNode.
|
|
Sets the level of rendering detail required from this camera.
|
|
Sets the camera's direction vector.
|
|
Sets the camera's direction vector.
|
|
Sets the distance to the far clipping plane.
|
|
Tells the camera whether to yaw around it's own local Y axis or a fixed axis of choice.
|
|
Sets the Y-dimension Field Of View (FOV) of the camera.
|
|
Sets the level-of-detail factor for this Camera.
|
|
Sets the position of the near clipping plane.
|
|
Sets the camera's orientation.
|
|
Sets the camera's position.
|
|
Sets the camera's position.
|
|
Sets the type of projection to use (orthographic or perspective). Default is perspective. |
|
Sets the render queue group this entity will be rendered through.
|
|
Call this to associate your own custom user object instance with this MovableObject.
|
|
Tells this object whether to be visible or not, if it has a renderable component.
Reimplemented in Ogre::Light. |
|
|
|
|
|
Rotates the camera anticlockwise around it's local y axis.
|
|
Function for outputting to a stream.
|
|
x/y viewport ratio - default 1.3333.
|
|
Tracking offset for fine tuning.
|
|
SceneNode which this Camera will automatically track.
|
|
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.
|
|
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.
|
|
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.
|
|
Temp coefficient values calculated from a frustum change, used when establishing the frustum planes when the view changes.
|
|
Shared list of colors used to render.
|
|
|
|
Derived positions of parent orientation / position.
|
|
|
|
Far clip distance - default 10000.
|
|
Camera y-direction field-of-view (default 45).
|
|
The 6 main clipping planes.
|
|
Initial value: {0, 1, 1, 2, 2, 3, 3, 0, 0, 6, 6, 5, 5, 1, 3, 7, 7, 4, 4, 2, 6, 7, 5, 4 }
|
|
Stored versions of parent orientation / position.
|
|
|
|
Camera name.
|
|
Near clip distance - default 100.
|
|
Camera orientation, quaternion style.
|
|
node to which this object is attached.
|
|
Camera position - default (0,0,0).
|
|
Pre-calced projection matrix.
|
|
Orthographic or perspective?
|
|
Something's changed in the frustrum shape?
|
|
Something re the view pos has changed.
|
|
The render queue to use when rendering this object.
|
|
Rendering type.
|
|
|
|
Inverted scene LOD factor, can be used by Renderables to adjust their LOD.
|
|
Scene manager responsible for the scene.
|
|
Shared class-level name for Movable type.
|
|
User defined object which is linked to this object.
|
|
Pre-calced view matrix.
|
|
Stored number of visible faces in the last render.
|
|
Is this object visible?
|
|
Whether to yaw around a fixed axis.
|
|
Fixed axis to yaw around.
|
Copyright © 2002 by The OGRE Team