diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2021-01-17 19:36:30 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2021-01-17 22:16:48 +0000 |
commit | 0bf4ad9e4a9e1c97e92aa23a365405dfef89bd7c (patch) | |
tree | 68a80976a247836bbb1eecc835af437e3489fbb7 /camera.cpp | |
parent | First cut modernizing and sanitizing (diff) | |
download | ilt-0bf4ad9e4a9e1c97e92aa23a365405dfef89bd7c.tar.bz2 ilt-0bf4ad9e4a9e1c97e92aa23a365405dfef89bd7c.tar.xz ilt-0bf4ad9e4a9e1c97e92aa23a365405dfef89bd7c.zip |
Big reshuffle
Fixes code quality warnings now picked up.
Diffstat (limited to 'camera.cpp')
-rw-r--r-- | camera.cpp | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/camera.cpp b/camera.cpp deleted file mode 100644 index b4a76d0..0000000 --- a/camera.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#include "camera.h" -#include <glm/gtx/transform.hpp> - -Camera::Camera(glm::vec3 pos, float fov, float aspect, float zNear, float zFar) : - projection {glm::perspective(fov, aspect, zNear, zFar)}, pos {pos}, forward {0.0F, 0.0F, 1.0F}, up {0.0F, 1.0F, - 0.0F} -{ -} - -glm::mat4 -Camera::GetViewProjection() const -{ - return projection * glm::lookAt(pos, pos + forward, up); -} - -void -Camera::MoveForward(float amt) -{ - pos += forward * amt; -} - -void -Camera::MoveRight(float amt) -{ - pos += glm::cross(up, forward) * amt; -} - -void -Camera::Pitch(float angle) -{ - const auto right = glm::normalize(glm::cross(up, forward)); - - forward = glm::vec3(glm::normalize(glm::rotate(angle, right) * glm::vec4(forward, 0.0))); - up = glm::normalize(glm::cross(forward, right)); -} - -void -Camera::RotateY(float angle) -{ - static constexpr glm::vec3 UP {0.0F, 1.0F, 0.0F}; - - const auto rotation = glm::rotate(angle, UP); - - forward = glm::vec3(glm::normalize(rotation * glm::vec4(forward, 0.0))); - up = glm::vec3(glm::normalize(rotation * glm::vec4(up, 0.0))); -} |