CSEngine
Loading...
Searching...
No Matches
CameraBase.h
1#pragma once
2
3namespace CSE {
4
5 struct CameraMatrixStruct;
6 class SFrameBuffer;
7
8 class CameraBase {
9 public:
10 enum BackgroundType {
11 NONE = 0, SOLID = 1, SKYBOX = 2
12 };
13 public:
14 CameraBase() = default;
15 virtual ~CameraBase() = default;
16
17 virtual CameraMatrixStruct GetCameraMatrixStruct() const = 0;
18 virtual SFrameBuffer* GetFrameBuffer() const = 0;
19 virtual BackgroundType GetBackgroundType() {
20 return SOLID;
21 }
22 virtual void RenderBackground() const = 0;
23 };
24}