69 lines
1.1 KiB
C++
69 lines
1.1 KiB
C++
|
#pragma once
|
||
|
|
||
|
// Project Includes
|
||
|
#include "Components/Component.hxx"
|
||
|
#include "Math/Vector3.hxx"
|
||
|
#include "Math/Quaternion.hxx"
|
||
|
// External Dependencies
|
||
|
#include "Camera/SHCameraComponent.h"
|
||
|
|
||
|
namespace SHADE
|
||
|
{
|
||
|
public ref class Camera : public Component<SHCameraComponent>
|
||
|
{
|
||
|
internal:
|
||
|
Camera(Entity entity);
|
||
|
|
||
|
public:
|
||
|
property float Pitch
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Yaw
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Roll
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Width
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Height
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Near
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float Far
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property float FOV
|
||
|
{
|
||
|
float get();
|
||
|
void set(float val);
|
||
|
}
|
||
|
property Vector3 Position
|
||
|
{
|
||
|
Vector3 get();
|
||
|
void set(Vector3 val);
|
||
|
}
|
||
|
|
||
|
|
||
|
void SetMainCamera(size_t directorIndex);
|
||
|
void SetMainCamera();
|
||
|
void LookAt(Vector3 targetPosition);
|
||
|
};
|
||
|
}
|