Files
bluflame/aiwaz/Aiwaz/Resources/Camera/BaseCamera.h
2026-04-18 22:31:51 +02:00

41 lines
978 B
C++

#pragma once
#include "ICamera.h"
#include "IEngine.h"
#include "../Transformation/Transformation.h"
class BaseCamera
: public Transformation
, public ICamera
{
public:
BaseCamera(IEngine& argEngine);
virtual const D3DXMATRIX& get_ProjectionMatrix() const { return m_ProjectionMatrix; }
virtual const D3DXMATRIX& get_ViewMatrix() const { return m_ViewMatrix; }
virtual void set_AspectRatio(float argValue);
virtual float get_AspectRatio() const { return m_AspectRatio; }
virtual void set_FarClip(float argValue);
virtual float get_FarClip() const { return m_FarClip; }
virtual void set_NearClip(float argValue);
virtual float get_NearClip() const { return m_NearClip; }
virtual const ViewFrustum& get_ViewFrustum() const { return m_Frustum; }
protected:
virtual void RecreateAllShaderParameters();
protected:
float m_NearClip;
float m_FarClip;
float m_AspectRatio;
D3DXMATRIX m_ProjectionMatrix;
D3DXMATRIX m_ViewMatrix;
ViewFrustum m_Frustum;
};