8#include "math/GLMath.hpp"
9#include "misc/Globals.h"
10#include "misc/shapes/Frustum.h"
14 enum class CameraMode {
151 void setFov(
unsigned int iVerticalFov);
250 void setRenderTargetSize(
unsigned int iRenderTargetWidth,
unsigned int iRenderTargetHeight);
274 std::pair<std::recursive_mutex, Data>
mtxData{};
Definition: CameraNode.h:11
Definition: CameraProperties.h:22
Data::OrbitalModeData getOrbitalModeProperties()
Definition: CameraProperties.cpp:104
glm::mat4x4 getViewMatrix()
Definition: CameraProperties.cpp:114
void setFov(unsigned int iVerticalFov)
Definition: CameraProperties.cpp:30
float getFarClipPlaneDistance()
Definition: CameraProperties.cpp:92
void makeSureViewMatrixIsUpToDate()
Definition: CameraProperties.cpp:130
std::pair< std::recursive_mutex, Data > mtxData
Definition: CameraProperties.h:274
void makeSureProjectionMatrixAndClipPlanesAreUpToDate()
Definition: CameraProperties.cpp:153
void setRenderTargetSize(unsigned int iRenderTargetWidth, unsigned int iRenderTargetHeight)
Definition: CameraProperties.cpp:13
Frustum * getCameraFrustum()
Definition: CameraProperties.h:237
glm::vec3 getWorldLocation()
Definition: CameraProperties.cpp:109
static constexpr float floatDelta
Definition: CameraProperties.h:277
void setFarClipPlaneDistance(float farClipPlaneDistance)
Definition: CameraProperties.cpp:60
CameraMode getCurrentCameraMode()
Definition: CameraProperties.cpp:98
void recalculateFrustum()
Definition: CameraProperties.cpp:196
glm::mat4x4 getProjectionMatrix()
Definition: CameraProperties.cpp:122
unsigned int getVerticalFov()
Definition: CameraProperties.cpp:80
float getNearClipPlaneDistance()
Definition: CameraProperties.cpp:86
void setNearClipPlaneDistance(float nearClipPlaneDistance)
Definition: CameraProperties.cpp:40
Definition: Renderer.h:43
Definition: CameraProperties.h:38
float theta
Definition: CameraProperties.h:45
float phi
Definition: CameraProperties.h:48
float distanceToTarget
Definition: CameraProperties.h:42
Definition: CameraProperties.h:72
float nearClipPlaneHeight
Definition: CameraProperties.h:109
bool bProjectionMatrixNeedsUpdate
Definition: CameraProperties.h:82
glm::mat4x4 projectionMatrix
Definition: CameraProperties.h:79
bool bLightGridFrustumsNeedUpdate
Definition: CameraProperties.h:91
float nearClipPlaneDistance
Definition: CameraProperties.h:94
unsigned int iRenderTargetHeight
Definition: CameraProperties.h:106
unsigned int iVerticalFov
Definition: CameraProperties.h:100
unsigned int iRenderTargetWidth
Definition: CameraProperties.h:103
float farClipPlaneDistance
Definition: CameraProperties.h:97
float farClipPlaneHeight
Definition: CameraProperties.h:112
Definition: CameraProperties.h:52
glm::mat4x4 viewMatrix
Definition: CameraProperties.h:56
glm::vec3 worldUpDirection
Definition: CameraProperties.h:65
glm::vec3 worldLocation
Definition: CameraProperties.h:62
glm::vec3 targetPointWorldLocation
Definition: CameraProperties.h:68
bool bViewMatrixNeedsUpdate
Definition: CameraProperties.h:59
Definition: CameraProperties.h:34
Frustum frustum
Definition: CameraProperties.h:134
OrbitalModeData orbitalModeData
Definition: CameraProperties.h:140
ProjectionData projectionData
Definition: CameraProperties.h:131
static const float minimumClipPlaneDistance
Definition: CameraProperties.h:143
ViewData viewData
Definition: CameraProperties.h:121
CameraMode currentCameraMode
Definition: CameraProperties.h:137
static const glm::vec3 up
Definition: Globals.h:19