Lugdunum
0.1.0
include
lug
Graphics
Render
Camera
Perspective.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
lug/Graphics/Render/Camera/Camera.hpp
>
4
5
namespace
lug
{
6
namespace
Graphics {
7
8
namespace
Builder {
9
class
Camera;
10
}
// Builder
11
12
namespace
Render {
13
namespace
Camera {
14
15
class
LUG_GRAPHICS_API
Perspective
:
public
Camera
{
16
friend
class
Builder::Camera
;
17
18
public
:
19
Perspective
(
const
Perspective
&) =
delete
;
20
Perspective
(
Perspective
&&) =
delete
;
21
22
Perspective
& operator=(
const
Perspective
&) =
delete
;
23
Perspective
& operator=(
Perspective
&&) =
delete
;
24
25
~
Perspective
() =
default
;
26
27
float
getFovY()
const
;
28
void
setFovY(
float
fovy);
29
30
float
getAspectRatio()
const
;
31
void
setAspectRatio(
float
aspectRatio);
32
33
protected
:
34
explicit
Perspective
(
const
std::string& name);
35
36
void
updateProj() override final;
37
38
private:
39
float
_fovy{0.0f};
40
float
_aspectRatio{0.0f};
41
};
42
43
#include <
lug/Graphics/Render/Camera/Perspective.inl
>
44
45
}
// Camera
46
}
// Render
47
}
// Graphics
48
}
// lug
Camera.hpp
LUG_GRAPHICS_API
#define LUG_GRAPHICS_API
Definition:
Export.hpp:11
lug::Graphics::Render::Camera::Camera
Class for camera.
Definition:
Camera.hpp:30
lug::Graphics::Render::Camera::Perspective
Definition:
Perspective.hpp:15
lug
Definition:
Application.hpp:11
Perspective.inl
lug::Graphics::Builder::Camera
Definition:
Camera.hpp:16
Generated by
1.8.13