61 Camera(std::string name =
"Camera",
63 float fov = 60,
float near = 1.0f,
float far = 1000.0f);
67 void Update(
float DeltaTime)
override;
121 void RecalculateViewMatrix();
123 void RecalculateProjectionMatrix();
void SetFieldOfView(float fov)
void SetNearPlane(float nearPlaneValue)
static const ViewFrustum & GetMainViewFrustum()
void SetPosition(const Math::Vector3D &position)
Math::Vector3D GetPosition() const
float GetFieldOfView() const
static const Math::Matrix4 & GetMainProjectionMatrix()
void Update(float DeltaTime) override
Recalculates the view/projection matrices and frustum while active.
static Math::Matrix4 Projection
float GetFarPlane() const
Math::Vector3D GetLookTarget() const
void AddDirection(const Math::Vector3D &direction)
Math::Vector3D GetUp() const
static const Math::Vector3D & GetMainCameraPosition()
void SetFarPlane(float farPlaneValue)
Math::Vector3D GetDirection() const
ProjectionType GetProjectionType() const
void SetProjectionType(ProjectionType type)
void SetDirection(const Math::Vector3D &direction)
static ViewFrustum s_frustum
static Math::Matrix4 View
static Math::Vector3D MainPosition
float GetNearPlane() const
void AddLookTarget(const Math::Vector3D &target)
static const Math::Matrix4 & GetMainViewMatrix()
void SetUp(const Math::Vector3D &up)
Math::Vector3D LookTarget
void SetLookTarget(const Math::Vector3D &target)
Camera(std::string name="Camera", Math::Vector3D Position=Math::Vector3D(0, 0, -3.5), float fov=60, float near=1.0f, float far=1000.0f)
void Initialize() override
Initializes the object and its components; called once before the first Update.
void AddPosition(const Math::Vector3D &position)
GameObject(const std::string &name="GameObject")
Vector3D Normalized() const
Matrix< float, 4, 4 > Matrix4
Root namespace for everything the engine exposes.