diff --git a/.idea/vcs.xml b/.idea/vcs.xml index adc159a8..013b5d8f 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -3,5 +3,6 @@ + \ No newline at end of file diff --git a/include/omath/3d_primitives/box.hpp b/include/omath/3d_primitives/box.hpp index 49cc4751..3abb9a44 100644 --- a/include/omath/3d_primitives/box.hpp +++ b/include/omath/3d_primitives/box.hpp @@ -3,10 +3,9 @@ // #pragma once -#include +#include "omath/linear_algebra/vector3.hpp" #include "omath/triangle.hpp" -#include "omath/vector3.hpp" - +#include namespace omath::primitives { diff --git a/include/omath/3d_primitives/plane.hpp b/include/omath/3d_primitives/plane.hpp index 62ff9939..39c0f2c4 100644 --- a/include/omath/3d_primitives/plane.hpp +++ b/include/omath/3d_primitives/plane.hpp @@ -3,8 +3,8 @@ // #pragma once +#include "omath/linear_algebra/vector3.hpp" #include "omath/triangle.hpp" -#include "omath/vector3.hpp" #include namespace omath::primitives diff --git a/include/omath/collision/line_tracer.hpp b/include/omath/collision/line_tracer.hpp index a79a3cf5..f2c16275 100644 --- a/include/omath/collision/line_tracer.hpp +++ b/include/omath/collision/line_tracer.hpp @@ -3,8 +3,8 @@ // #pragma once +#include "omath/linear_algebra/vector3.hpp" #include "omath/triangle.hpp" -#include "omath/vector3.hpp" namespace omath::collision { diff --git a/include/omath/color.hpp b/include/omath/color.hpp index ba28d084..69e554fc 100644 --- a/include/omath/color.hpp +++ b/include/omath/color.hpp @@ -4,8 +4,7 @@ #pragma once -#include "omath/vector3.hpp" -#include "omath/vector4.hpp" +#include "linear_algebra/vector4.hpp" #include namespace omath diff --git a/include/omath/engines/iw_engine/constants.hpp b/include/omath/engines/iw_engine/constants.hpp index 48e29c19..63d1177d 100644 --- a/include/omath/engines/iw_engine/constants.hpp +++ b/include/omath/engines/iw_engine/constants.hpp @@ -3,9 +3,9 @@ // #pragma once +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include -#include #include namespace omath::iw_engine diff --git a/include/omath/engines/opengl_engine/constants.hpp b/include/omath/engines/opengl_engine/constants.hpp index ff62f46e..4f5a955a 100644 --- a/include/omath/engines/opengl_engine/constants.hpp +++ b/include/omath/engines/opengl_engine/constants.hpp @@ -3,9 +3,9 @@ // #pragma once +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include -#include #include namespace omath::opengl_engine diff --git a/include/omath/engines/source_engine/constants.hpp b/include/omath/engines/source_engine/constants.hpp index e081df50..33df18ba 100644 --- a/include/omath/engines/source_engine/constants.hpp +++ b/include/omath/engines/source_engine/constants.hpp @@ -3,9 +3,9 @@ // #pragma once +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include -#include #include namespace omath::source_engine diff --git a/include/omath/engines/unity_engine/constants.hpp b/include/omath/engines/unity_engine/constants.hpp index d1308efe..81151bc6 100644 --- a/include/omath/engines/unity_engine/constants.hpp +++ b/include/omath/engines/unity_engine/constants.hpp @@ -4,9 +4,9 @@ #pragma once +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include -#include #include namespace omath::unity_engine diff --git a/include/omath/engines/unreal_engine/constants.hpp b/include/omath/engines/unreal_engine/constants.hpp index 16f93f73..e2e0eb7e 100644 --- a/include/omath/engines/unreal_engine/constants.hpp +++ b/include/omath/engines/unreal_engine/constants.hpp @@ -4,9 +4,9 @@ #pragma once +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include -#include #include namespace omath::unreal_engine diff --git a/include/omath/mat.hpp b/include/omath/linear_algebra/mat.hpp similarity index 99% rename from include/omath/mat.hpp rename to include/omath/linear_algebra/mat.hpp index 1f1f0864..95276dcc 100644 --- a/include/omath/mat.hpp +++ b/include/omath/linear_algebra/mat.hpp @@ -2,7 +2,7 @@ // Created by vlad on 9/29/2024. // #pragma once -#include "omath/vector3.hpp" +#include "vector3.hpp" #include #include #include diff --git a/include/omath/matrix.hpp b/include/omath/linear_algebra/matrix.hpp similarity index 77% rename from include/omath/matrix.hpp rename to include/omath/linear_algebra/matrix.hpp index a8dc520f..32e9a87f 100644 --- a/include/omath/matrix.hpp +++ b/include/omath/linear_algebra/matrix.hpp @@ -1,7 +1,22 @@ #pragma once -#ifdef OMATH_ENABLE_LEGACY +/* +THIS CODE IS DEPRECATED NEVER EVER USE Matrix CLASS +AND VERY SLOW USE Mat INSTEAD!!!!!!!!!!! +⠛⠛⣿⣿⣿⣿⣿⡷⢶⣦⣶⣶⣤⣤⣤⣀⠀⠀⠀ +⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀⠀ +⠀⠀⠀⠉⠉⠉⠙⠻⣿⣿⠿⠿⠛⠛⠛⠻⣿⣿⣇⠀ +⠀⠀⢤⣀⣀⣀⠀⠀⢸⣷⡄⠀⣁⣀⣤⣴⣿⣿⣿⣆ +⠀⠀⠀⠀⠹⠏⠀⠀⠀⣿⣧⠀⠹⣿⣿⣿⣿⣿⡿⣿ +⠀⠀⠀⠀⠀⠀⠀⠀⠀⠛⠿⠇⢀⣼⣿⣿⠛⢯⡿⡟ +⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠦⠴⢿⢿⣿⡿⠷⠀⣿⠀ +⠀⠀⠀⠀⠀⠀⠀⠙⣷⣶⣶⣤⣤⣤⣤⣤⣶⣦⠃⠀ +⠀⠀⠀⠀⠀⠀⠀⢐⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀ +⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀ +⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⢿⣿⣿⣿⣿⠟⠁ +*/ +#ifdef OMATH_ENABLE_LEGACY #include "omath/vector3.hpp" #include #include diff --git a/include/omath/vector2.hpp b/include/omath/linear_algebra/vector2.hpp similarity index 100% rename from include/omath/vector2.hpp rename to include/omath/linear_algebra/vector2.hpp diff --git a/include/omath/vector3.hpp b/include/omath/linear_algebra/vector3.hpp similarity index 99% rename from include/omath/vector3.hpp rename to include/omath/linear_algebra/vector3.hpp index 3c37b877..e5f4fdaf 100644 --- a/include/omath/vector3.hpp +++ b/include/omath/linear_algebra/vector3.hpp @@ -5,7 +5,7 @@ #pragma once #include "omath/angle.hpp" -#include "omath/vector2.hpp" +#include "omath/linear_algebra/vector2.hpp" #include #include #include diff --git a/include/omath/vector4.hpp b/include/omath/linear_algebra/vector4.hpp similarity index 99% rename from include/omath/vector4.hpp rename to include/omath/linear_algebra/vector4.hpp index 2b5d8a02..95c095f6 100644 --- a/include/omath/vector4.hpp +++ b/include/omath/linear_algebra/vector4.hpp @@ -4,7 +4,7 @@ #pragma once #include -#include +#include "omath/linear_algebra/vector3.hpp" namespace omath { diff --git a/include/omath/omath.hpp b/include/omath/omath.hpp index 84e40056..2276798b 100644 --- a/include/omath/omath.hpp +++ b/include/omath/omath.hpp @@ -10,13 +10,13 @@ #include "omath/angle.hpp" // Vector classes (in dependency order) -#include "omath/vector2.hpp" -#include "omath/vector3.hpp" -#include "omath/vector4.hpp" +#include "linear_algebra/vector2.hpp" +#include "linear_algebra/vector4.hpp" +#include "omath/linear_algebra/vector3.hpp" // Matrix classes -#include "omath/mat.hpp" -#include "omath/matrix.hpp" +#include "linear_algebra/matrix.hpp" +#include "omath/linear_algebra/mat.hpp" // Color functionality #include "omath/color.hpp" diff --git a/include/omath/pathfinding/a_star.hpp b/include/omath/pathfinding/a_star.hpp index d894e761..218a059c 100644 --- a/include/omath/pathfinding/a_star.hpp +++ b/include/omath/pathfinding/a_star.hpp @@ -3,8 +3,8 @@ // #pragma once +#include "omath/linear_algebra/vector3.hpp" #include "omath/pathfinding/navigation_mesh.hpp" -#include "omath/vector3.hpp" #include namespace omath::pathfinding diff --git a/include/omath/pathfinding/navigation_mesh.hpp b/include/omath/pathfinding/navigation_mesh.hpp index 75ba634d..35cc6e6b 100644 --- a/include/omath/pathfinding/navigation_mesh.hpp +++ b/include/omath/pathfinding/navigation_mesh.hpp @@ -4,7 +4,7 @@ #pragma once -#include "omath/vector3.hpp" +#include "omath/linear_algebra/vector3.hpp" #include #include #include diff --git a/include/omath/projectile_prediction/proj_pred_engine.hpp b/include/omath/projectile_prediction/proj_pred_engine.hpp index 5117c8be..bbd5a546 100644 --- a/include/omath/projectile_prediction/proj_pred_engine.hpp +++ b/include/omath/projectile_prediction/proj_pred_engine.hpp @@ -2,9 +2,9 @@ // Created by Vlad on 2/23/2025. // #pragma once +#include "omath/linear_algebra/vector3.hpp" #include "omath/projectile_prediction/projectile.hpp" #include "omath/projectile_prediction/target.hpp" -#include "omath/vector3.hpp" namespace omath::projectile_prediction { diff --git a/include/omath/projectile_prediction/proj_pred_engine_legacy.hpp b/include/omath/projectile_prediction/proj_pred_engine_legacy.hpp index fed63063..231db3b7 100644 --- a/include/omath/projectile_prediction/proj_pred_engine_legacy.hpp +++ b/include/omath/projectile_prediction/proj_pred_engine_legacy.hpp @@ -4,11 +4,11 @@ #pragma once +#include "omath/linear_algebra/vector3.hpp" #include "omath/engines/source_engine/traits/pred_engine_trait.hpp" #include "omath/projectile_prediction/proj_pred_engine.hpp" #include "omath/projectile_prediction/projectile.hpp" #include "omath/projectile_prediction/target.hpp" -#include "omath/vector3.hpp" #include namespace omath::projectile_prediction diff --git a/include/omath/projectile_prediction/projectile.hpp b/include/omath/projectile_prediction/projectile.hpp index b772712b..c4560ed4 100644 --- a/include/omath/projectile_prediction/projectile.hpp +++ b/include/omath/projectile_prediction/projectile.hpp @@ -3,7 +3,7 @@ // #pragma once -#include "omath/vector3.hpp" +#include "omath/linear_algebra/vector3.hpp" namespace omath::projectile_prediction { diff --git a/include/omath/projectile_prediction/target.hpp b/include/omath/projectile_prediction/target.hpp index 5b1b0f8f..5b3f5db2 100644 --- a/include/omath/projectile_prediction/target.hpp +++ b/include/omath/projectile_prediction/target.hpp @@ -3,7 +3,7 @@ // #pragma once -#include "omath/vector3.hpp" +#include "omath/linear_algebra/vector3.hpp" namespace omath::projectile_prediction { diff --git a/include/omath/projection/camera.hpp b/include/omath/projection/camera.hpp index b02ccdb7..be44e8e8 100644 --- a/include/omath/projection/camera.hpp +++ b/include/omath/projection/camera.hpp @@ -5,10 +5,10 @@ #pragma once #include "omath/projection/error_codes.hpp" +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include #include -#include -#include #include namespace omath::projection diff --git a/include/omath/triangle.hpp b/include/omath/triangle.hpp index e15151b0..519c48cb 100644 --- a/include/omath/triangle.hpp +++ b/include/omath/triangle.hpp @@ -2,7 +2,7 @@ // Created by Orange on 11/13/2024. // #pragma once -#include "omath/vector3.hpp" +#include "linear_algebra/vector3.hpp" namespace omath { diff --git a/tests/general/unit_test_line_trace.cpp b/tests/general/unit_test_line_trace.cpp index 89167bda..31cb6a79 100644 --- a/tests/general/unit_test_line_trace.cpp +++ b/tests/general/unit_test_line_trace.cpp @@ -2,10 +2,10 @@ // Revised unit‑test suite for LineTracer (segment‑based Möller–Trumbore) // Pure ASCII: avoids non‑standard characters that MSVC rejects. // -#include "gtest/gtest.h" +#include "omath/linear_algebra/vector3.hpp" #include "omath/collision/line_tracer.hpp" #include "omath/triangle.hpp" -#include "omath/vector3.hpp" +#include "gtest/gtest.h" #include using namespace omath; diff --git a/tests/general/unit_test_mat.cpp b/tests/general/unit_test_mat.cpp index 3c678828..3cbf3de4 100644 --- a/tests/general/unit_test_mat.cpp +++ b/tests/general/unit_test_mat.cpp @@ -1,7 +1,7 @@ // UnitTestMat.cpp +#include "omath/linear_algebra/mat.hpp" +#include "omath/linear_algebra/vector3.hpp" #include -#include "omath/mat.hpp" -#include "omath/vector3.hpp" using namespace omath; diff --git a/tests/general/unit_test_triangle.cpp b/tests/general/unit_test_triangle.cpp index 28d84120..643ecdc2 100644 --- a/tests/general/unit_test_triangle.cpp +++ b/tests/general/unit_test_triangle.cpp @@ -1,11 +1,10 @@ // // Created by Orange on 1/6/2025. // +#include "omath/triangle.hpp" +#include "omath/linear_algebra/vector3.hpp" #include // For std::sqrt, std::isinf, std::isnan #include -#include -#include "omath/triangle.hpp" - using namespace omath; diff --git a/tests/general/unit_test_vector2.cpp b/tests/general/unit_test_vector2.cpp index b24bceaa..a8f641d7 100644 --- a/tests/general/unit_test_vector2.cpp +++ b/tests/general/unit_test_vector2.cpp @@ -2,10 +2,10 @@ // Created by Vlad on 02.09.2024. // +#include #include // For FLT_MAX and FLT_MIN #include // For std::isinf and std::isnan #include -#include using namespace omath; diff --git a/tests/general/unit_test_vector3.cpp b/tests/general/unit_test_vector3.cpp index 66e1a60f..f5cc9fb3 100644 --- a/tests/general/unit_test_vector3.cpp +++ b/tests/general/unit_test_vector3.cpp @@ -2,11 +2,11 @@ // Created by Vlad on 01.09.2024. // +#include #include // For FLT_MAX, FLT_MIN #include #include #include // For std::numeric_limits -#include using namespace omath; diff --git a/tests/general/unit_test_vector4.cpp b/tests/general/unit_test_vector4.cpp index 6071a2c2..d274f7a5 100644 --- a/tests/general/unit_test_vector4.cpp +++ b/tests/general/unit_test_vector4.cpp @@ -5,9 +5,9 @@ // Vector4Test.cpp // +#include #include #include // For std::numeric_limits -#include using namespace omath;