diff --git a/modules/camera/CMakeLists.txt b/modules/camera/CMakeLists.txt index 59223f7..b1c5525 100644 --- a/modules/camera/CMakeLists.txt +++ b/modules/camera/CMakeLists.txt @@ -1,3 +1,3 @@ -add_library_module(camera camera.cpp ortho.cpp scene.cpp) +add_library_module(camera camera.cpp scene.cpp) target_link_libraries(camera PUBLIC glm::glm) diff --git a/modules/engine/include/engine/scene/components/camera.hpp b/modules/camera/include/camera/component.hpp similarity index 100% rename from modules/engine/include/engine/scene/components/camera.hpp rename to modules/camera/include/camera/component.hpp diff --git a/modules/camera/include/camera/ortho.hpp b/modules/camera/include/camera/ortho.hpp deleted file mode 100644 index 76d3cae..0000000 --- a/modules/camera/include/camera/ortho.hpp +++ /dev/null @@ -1,56 +0,0 @@ -#pragma once - -#include - -namespace Light { - -class OrthographicCamera -{ -public: - OrthographicCamera( - const glm::vec2 &position, - float aspectRatio, - float zoomLevel, - const glm::vec4 &clearColor = glm::vec4(0.1f, 0.3f, 0.7f, 1.0f) - ); - - void calculate_view(); - - void calculate_projection(); - - void on_resize(const glm::vec2 &size); - - [[nodiscard]] auto get_view() const -> const glm::mat4 & - { - return m_view; - } - - [[nodiscard]] auto get_projection() const -> const glm::mat4 & - { - return m_projection; - } - - [[nodiscard]] auto get_clear_color() const -> const glm::vec4 & - { - return m_clear_color; - } - - void move(const glm::vec2 &position); - -private: - glm::vec2 m_position; - - float m_aspect_ratio; - - float m_zoom_level; - - const glm::vec3 m_up; - - glm::mat4 m_projection {}; - - glm::mat4 m_view {}; - - glm::vec4 m_clear_color; -}; - -} // namespace Light diff --git a/modules/camera/src/ortho.cpp b/modules/camera/src/ortho.cpp deleted file mode 100644 index 385dd15..0000000 --- a/modules/camera/src/ortho.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#include -#include -#include - -namespace Light { - -OrthographicCamera::OrthographicCamera( - const glm::vec2 &position, - float aspect_ratio, - float zoom_level, - const glm::vec4 &clear_color /* = glm::vec4(0.1f, 0.3f, 0.7f, 1.0f) */ -) - : m_up(0.0f, 1.0f, 0.0f) - , m_position(position) - , m_aspect_ratio(aspect_ratio) - , m_zoom_level(zoom_level) - , m_clear_color(clear_color) -{ -} - -void OrthographicCamera::calculate_view() -{ - m_view = glm::lookAt(glm::vec3(m_position, 100.0f), glm::vec3(m_position, 0.0f), m_up); -} - -void OrthographicCamera::calculate_projection() -{ - m_projection = glm::ortho( - -m_zoom_level * m_aspect_ratio, - +m_zoom_level * m_aspect_ratio, - -m_zoom_level, - +m_zoom_level, - FLT_MAX, - FLT_MIN - ); -} - -void OrthographicCamera::on_resize(const glm::vec2 &size) -{ - m_aspect_ratio = size.x / size.y; - calculate_projection(); -} - -void OrthographicCamera::move(const glm::vec2 &position) -{ - m_position += position; -} - -} // namespace Light diff --git a/modules/engine/include/engine/scene/components.hpp b/modules/engine/include/engine/scene/components.hpp index f32366a..25aa62b 100644 --- a/modules/engine/include/engine/scene/components.hpp +++ b/modules/engine/include/engine/scene/components.hpp @@ -1,6 +1,5 @@ #pragma once -#include #include #include #include diff --git a/modules/engine/src/scene/scene.cpp b/modules/engine/src/scene/scene.cpp index ab362e6..94a434b 100644 --- a/modules/engine/src/scene/scene.cpp +++ b/modules/engine/src/scene/scene.cpp @@ -1,8 +1,9 @@ -#include +#include #include #include #include #include +#include namespace Light { diff --git a/modules/engine/src/utils/serializer.cpp b/modules/engine/src/utils/serializer.cpp index 8072ee0..6249d37 100644 --- a/modules/engine/src/utils/serializer.cpp +++ b/modules/engine/src/utils/serializer.cpp @@ -1,7 +1,8 @@ -#include -#include #include +#include +#include #include +#include namespace YAML { diff --git a/modules/mirror/src/editor_layer.cpp b/modules/mirror/src/editor_layer.cpp index 9676a5f..470f619 100644 --- a/modules/mirror/src/editor_layer.cpp +++ b/modules/mirror/src/editor_layer.cpp @@ -1,4 +1,5 @@ #include +#include #include #include #include diff --git a/modules/mirror/src/panel/properties.cpp b/modules/mirror/src/panel/properties.cpp index f2b24ae..12776a7 100644 --- a/modules/mirror/src/panel/properties.cpp +++ b/modules/mirror/src/panel/properties.cpp @@ -1,5 +1,6 @@ -#include #include +#include +#include #include #include #include