From 69d88ab1c159267bfff3bf4ac253eb02d0650d9e Mon Sep 17 00:00:00 2001 From: Nathalie Seen Date: Tue, 8 Jun 2021 11:39:47 +0200 Subject: [PATCH] [ADD] comments to camera and toolbox --- src/entities/Camera.cpp | 6 ++++-- src/entities/Camera.h | 8 +++++++- src/toolbox/toolbox.h | 18 ++++++++++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/src/entities/Camera.cpp b/src/entities/Camera.cpp index efbea7a..d2338ff 100644 --- a/src/entities/Camera.cpp +++ b/src/entities/Camera.cpp @@ -10,11 +10,14 @@ namespace entities {} void Camera::Follow(glm::vec3 follow_position) { + //set position to follow in front of the camera follow_position.z += 100; + //set position to follow a bit lower follow_position.y += 50; + //move position from original position to fiven position with smoothing position = toolbox::Lerp(position, follow_position, 0.1); } - + void Camera::Move(GLFWwindow* window) { float movement_speed = 0; @@ -53,6 +56,5 @@ namespace entities position.x += side_speed; position.z += movement_speed; position.y += up_down_speed; - std::cout <<"x= " << position.x <<"\ny= " << position.y << "\nz= " << position.z << "\n"; } } diff --git a/src/entities/Camera.h b/src/entities/Camera.h index 7d32803..08f1e34 100644 --- a/src/entities/Camera.h +++ b/src/entities/Camera.h @@ -14,12 +14,13 @@ namespace entities private: // The movement speed of the camera const float SPEED = 0.5f; - const float UP_SPEED = 0.9f; + const float UP_SPEED = 1.0f; glm::vec3 position; glm::vec3 rotation; public: + Camera(const ::glm::vec3& position, const ::glm::vec3& rotation); /* @@ -29,6 +30,11 @@ namespace entities */ void Move(GLFWwindow* window); + /* + * @brief follows the given position with smoothing + * + * @param follow_position the position of the object the camera has to follow + */ void Follow(glm::vec3 follow_position); inline glm::vec3 GetPosition() const{ return position; } diff --git a/src/toolbox/toolbox.h b/src/toolbox/toolbox.h index 585c403..d7d6a1f 100644 --- a/src/toolbox/toolbox.h +++ b/src/toolbox/toolbox.h @@ -47,7 +47,25 @@ namespace toolbox */ glm::mat4 CreateViewMatrix(entities::Camera& camera); + /* + * @biref go to one coordinate to another with smooting + * + * @param from one coordinate of the start + * @param to one coordinate of where to go + * @param amount the amount of smoothing (lower is smoother) + * + * @return coordinate of where to go + */ float Lerp(float from, float to, float amount); + /* + * @biref go from one position to another with smoothing + * + * @param from position of the start + * @param to position of where to go + * @param amount the amount of smoothing (lower is smoother) + * + * @return position of where to go + */ glm::vec3 Lerp(glm::vec3 from, glm::vec3 to, float amount); }