Public Member Functions | Protected Attributes | List of all members
ion::Scene::CPerspectiveCamera Class Reference

#include <CPerspectiveCamera.h>

Inheritance diagram for ion::Scene::CPerspectiveCamera:
Inheritance graph
Collaboration diagram for ion::Scene::CPerspectiveCamera:
Collaboration graph

Public Member Functions

 CPerspectiveCamera (float const aspectRatio, float const nearPlane=0.1f, float const farPlane=100.f, float const focalLength=0.13f)
float GetFieldOfView () const
float GetFocalLength () const
float GetAspectRatio () const
void SetFieldOfView (float const fieldOfView)
void SetFocalLength (float const focalLength)
void SetAspectRatio (float const aspectRatio)
void RecalculateProjectionMatrix ()
void Update ()
EProjectionType GetProjectionType () const
void SetProjectionType (EProjectionType const Type)
- Public Member Functions inherited from ion::Scene::CCamera
 CCamera ()
virtual void RecalculateViewMatrix ()
virtual vec3f const & GetPosition () const
virtual vec3f const & GetLookDirecton () const
virtual vec3f GetLookAtTarget () const
virtual vec3f const & GetUpVector () const
virtual glm::mat4 GetViewMatrix () const
virtual glm::mat4 GetProjectionMatrix () const
virtual void SetPosition (vec3f const &position)
virtual void SetLookDirection (vec3f const &lookDirection)
virtual void SetLookAtTarget (vec3f const &lookAtTarget)
virtual void SetUpVector (vec3f const &UpVector)
virtual void SetViewMatrix (glm::mat4 const &viewMatrix)
virtual void SetProjectionMatrix (glm::mat4 const &projectionMatrix)
virtual float GetNearPlane () const
virtual float GetFarPlane () const
virtual void SetNearPlane (float const nearPlane)
virtual void SetFarPlane (float const farPlane)
virtual vec2i GetScreenCoordinates (vec3f const &WorldPosition, vec2f const &WindowSize, bool *InFront=nullptr)
virtual ray3f GetPickingRay (vec2i const &Pixel, vec2f const &WindowSize)

Protected Attributes

EProjectionType ProjectionType = EProjectionType::Standard
float FocalLength
float AspectRatio
- Protected Attributes inherited from ion::Scene::CCamera
vec3f Position
vec3f LookDirection
vec3f UpVector
glm::mat4 ViewMatrix
glm::mat4 ProjectionMatrix
float NearPlane
float FarPlane

Constructor & Destructor Documentation

ion::Scene::CPerspectiveCamera::CPerspectiveCamera ( float const  aspectRatio,
float const  nearPlane = 0.1f,
float const  farPlane = 100.f,
float const  focalLength = 0.13f 

Member Function Documentation

float ion::Scene::CPerspectiveCamera::GetAspectRatio ( ) const
float ion::Scene::CPerspectiveCamera::GetFieldOfView ( ) const
float ion::Scene::CPerspectiveCamera::GetFocalLength ( ) const
EProjectionType ion::Scene::CPerspectiveCamera::GetProjectionType ( ) const
void ion::Scene::CPerspectiveCamera::RecalculateProjectionMatrix ( )
void ion::Scene::CPerspectiveCamera::SetAspectRatio ( float const  aspectRatio)
void ion::Scene::CPerspectiveCamera::SetFieldOfView ( float const  fieldOfView)
void ion::Scene::CPerspectiveCamera::SetFocalLength ( float const  focalLength)
void ion::Scene::CPerspectiveCamera::SetProjectionType ( EProjectionType const  Type)
void ion::Scene::CPerspectiveCamera::Update ( )

Reimplemented from ion::Scene::CCamera.

Member Data Documentation

float ion::Scene::CPerspectiveCamera::AspectRatio
float ion::Scene::CPerspectiveCamera::FocalLength
EProjectionType ion::Scene::CPerspectiveCamera::ProjectionType = EProjectionType::Standard

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