Camera interface.
General | |
| virtual void | Copy (const iCamera *pSrc)=0 |
| Copy the camera. More... | |
| virtual iCamera * | Clone () const =0 |
| Clone the camera. More... | |
| virtual ni::sMatrixf | GetWorldMatrix () const =0 |
| Get the world matrix. {Property}. More... | |
| virtual ni::sMatrixf | GetViewMatrix () const =0 |
| Get the view matrix. {Property}. More... | |
| virtual ni::sMatrixf | GetProjectionMatrix () const =0 |
| Get the projection matrix. {Property}. More... | |
| virtual ni::iFrustum * | GetFrustum () const =0 |
| Get the frustum. {Property}. More... | |
| virtual ni::sVec3f | GetRay (ni::tF32 afX, ni::tF32 afY, const ni::sRectf &aRect)=0 |
| Compute a ray from the given screen position and rectangle. More... | |
| virtual sVec3f | GetRayStart () const =0 |
| Get the starting point of the last ray {Property}. More... | |
| virtual ni::sVec3f | GetScreenPosition (const ni::sVec3f &avPos, const ni::sRectf &aRect) const =0 |
| Get a screen position from the given 3d position. More... | |
| virtual void | SetViewMatrix (const sMatrixf &aViewMatrix)=0 |
| Set the view matrix directly. More... | |
| virtual void | SetProjectionMatrix (const sMatrixf &aProjMatrix)=0 |
| Set the projection matrix directly. More... | |
| virtual void | SetFromWorldMatrix (const ni::sMatrixf &aMatrix, tBool abSetUp)=0 |
| Set the camera position, target and up vector from a matrix. More... | |
Projection setup | |
| virtual void | SetProjection (eCameraProjectionType aProjectionType)=0 |
| Set projection type. {Property}. More... | |
| virtual eCameraProjectionType | GetProjection () const =0 |
| Get orthogonal projection. {Property}. More... | |
| virtual void | SetViewport (const ni::sRectf &aRect)=0 |
| Set the camera's viewport rectangle. {Property}. More... | |
| virtual ni::sRectf | GetViewport () const =0 |
| Get the camera's viewport rectangle. {Property}. More... | |
| virtual void | SetFov (ni::tF32 fFOV)=0 |
| Set the vertical field of view. {Property}. More... | |
| virtual ni::tF32 | GetFov () const =0 |
| Get the vertical field of view. {Property}. More... | |
| virtual void | SetAspect (ni::tF32 fAspect)=0 |
| Set the aspect ratio. {Property}. More... | |
| virtual ni::tF32 | GetAspect () const =0 |
| Get the aspect ratio. {Property}. More... | |
| virtual ni::tF32 | GetAbsoluteAspect () const =0 |
| Get the absolute aspect ratio. {Property}. More... | |
| virtual void | SetNearClipPlane (ni::tF32 afD)=0 |
| Set the near clipping plane. {Property}. More... | |
| virtual ni::tF32 | GetNearClipPlane () const =0 |
| Get the near clipping plane. {Property}. More... | |
| virtual void | SetFarClipPlane (ni::tF32 afD)=0 |
| Set the far clipping plane. {Property}. More... | |
| virtual ni::tF32 | GetFarClipPlane () const =0 |
| Get the far clipping plane. {Property}. More... | |
| virtual void | SetOrthoSize (tF32 afSize)=0 |
| Set the orthogonal projection size. {Property}. More... | |
| virtual ni::tF32 | GetOrthoSize () const =0 |
| Get the orthogonal projection size. {Property}. More... | |
Position | |
| virtual void | SetPosition (const ni::sVec3f &vPos)=0 |
| Set the position. {Property}. More... | |
| virtual ni::sVec3f | GetPosition () const =0 |
| Get the position. {Property}. More... | |
| virtual void | SetTarget (const ni::sVec3f &avTarget)=0 |
| Set the target. {Property}. More... | |
| virtual ni::sVec3f | GetTarget () const =0 |
| Get the target. {Property}. More... | |
| virtual void | SetTargetUp (const ni::sVec3f &avUp)=0 |
| Set the target up vector. {Property}. More... | |
| virtual ni::sVec3f | GetTargetUp () const =0 |
| Get the target up vector. {Property}. More... | |
| virtual void | SetTargetDistance (ni::tF32 afDist)=0 |
| Set the distance between the camera and it's target by moving the target. {Property}. More... | |
| virtual ni::tF32 | GetTargetDistance () const =0 |
| Get the distance between the camera and it's target. {Property}. More... | |
| virtual void | SetPositionDistance (ni::tF32 afDist)=0 |
| Set the distance between the camera and it's target by moving the position. {Property}. More... | |
| virtual ni::tF32 | GetPositionDistance () const =0 |
| Get the distance between the camera and it's target. {Property}. More... | |
| virtual void | SetTargetDirection (const ni::sVec3f &avDir)=0 |
| Set the direction of the target. {Property}. More... | |
| virtual ni::sVec3f | GetTargetDirection () const =0 |
| Get the direction of the target. {Property}. More... | |
Movements | |
| virtual void | SetMoveType (eCameraMoveType aMode)=0 |
| Set the camera move mode. {Property}. More... | |
| virtual eCameraMoveType | GetMoveType () const =0 |
| Get the camera move mode. {Property}. More... | |
| virtual void | MoveSidewards (ni::tF32 delta)=0 |
| Move the camera sidewards relatively to itself. (X axis) More... | |
| virtual void | MoveUp (ni::tF32 delta)=0 |
| Move the camera upward relatively to itself. (Y axis) More... | |
| virtual void | MoveForward (ni::tF32 delta)=0 |
| Move the camera forward relatively to itself. (Y axis) More... | |
| virtual void | SetMove (const ni::sVec3f &avMove)=0 |
| Set the relative movement vector. (x+ sidewards, y+ upwards and z+ forward) {Property}. More... | |
| virtual ni::sVec3f | GetMove () const =0 |
| Get the relative movement vector. {Property}. More... | |
Orientation | |
| virtual void | RotateTarget (ni::sVec3f avAxis, ni::tF32 afAngle)=0 |
| Rotates the target around the specified axis. More... | |
| virtual void | RotateTargetUp (ni::sVec3f avAxis, ni::tF32 afAngle)=0 |
| Rotates the target up around the specified axis. More... | |
| virtual void | AddYaw (ni::tF32 a)=0 |
| Rotates the target up around the specified axis. Add yaw. More... | |
| virtual void | AddPitch (ni::tF32 a)=0 |
| Add pitch. More... | |
| virtual void | AddRoll (ni::tF32 a)=0 |
| Add roll. More... | |
| virtual void | OrbitUp (ni::tF32 afA)=0 |
| Orbit up/down the position of the camera around the current target. More... | |
| virtual void | OrbitSidewards (ni::tF32 afA)=0 |
| Orbit left/right the position of the camera around the current target. More... | |
| virtual ni::sVec3f | GetForward () const =0 |
| Get the forward vector. {Property}. More... | |
| virtual ni::sVec3f | GetRight () const =0 |
| Get the right vector. {Property}. More... | |
| virtual ni::sVec3f | GetUp () const =0 |
| Get the up vector. {Property}. More... | |
Additional Inherited Members | |
Public Member Functions inherited from iUnknown | |
| virtual tBool | IsOK () const =0 |
| Check if the object is valid. More... | |
| virtual tI32 | AddRef ()=0 |
| Signal that one more reference of the object has been created. More... | |
| virtual tI32 | Release ()=0 |
| Release a reference of the object. More... | |
| virtual void | DeleteThis ()=0 |
| Bypass any reference counting and delete this object. More... | |
| virtual void | Invalidate ()=0 |
| Invalidate the object. More... | |
| virtual iUnknown * | QueryInterface (const tUUID &aIID)=0 |
| Query an interface. More... | |
| virtual void | ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0 |
| Fill a UUID list containing the UUIDs of the implemented interfaces. More... | |
| virtual tI32 | SetNumRefs (tI32 anNumRefs)=0 |
| Set the reference counter directly. More... | |
| virtual tI32 | GetNumRefs () const =0 |
| Get the number of references to this object. More... | |
|
pure virtual |
Clone the camera.
|
pure virtual |
Get the world matrix. {Property}.
|
pure virtual |
Get the view matrix. {Property}.
|
pure virtual |
Get the projection matrix. {Property}.
|
pure virtual |
Get the frustum. {Property}.
|
pure virtual |
Compute a ray from the given screen position and rectangle.
|
pure virtual |
Get the starting point of the last ray {Property}.
|
pure virtual |
Get a screen position from the given 3d position.
Set the view matrix directly.
Set the projection matrix directly.
|
pure virtual |
Set the camera position, target and up vector from a matrix.
| aMatrix | is the matrix from which the new camera position and target will be derived |
| abSetUp | if true the target's up vector will also be derived from the specifed matrix. |
|
pure virtual |
Set projection type. {Property}.
|
pure virtual |
Get orthogonal projection. {Property}.
|
pure virtual |
Set the camera's viewport rectangle. {Property}.
|
pure virtual |
Get the camera's viewport rectangle. {Property}.
|
pure virtual |
Get the vertical field of view. {Property}.
Set the aspect ratio. {Property}.
|
pure virtual |
Get the aspect ratio. {Property}.
|
pure virtual |
Get the absolute aspect ratio. {Property}.
|
pure virtual |
Get the near clipping plane. {Property}.
|
pure virtual |
Get the far clipping plane. {Property}.
Set the orthogonal projection size. {Property}.
|
pure virtual |
Get the orthogonal projection size. {Property}.
|
pure virtual |
Set the position. {Property}.
|
pure virtual |
Get the position. {Property}.
|
pure virtual |
Set the target. {Property}.
|
pure virtual |
Get the target. {Property}.
|
pure virtual |
Set the target up vector. {Property}.
|
pure virtual |
Get the target up vector. {Property}.
Set the distance between the camera and it's target by moving the target. {Property}.
|
pure virtual |
Get the distance between the camera and it's target. {Property}.
Set the distance between the camera and it's target by moving the position. {Property}.
|
pure virtual |
Get the distance between the camera and it's target. {Property}.
|
pure virtual |
Set the direction of the target. {Property}.
|
pure virtual |
Get the direction of the target. {Property}.
|
pure virtual |
Set the camera move mode. {Property}.
|
pure virtual |
Get the camera move mode. {Property}.
Move the camera sidewards relatively to itself. (X axis)
Move the camera upward relatively to itself. (Y axis)
Move the camera forward relatively to itself. (Y axis)
|
pure virtual |
Set the relative movement vector. (x+ sidewards, y+ upwards and z+ forward) {Property}.
|
pure virtual |
Get the relative movement vector. {Property}.
|
pure virtual |
Rotates the target around the specified axis.
|
pure virtual |
Rotates the target up around the specified axis.
Rotates the target up around the specified axis. Add yaw.
Add pitch.
Add roll.
Orbit up/down the position of the camera around the current target.
Orbit left/right the position of the camera around the current target.
|
pure virtual |
Get the forward vector. {Property}.
|
pure virtual |
Get the right vector. {Property}.
|
pure virtual |
Get the up vector. {Property}.
1.8.7