diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ae6f39b99cf64d6447c7e607c6c08d68b240950..ae93d8db987d3d8089a00f11ca4f38e344589f56 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,10 @@ file(GLOB_RECURSE SOURCE_FILES "src/*.cpp") add_executable(${PROJECT_NAME} ${SOURCE_FILES}) target_include_directories(${PROJECT_NAME} PRIVATE include) +add_subdirectory(external) +target_link_libraries(${PROJECT_NAME} external::external) + + # Add custom command to copy Data directory to build directory # Remove Data directory in build directory if present add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..22fa6e788af4dcd22c92bf05a76dad7fc8dcca78 --- /dev/null +++ b/external/CMakeLists.txt @@ -0,0 +1,19 @@ +set(LIB_NAME external) + +add_library(${LIB_NAME} INTERFACE) +add_library(${LIB_NAME}::${LIB_NAME} ALIAS ${LIB_NAME}) + +message(STATUS "${CMAKE_CURRENT_SOURCE_DIR}") +target_include_directories( + ${LIB_NAME} + INTERFACE + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/fx-gltf/include> + $<INSTALL_INTERFACE:include> +) + +set(JSON_BuildTests OFF CACHE INTERNAL "") +add_subdirectory(nlohmann-json) +target_link_libraries(${LIB_NAME} INTERFACE nlohmann_json::nlohmann_json) + +add_subdirectory(DMath) +target_link_libraries(${LIB_NAME} INTERFACE DMath::DMath) \ No newline at end of file diff --git a/external/DMath b/external/DMath index cb91a57c761dc8be87738d902abb3b9adf06d7b5..d93a427928ba7957e5e162dd8567f22bc803ff57 160000 --- a/external/DMath +++ b/external/DMath @@ -1 +1 @@ -Subproject commit cb91a57c761dc8be87738d902abb3b9adf06d7b5 +Subproject commit d93a427928ba7957e5e162dd8567f22bc803ff57 diff --git a/src/Engine/Asset.cpp b/src/Engine/Asset.cpp index 380f3465062037909fd15035295e9c244f667fdb..5a956ace6a267b1da7c9e3d5588c9ac8264baa88 100644 --- a/src/Engine/Asset.cpp +++ b/src/Engine/Asset.cpp @@ -6,7 +6,7 @@ #include <map> #include <type_traits> -#include "fx-gltf/gltf.h" +#include "fx/gltf.h" //#pragma warning( push, 0 ) #define STB_IMAGE_IMPLEMENTATION diff --git a/src/Engine/Components/BoxCollider2D.cpp b/src/Engine/Components/BoxCollider2D.cpp index 198420bbb3a60a54dbe577344f5d0545cbfbe858..6db6eddd3e37dae717d01888bf8caf2e810a5188 100644 --- a/src/Engine/Components/BoxCollider2D.cpp +++ b/src/Engine/Components/BoxCollider2D.cpp @@ -1,6 +1,6 @@ #include "BoxCollider2D.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform2D.hpp" #include "../SceneObject.hpp" #include <cassert> diff --git a/src/Engine/Components/BoxCollider2D.hpp b/src/Engine/Components/BoxCollider2D.hpp index 10b8f4f7fc60037ca9bca292ae312add20f3575f..a1df5d949e0e867657471ad817d6722f584bff92 100644 --- a/src/Engine/Components/BoxCollider2D.hpp +++ b/src/Engine/Components/BoxCollider2D.hpp @@ -3,8 +3,8 @@ #include "Components.hpp" #include "../Enum.hpp" -#include "Math/Vector/Vector.hpp" -#include "Math/Matrix/Matrix.hpp" +#include "DMath/Vector/Vector.hpp" +#include "DMath/Matrix/Matrix.hpp" namespace Engine { diff --git a/src/Engine/Components/Camera.cpp b/src/Engine/Components/Camera.cpp index c91cac5999490904a555550d3306d9d508fb936b..5fe66c3ddf30721d9f04c078427070cc65371e50 100644 --- a/src/Engine/Components/Camera.cpp +++ b/src/Engine/Components/Camera.cpp @@ -1,6 +1,6 @@ #include "Camera.hpp" -#include "Math/LinearTransform3D.hpp" +#include "DMath/LinearTransform3D.hpp" #include "../Renderer/Renderer.hpp" diff --git a/src/Engine/Components/Camera.hpp b/src/Engine/Components/Camera.hpp index a586ba4eff5b635dcba68559cbbaf15b4d00f140..b462fbb05cb00d6c001510e27ebcc98eb204c9e5 100644 --- a/src/Engine/Components/Camera.hpp +++ b/src/Engine/Components/Camera.hpp @@ -2,7 +2,7 @@ #include "Components.hpp" -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" #include "../Renderer/Renderer.hpp" diff --git a/src/Engine/Components/CircleCollider2D.cpp b/src/Engine/Components/CircleCollider2D.cpp index 9fc845bc47004cec927a63a0198cd9e917274b4b..bf71334dbf9a55e58853696ae5d571e41908289d 100644 --- a/src/Engine/Components/CircleCollider2D.cpp +++ b/src/Engine/Components/CircleCollider2D.cpp @@ -1,6 +1,6 @@ #include "CircleCollider2D.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform2D.hpp" #include "../Scene.hpp" #include "../SceneObject.hpp" diff --git a/src/Engine/Components/CircleCollider2D.hpp b/src/Engine/Components/CircleCollider2D.hpp index f2d5c8b21ef5275f4dbb405cf1ea8256f8b4ec2c..05f33e616559d35ed05dbfb0d980102287b7b633 100644 --- a/src/Engine/Components/CircleCollider2D.hpp +++ b/src/Engine/Components/CircleCollider2D.hpp @@ -3,7 +3,7 @@ #include "Components.hpp" #include "../Enum.hpp" -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" namespace Engine { diff --git a/src/Engine/Components/MeshRenderer.cpp b/src/Engine/Components/MeshRenderer.cpp index 4dfe1eb056decd67794cb33fc21f7853357ff476..7f3f3d564b6ed4481d85e9d4ca8672935a0a7d58 100644 --- a/src/Engine/Components/MeshRenderer.cpp +++ b/src/Engine/Components/MeshRenderer.cpp @@ -6,7 +6,7 @@ #include "../Renderer/Renderer.hpp" -#include "Math/LinearTransform3D.hpp" +#include "DMath/LinearTransform3D.hpp" #include "../Scene.hpp" #include "../SceneObject.hpp" diff --git a/src/Engine/Components/MeshRenderer.hpp b/src/Engine/Components/MeshRenderer.hpp index 7dca22fe0a267db5554578da11a879d574771d1a..3842cb089d8d44eb646a2a9bf0fa957d017de551 100644 --- a/src/Engine/Components/MeshRenderer.hpp +++ b/src/Engine/Components/MeshRenderer.hpp @@ -6,9 +6,9 @@ #include "../Enum.hpp" -#include "Math/Vector/Vector.hpp" -#include "Math/UnitQuaternion.hpp" -#include "Math/Matrix/Matrix.hpp" +#include "DMath/Vector/Vector.hpp" +#include "DMath/UnitQuaternion.hpp" +#include "DMath/Matrix/Matrix.hpp" namespace Engine { diff --git a/src/Engine/Components/RigidBody2D.hpp b/src/Engine/Components/RigidBody2D.hpp index 75cbe8922c535791e391b86e81118e7f05697ddf..fc93d02248898512a03b3459c78ccd68318e1ed7 100644 --- a/src/Engine/Components/RigidBody2D.hpp +++ b/src/Engine/Components/RigidBody2D.hpp @@ -2,7 +2,7 @@ #include "Components.hpp" -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" namespace Engine { diff --git a/src/Engine/Components/SpriteRenderer.cpp b/src/Engine/Components/SpriteRenderer.cpp index e72756c3b7ccd2c834b6c0a1ba3c2b89ac71cd2f..139895d184295471b7b28d2284eaf7c31e77587f 100644 --- a/src/Engine/Components/SpriteRenderer.cpp +++ b/src/Engine/Components/SpriteRenderer.cpp @@ -6,7 +6,7 @@ #include "../Scene.hpp" #include "../SceneObject.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform2D.hpp" namespace Engine { diff --git a/src/Engine/Components/SpriteRenderer.hpp b/src/Engine/Components/SpriteRenderer.hpp index ec8b9d80663fa44f035cb2171c4ac9dd66e860a5..130f984ca322b202b8d7296f4e1555bac5933c8f 100644 --- a/src/Engine/Components/SpriteRenderer.hpp +++ b/src/Engine/Components/SpriteRenderer.hpp @@ -4,8 +4,8 @@ #include "../Asset.hpp" -#include "Math/Vector/Vector.hpp" -#include "Math/Matrix/Matrix.hpp" +#include "DMath/Vector/Vector.hpp" +#include "DMath/Matrix/Matrix.hpp" #include "../Enum.hpp" diff --git a/src/Engine/Engine.cpp b/src/Engine/Engine.cpp index 9c3c19d9cfeb5065be710828c8810cbfd05f9c80..59eafd049953ad7862d7121fb978157a1a2249d4 100644 --- a/src/Engine/Engine.cpp +++ b/src/Engine/Engine.cpp @@ -16,7 +16,7 @@ #include "Systems/RenderSystem.hpp" -#include "Math/LinearTransform3D.hpp" +#include "DMath/LinearTransform3D.hpp" #include "Components/ScriptBase.hpp" diff --git a/src/Engine/Input/InputRaw.cpp b/src/Engine/Input/InputRaw.cpp index 7cd2dc2e5e411388b0983c9ba0e83011184ffd08..42350f66fc42dca3585f00ccdf41d1eb7684186b 100644 --- a/src/Engine/Input/InputRaw.cpp +++ b/src/Engine/Input/InputRaw.cpp @@ -1,6 +1,6 @@ #define INPUT_BUTTON_COUNT #include "InputRaw.hpp" -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" #include <array> #include <memory> diff --git a/src/Engine/Input/InputRaw.hpp b/src/Engine/Input/InputRaw.hpp index 4d9b8e0edc6ecbfefff8c3c7911f11d43793b39e..f2ad433ed0805491f5d78d18a3f868bffe99779b 100644 --- a/src/Engine/Input/InputRaw.hpp +++ b/src/Engine/Input/InputRaw.hpp @@ -1,6 +1,6 @@ #pragma once -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" #include <cstdint> diff --git a/src/Engine/Physics2D.cpp b/src/Engine/Physics2D.cpp index 30f924c01a4fe9509410441e1b15242d625286ff..3189c4144896bb088fa28ea2123e00468aeab527 100644 --- a/src/Engine/Physics2D.cpp +++ b/src/Engine/Physics2D.cpp @@ -7,7 +7,7 @@ #include "Components/RigidBody2D.hpp" #include "Time/Time.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform2D.hpp" #include <vector> #include <memory> diff --git a/src/Engine/Physics2D.hpp b/src/Engine/Physics2D.hpp index 0af92f2310085df7de8dd5127b3c517b8d3c6a44..adc6c8d654e9bdd1d8fbb24fee674160cf5c6b00 100644 --- a/src/Engine/Physics2D.hpp +++ b/src/Engine/Physics2D.hpp @@ -1,6 +1,6 @@ #pragma once -#include "Math/Vector/Vector.hpp" +#include "DMath/Vector/Vector.hpp" namespace Engine { diff --git a/src/Engine/Renderer/Renderer.cpp b/src/Engine/Renderer/Renderer.cpp index e6e6522ded7529cea299d5ba4273573a92dc13c9..50fde5749281aa8601f0bb3dbadd040dfe8d5c9c 100644 --- a/src/Engine/Renderer/Renderer.cpp +++ b/src/Engine/Renderer/Renderer.cpp @@ -6,7 +6,7 @@ #include "../Components/MeshRenderer.hpp" #include "../Components/Camera.hpp" -#include "Math/LinearTransform3D.hpp" +#include "DMath/LinearTransform3D.hpp" #include <functional> #include <iostream> diff --git a/src/Engine/Renderer/Renderer.hpp b/src/Engine/Renderer/Renderer.hpp index e2185bccadccab0bc4deb3e4e55800d793954719..ad5a549b7e1cc9d0c8f10c352e5c132807d28bbc 100644 --- a/src/Engine/Renderer/Renderer.hpp +++ b/src/Engine/Renderer/Renderer.hpp @@ -7,8 +7,8 @@ #include "../Utility/ImgDim.hpp" #include "../Utility/Color.hpp" -#include "Math/Vector/Vector.hpp" -#include "Math/UnitQuaternion.hpp" +#include "DMath/Vector/Vector.hpp" +#include "DMath/UnitQuaternion.hpp" #include <memory> #include <vector> diff --git a/src/Engine/SceneObject.cpp b/src/Engine/SceneObject.cpp index f86f79b99282e29238e103d919b75a6806d42985..44a7d6bb825226b8b9a475b61d3f084431d1bd04 100644 --- a/src/Engine/SceneObject.cpp +++ b/src/Engine/SceneObject.cpp @@ -4,7 +4,7 @@ #include "Scene.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform2D.hpp" Engine::SceneObject::SceneObject(Scene& owningScene, size_t indexInScene) : transform(*this), diff --git a/src/Engine/Transform.cpp b/src/Engine/Transform.cpp index 5ff8ed92427d2bf9d9902ef0db3dec06f572fde5..e96720b96afb5e0c92992838a5b97c9095432431 100644 --- a/src/Engine/Transform.cpp +++ b/src/Engine/Transform.cpp @@ -1,7 +1,7 @@ #include "Transform.hpp" -#include "Math/LinearTransform3D.hpp" -#include "Math/LinearTransform2D.hpp" +#include "DMath/LinearTransform3D.hpp" +#include "DMath/LinearTransform2D.hpp" #include "Scene.hpp" #include "SceneObject.hpp" diff --git a/src/Engine/Transform.hpp b/src/Engine/Transform.hpp index fac956b2e94ddf294d312ccd1f468446f26d4dd4..da161771024edb9c0f5c262116af225c18a3f7da 100644 --- a/src/Engine/Transform.hpp +++ b/src/Engine/Transform.hpp @@ -1,8 +1,8 @@ #pragma once -#include "Math/Vector/Vector.hpp" -#include "Math/Matrix/Matrix.hpp" -#include "Math/UnitQuaternion.hpp" +#include "DMath/Vector/Vector.hpp" +#include "DMath/Matrix/Matrix.hpp" +#include "DMath/UnitQuaternion.hpp" #include "Enum.hpp"