Antkeeper  0.0.1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
autofocus-component.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2023 Christopher J. Howard
3  *
4  * This file is part of Antkeeper source code.
5  *
6  * Antkeeper source code is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Antkeeper source code is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef ANTKEEPER_GAME_AUTOFOCUS_COMPONENT_HPP
21 #define ANTKEEPER_GAME_AUTOFOCUS_COMPONENT_HPP
22 
23 #include <engine/math/vector.hpp>
24 #include <engine/math/angles.hpp>
26 
31 {
34 
36  double far_focal_plane_height{50.0};
37 
39  double near_hfov{math::radians(90.0)};
40 
42  double far_hfov{math::radians(45.0)};
43 
45  double zoom{};
46 
49 
51  double hfov{};
52 
54  double vfov{};
55 
58 };
59 
60 #endif // ANTKEEPER_GAME_AUTOFOCUS_COMPONENT_HPP
constexpr T radians(T degrees) noexcept
Converts an angle given in degrees to radians.
Definition: angles.hpp:48
Modulates a camera's field of view and spring arm length.
double far_hfov
Horizontal FoV at minimum zoom.
double vfov
Vertical FoV of the camera, in radians.
double near_focal_plane_height
Height of the focal plane at maximum zoom.
math::dvec3 focal_point_offset
Position of the focal point, relative to the subject.
math::dvec2 focal_plane_size
Dimensions of the focal plane.
double near_hfov
Horizontal FoV at maximum zoom.
double zoom
Zoom factor, on [0, 1].
double hfov
Horizontal FoV of the camera, in radians.
double far_focal_plane_height
Height of the focal plane at minimum zoom.
n-dimensional vector.
Definition: vector.hpp:44