Class for camera. More...
#include <Camera.hpp>
Public Member Functions | |
Camera (const float fov, const float near, const float far, const float moveSpeed, const float lookSpeed) | |
~Camera ()=default | |
Camera (const Camera &)=delete | |
Camera & | operator= (const Camera &)=delete |
Camera (Camera &&)=default | |
Camera & | operator= (Camera &&)=default |
void | setOrthographicProjection (float left, float right, float top, float bottom, float near, float far) |
void | setPerspectiveProjection (float aspect) |
void | setViewDirection (glm::vec3 position, glm::vec3 direction, glm::vec3 up={0.F, -1.F, 0.F}) |
void | setViewTarget (const glm::vec3 position, const glm::vec3 target, const glm::vec3 up={0.F, -1.F, 0.F}) |
void | setViewXYZ (glm::vec3 position, glm::vec3 rotation) |
void | setFov (const float fov) |
void | setNear (const float near) |
void | setFar (const float far) |
void | setMoveSpeed (const float moveSpeed) |
void | setLookSpeed (const float lookSpeed) |
const glm::mat4 & | getProjection () const |
const glm::mat4 & | getView () const |
const glm::mat4 & | getInverseView () const |
float | getFov () const |
float | getNear () const |
float | getFar () const |
float | getMoveSpeed () const |
float | getLookSpeed () const |
Public Attributes | |
Transform3D | transform {DEFAULT_POSITION, {1.F, 1.F, 1.F}, DEFAULT_ROTATION} |
Private Attributes | |
float | m_fov |
float | m_near |
float | m_far |
float | m_moveSpeed |
float | m_lookSpeed |
glm::mat4 | m_projectionMatrix {1.F} |
glm::mat4 | m_viewMatrix {1.F} |
glm::mat4 | m_inverseViewMatrix {1.F} |
Class for camera.
Definition at line 28 of file Camera.hpp.
|
inline |
Definition at line 32 of file Camera.hpp.
|
default |
|
delete |
|
default |
|
inlinenodiscard |
Definition at line 56 of file Camera.hpp.
References m_far.
Referenced by ven::Gui::cameraSection().
|
inlinenodiscard |
Definition at line 54 of file Camera.hpp.
References m_fov.
Referenced by ven::Gui::cameraSection().
|
inlinenodiscard |
Definition at line 53 of file Camera.hpp.
References m_inverseViewMatrix.
|
inlinenodiscard |
Definition at line 58 of file Camera.hpp.
References m_lookSpeed.
Referenced by ven::Gui::cameraSection(), and ven::EventManager::moveCamera().
|
inlinenodiscard |
Definition at line 57 of file Camera.hpp.
References m_moveSpeed.
Referenced by ven::Gui::cameraSection(), and ven::EventManager::moveCamera().
|
inlinenodiscard |
Definition at line 55 of file Camera.hpp.
References m_near.
Referenced by ven::Gui::cameraSection().
|
inlinenodiscard |
Definition at line 51 of file Camera.hpp.
References m_projectionMatrix.
|
inlinenodiscard |
Definition at line 52 of file Camera.hpp.
References m_viewMatrix.
|
inline |
Definition at line 47 of file Camera.hpp.
References m_far.
Referenced by ven::Gui::cameraSection().
|
inline |
Definition at line 45 of file Camera.hpp.
References m_fov.
Referenced by ven::Gui::cameraSection().
|
inline |
Definition at line 49 of file Camera.hpp.
References m_lookSpeed.
Referenced by ven::Gui::cameraSection().
|
inline |
Definition at line 48 of file Camera.hpp.
References m_moveSpeed.
Referenced by ven::Gui::cameraSection().
|
inline |
Definition at line 46 of file Camera.hpp.
References m_near.
Referenced by ven::Gui::cameraSection().
void ven::Camera::setOrthographicProjection | ( | float | left, |
float | right, | ||
float | top, | ||
float | bottom, | ||
float | near, | ||
float | far ) |
Definition at line 6 of file camera.cpp.
References m_projectionMatrix.
void ven::Camera::setPerspectiveProjection | ( | float | aspect | ) |
Definition at line 17 of file camera.cpp.
void ven::Camera::setViewDirection | ( | glm::vec3 | position, |
glm::vec3 | direction, | ||
glm::vec3 | up = {0.F, -1.F, 0.F} ) |
Definition at line 29 of file camera.cpp.
|
inline |
Definition at line 43 of file Camera.hpp.
void ven::Camera::setViewXYZ | ( | glm::vec3 | position, |
glm::vec3 | rotation ) |
Definition at line 64 of file camera.cpp.
|
private |
Definition at line 66 of file Camera.hpp.
|
private |
Definition at line 64 of file Camera.hpp.
|
private |
Definition at line 71 of file Camera.hpp.
Referenced by getInverseView().
|
private |
Definition at line 68 of file Camera.hpp.
Referenced by getLookSpeed(), and setLookSpeed().
|
private |
Definition at line 67 of file Camera.hpp.
Referenced by getMoveSpeed(), and setMoveSpeed().
|
private |
Definition at line 65 of file Camera.hpp.
|
private |
Definition at line 69 of file Camera.hpp.
Referenced by getProjection(), and setOrthographicProjection().
|
private |
Definition at line 70 of file Camera.hpp.
Referenced by getView().
Transform3D ven::Camera::transform {DEFAULT_POSITION, {1.F, 1.F, 1.F}, DEFAULT_ROTATION} |
Definition at line 60 of file Camera.hpp.
Referenced by ven::Gui::cameraSection(), and ven::EventManager::moveCamera().