Fixing Math includes

This commit is contained in:
Thorben Höhne 2025-02-19 12:17:08 +01:00
parent d6362a62df
commit 1fbbdf5f0a
57 changed files with 240 additions and 312 deletions

View File

@ -101,5 +101,5 @@
"P_LINUX_BUILD",
"__SSE__",
],
"cmake.sourceDirectory": "/home/morthaine/Development/PhanesEngine/DevPlayground",
"C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools",
}

28
.vscode/tasks.json vendored Normal file
View File

@ -0,0 +1,28 @@
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ build active file",
"command": "/sbin/g++",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
}
],
"version": "2.0.0"
}

View File

@ -1,18 +0,0 @@
cmake_minimum_required(VERSION 3.15...3.30)
project(DevPlayground)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Engine/Source/Runtime ${CMAKE_BINARY_DIR}/Engine)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}../Engine/Source/Runtime)
add_executable(DevPlayground
DevPlayground.cpp
)
add_compile_definitions(P_LINUX_BUILD)
add_compile_definitions(P_DEBUG)
target_link_libraries(DevPlayground PRIVATE PhanesCore)

View File

@ -1,5 +0,0 @@
cmake_minimum_required(VERSION 3.15...3.30)
project(PhanesRuntime)
add_subdirectory(Core)

View File

@ -1,29 +0,0 @@
cmake_minimum_required(VERSION 3.15...3.30)
project(PhanesCore)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
include(Logging/CMakeLists.txt)
include(StartingPoint/CMakeLists.txt)
add_library(PhanesCore STATIC
Core.h
${Logging}
${StartingPoint}
)
target_precompile_headers(PhanesCore PUBLIC
${LoggingPCH}
${StartingPointPCH}
)
add_compile_definitions(P_LINUX_BUILD)
add_compile_definitions(P_DEBUG)
# fmt for spdlog. It uses the external module which needs to be linked manually
find_package(fmt)
target_link_libraries(PhanesCore fmt::fmt)
target_include_directories(PhanesCore PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../)

View File

@ -38,6 +38,8 @@
#endif
#define FORCEINLINE __attribute__((always_inline))
#elif defined(P_ARM_BUILD)
#error Only Windows is supported at the moment.

View File

@ -1,12 +0,0 @@
cmake_minimum_required(VERSION 3.15...3.30)
project(PhanesLogging)
set(Logging
Logging/Logging.h
Logging/private/Logging.cpp
)
set(LoggingPCH
Logging/LoggingPCH.h
)

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,7 +1,7 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathCommon.hpp"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,7 +1,7 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathCommon.hpp"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,8 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include <iostream>
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::Detail
{

View File

@ -4,36 +4,36 @@
#pragma warning(disable : 4244)
#endif
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathFwd.h"
// --- Vectors ------------------------
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/public/Math/Vector4.hpp"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#include "Core/Math/Vector4.hpp"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/public/Math/IntVector3.hpp"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/IntVector2.hpp"
#include "Core/Math/IntVector3.hpp"
#include "Core/Math/IntVector4.hpp"
#include "Core/public/Math/Point.hpp"
#include "Core/public/Math/IntPoint.hpp"
#include "Core/Math/Point.hpp"
#include "Core/Math/IntPoint.hpp"
// --- Matrices ------------------------
#include "Core/public/Math/Matrix2.hpp"
#include "Core/public/Math/Matrix3.hpp"
#include "Core/public/Math/Matrix4.hpp"
#include "Core/Math/Matrix2.hpp"
#include "Core/Math/Matrix3.hpp"
#include "Core/Math/Matrix4.hpp"
// --- Other Math ----------------------
#include "Core/public/Math/Plane.hpp"
#include "Core/public/Math/Line.hpp"
#include "Core/Math/Plane.hpp"
#include "Core/Math/Line.hpp"
// --- Misc -----------------
#include "Core/public/Math/MathTypeConversion.hpp"
#include "Core/public/Math/MathUnitConversion.hpp"
#include "Core/Math/MathTypeConversion.hpp"
#include "Core/Math/MathUnitConversion.hpp"

View File

@ -1,14 +1,14 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathAbstractTypes.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathAbstractTypes.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/public/Math/IntVector3.hpp"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/IntVector2.hpp"
#include "Core/Math/IntVector3.hpp"
#include "Core/Math/IntVector4.hpp"
#ifndef P_DEBUG
#pragma warning(disable : 4244)

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/Math/SIMD/Storage.h"
#ifndef P_DEBUG
#pragma warning(disable : 4244)
@ -627,4 +627,4 @@ namespace Phanes::Core::Math {
#endif // !INTVECTOR2_H
#include "Core/public/Math/IntVector2.inl"
#include "Core/Math/IntVector2.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/IntVector2Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/IntVector2Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math
{

View File

@ -1,13 +1,13 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/Math/SIMD/Storage.h"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/IntVector4.hpp"
#ifndef P_DEBUG
#pragma warning(disable : 4244)
@ -686,4 +686,4 @@ namespace Phanes::Core::Math {
#endif // !INTVECTOR3_H
#include "Core/public/Math/IntVector3.inl"
#include "Core/Math/IntVector3.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/IntVector3Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/IntVector3Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math

View File

@ -1,13 +1,13 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/Math/SIMD/Storage.h"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/Math/IntVector2.hpp"
#ifndef P_DEBUG
#pragma warning(disable : 4244)
@ -640,4 +640,4 @@ namespace Phanes::Core::Math {
#endif // !INTVECTOR3_H
#include "Core/public/Math/IntVector4.inl"
#include "Core/Math/IntVector4.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/IntVector4Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/IntVector4Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math
{

View File

@ -1,12 +1,10 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Vector3.hpp"
#include <any>
#include "Core/Math/Vector3.hpp"
namespace Phanes::Core::Math

View File

@ -126,35 +126,11 @@ namespace Phanes::Core::Math {
template<typename T>
FORCEINLINE T Abs(T s)
inline T Abs(T s)
{
return abs(s);
}
template<>
FORCEINLINE float Abs<float>(float s)
{
return (float)fabs(s);
};
template<>
FORCEINLINE long long Abs<long long>(long long s)
{
return llabs(s);
};
template<>
FORCEINLINE long Abs<long>(long s)
{
return labs(s);
};
template<>
FORCEINLINE double Abs<double>(double s)
{
return fabsl(s);
};
} // phanes

View File

@ -9,8 +9,8 @@
#ifndef MATH_FWD_H
#define MATH_FWD_H
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
/**
* Includes forward declarations, as well as certain useful typedefs.

View File

@ -3,25 +3,25 @@
#pragma once
#include "Core/public/Math/Point.hpp"
#include "Core/public/Math/Plane.hpp"
#include "Core/public/Math/Line.hpp"
#include "Core/public/Math/Ray.hpp"
#include "Core/Math/Point.hpp"
#include "Core/Math/Plane.hpp"
#include "Core/Math/Line.hpp"
#include "Core/Math/Ray.hpp"
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/public/Math/Vector4.hpp"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#include "Core/Math/Vector4.hpp"
#include "Core/public/Math/IntPoint.hpp"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/public/Math/IntVector3.hpp"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/IntPoint.hpp"
#include "Core/Math/IntVector2.hpp"
#include "Core/Math/IntVector3.hpp"
#include "Core/Math/IntVector4.hpp"
#include "Core/public/Math/Matrix2.hpp"
#include "Core/public/Math/Matrix3.hpp"
#include "Core/public/Math/Matrix4.hpp"
#include "Core/Math/Matrix2.hpp"
#include "Core/Math/Matrix3.hpp"
#include "Core/Math/Matrix4.hpp"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathTypeConversion.hpp"
#include "Core/public/Math/MathUnitConversion.hpp"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathTypeConversion.hpp"
#include "Core/Math/MathUnitConversion.hpp"

View File

@ -12,18 +12,18 @@
#include <string>
#endif
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathAbstractTypes.h"
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/public/Math/Vector4.hpp"
#include "Core/public/Math/Matrix2.hpp"
#include "Core/public/Math/Matrix3.hpp"
#include "Core/public/Math/Matrix4.hpp"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/public/Math/IntVector3.hpp"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/MathAbstractTypes.h"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#include "Core/Math/Vector4.hpp"
#include "Core/Math/Matrix2.hpp"
#include "Core/Math/Matrix3.hpp"
#include "Core/Math/Matrix4.hpp"
#include "Core/Math/IntVector2.hpp"
#include "Core/Math/IntVector3.hpp"
#include "Core/Math/IntVector4.hpp"
#ifndef MATH_TYPE_CONVERSION_H
#define MATH_TYPE_CONVERSION_H

View File

@ -4,9 +4,9 @@
// Contains functions to convert units //
// ======================================= //
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/Math/MathCommon.hpp"
namespace Phanes::Core::Math::UnitConversion
{
@ -14,7 +14,7 @@ namespace Phanes::Core::Math::UnitConversion
/**
* Converts degrees to radians.
*
* @param(deg) Angle in degress (°)
* @param(deg) Angle in degress (<EFBFBD>)
*
* @return Angle in radians
*/
@ -42,7 +42,7 @@ namespace Phanes::Core::Math::UnitConversion
/**
* Converts degrees to gradian.
*
* @param(deg) Angle in degress (°)
* @param(deg) Angle in degress (<EFBFBD>)
*
* @return Angle in gradian
*/

View File

@ -1,10 +1,10 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Vector2.hpp"
#include "Core/Math/Vector2.hpp"
#ifndef MATRIX2_H
#define MATRIX2_H
@ -355,4 +355,4 @@ namespace Phanes::Core::Math {
#endif // !MATRIX2_H
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/SIMD/SIMDIntrinsics.h"

View File

@ -1,10 +1,10 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathAbstractTypes.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/public/Math/Vector3.hpp"
#include "Core/Math/MathAbstractTypes.h"
#include "Core/Math/MathFwd.h"
#include "Core/Math/Vector3.hpp"
#ifndef MATRIX3_H
#define MATRIX3_H
@ -547,4 +547,4 @@ namespace Phanes::Core::Math {
#endif // !MATRIX3_H
#include "Core/public/Math/Matrix3.inl"
#include "Core/Math/Matrix3.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/Matrix3Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/Matrix3Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math
{

View File

@ -1,10 +1,10 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathAbstractTypes.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/public/Math/Vector4.hpp"
#include "Core/Math/MathAbstractTypes.h"
#include "Core/Math/MathFwd.h"
#include "Core/Math/Vector4.hpp"
#ifndef MATRIX4_H
#define MATRIX4_H
@ -331,4 +331,4 @@ namespace Phanes::Core::Math {
#endif // !MATRIX4_H
#include "Core/public/Math/Matrix4.inl"
#include "Core/Math/Matrix4.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/Matrix4Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/Matrix4Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math

View File

@ -3,12 +3,12 @@
// TODO: Transform
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Line.hpp"
#include "Core/public/Math/Ray.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/Math/Line.hpp"
#include "Core/Math/Ray.hpp"
#include "Core/Math/Vector3.hpp"
namespace Phanes::Core::Math {
@ -953,4 +953,4 @@ namespace Phanes::Core::Math {
} // Phanes::Core::Math
// Include operator impl.
#include "Core/public/Math/Plane.inl"
#include "Core/Math/Plane.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/PlaneDecl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/PlaneDecl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"

View File

@ -1,13 +1,13 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathAbstractTypes.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathAbstractTypes.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#ifndef P_DEBUG
#pragma warning(disable : 4244)

View File

@ -1,9 +1,9 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Vector3.hpp"
#include "Core/Math/Vector3.hpp"
namespace Phanes::Core::Math
{

View File

@ -1,6 +1,6 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
namespace Phanes::Core::Math::SIMD

View File

@ -4,8 +4,8 @@
//
// ARM is not supported.
#include "Core/public/Math/SIMD/Platform.h"
#include "Core/public/Math/MathTypes.h"
#include "Core/Math/SIMD/Platform.h"
#include "Core/Math/MathTypes.h"
#if P_INTRINSICS == P_INTRINSICS_AVX2
# include <immintrin.h>

View File

@ -2,23 +2,23 @@
#include <nmmintrin.h>
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/public/Math/Vector4.hpp"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#include "Core/Math/Vector4.hpp"
#include "Core/public/Math/Plane.hpp"
#include "Core/Math/Plane.hpp"
#include "Core/public/Math/IntVector2.hpp"
#include "Core/public/Math/IntVector3.hpp"
#include "Core/public/Math/IntVector4.hpp"
#include "Core/Math/IntVector2.hpp"
#include "Core/Math/IntVector3.hpp"
#include "Core/Math/IntVector4.hpp"
#include "Core/public/Math/Matrix3.hpp"
#include "Core/public/Math/Matrix4.hpp"
#include "Core/Math/Matrix3.hpp"
#include "Core/Math/Matrix4.hpp"

View File

@ -23,9 +23,9 @@
// User defines build platform
#ifdef P_WIN_BUILD
# define P_PLATFORM P_PLATFORM_WIN
# error Windows system is not yet supported.
#elif P_LINUX_BUILD
# define P_PLATFORM P_PLATFORM_LIN
# error Linux / Unix system is not yet supported.
#elif P_MAC_BUILD
# define P_PLATFORM P_PLATFORM_MAC
# error Mac target system is not yet supported.
@ -142,7 +142,6 @@
// Clang
#elif (defined(__clang__))
# error PhanesEngine only supports MSVC -> Visual Studio
# if defined(__apple_build_version__)
#
# if (__clang_major__ < 6)

View File

@ -1,15 +1,15 @@
#pragma once
#include "Core/public/Math/SIMD/Platform.h"
#include "Core/Math/SIMD/Platform.h"
#if P_INTRINSICS == P_INTRINSICS_AVX2
# include "PhanesVectorMathAVX2.hpp"
# include "Core/Math/SIMD/PhanesVectorMathAVX2.hpp"
#elif P_INTRINSICS == P_INTRINSICS_AVX
# include "PhanesVectorMathAVX.hpp"
# include "Core/Math/SIMD/PhanesVectorMathAVX.hpp"
#elif P_INTRINSICS == P_INTRINSICS_SSE
# include "PhanesVectorMathSSE.hpp"
# include "Core/Math/SIMD/PhanesVectorMathSSE.hpp"
#elif P_INTRINSICS == P_INTRINSICS_NEON
# include "PhanesVectorMathNeon.hpp"
# include "Core/Math/SIMD/PhanesVectorMathNeon.hpp"
#endif

View File

@ -1,9 +1,9 @@
// Defines on compile time, whether a xmm register or an array should be used.
#pragma once
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/public/Math/MathTypes.h"
#include "Core/Math/MathTypes.h"
namespace Phanes::Core::Math::SIMD
{

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/Math/SIMD/Storage.h"
#ifndef P_DEBUG
#pragma warning(disable : 4244)
@ -1016,4 +1016,4 @@ namespace Phanes::Core::Math {
#endif // !VECTOR2_H
// Include operator impl.
#include "Core/public/Math/Vector2.inl"
#include "Core/Math/Vector2.inl"

View File

@ -4,12 +4,12 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/Vector2Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/Vector2Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"

View File

@ -3,13 +3,13 @@
// TODO: Slerp (using Quaternions)
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/MathFwd.h"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/MathFwd.h"
#include "Core/Math/SIMD/Storage.h"
#include "Core/public/Math/Vector4.hpp"
#include "Core/Math/Vector4.hpp"
#ifndef P_DEBUG
#pragma warning(disable : 4244)
@ -1179,4 +1179,4 @@ namespace Phanes::Core::Math {
#endif // !VECTOR3_H
#include "Core/public/Math/Vector3.inl"
#include "Core/Math/Vector3.inl"

View File

@ -1,11 +1,11 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/Vector3Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/Vector3Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"

View File

@ -1,14 +1,14 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/public/Math/MathCommon.hpp"
#include "Core/public/Math/SIMD/Storage.h"
#include "Core/public/Math/MathFwd.h"
#include "Core/Math/Boilerplate.h"
#include "Core/Math/MathCommon.hpp"
#include "Core/Math/SIMD/Storage.h"
#include "Core/Math/MathFwd.h"
#include "Core/public/Math/Vector2.hpp"
#include "Core/public/Math/Vector3.hpp"
#include "Core/Math/Vector2.hpp"
#include "Core/Math/Vector3.hpp"
#define PZeroVector4(type, aligned) Phanes::Core::Math::TVector4<##type, ##aligned>(0,0,0,0)
@ -864,4 +864,4 @@ namespace Phanes::Core::Math
}
#include "Core/public/Math/Vector4.inl"
#include "Core/Math/Vector4.inl"

View File

@ -1,12 +1,12 @@
#pragma once
#include "Core/public/Math/Boilerplate.h"
#include "Core/Math/Boilerplate.h"
#include "Core/public/Math/Detail/Vector4Decl.inl"
#include "Core/public/Math/SIMD/SIMDIntrinsics.h"
#include "Core/Math/Detail/Vector4Decl.inl"
#include "Core/Math/SIMD/SIMDIntrinsics.h"
#include "Core/public/Math/SIMD/PhanesSIMDTypes.h"
#include "Core/Math/SIMD/PhanesSIMDTypes.h"
namespace Phanes::Core::Math
{

View File

@ -1,13 +0,0 @@
cmake_minimum_required(VERSION 3.15...3.30)
project(StartingPoint)
set(StartingPoint
StartingPoint/EntryPoint.h
StartingPoint/StartingPoint.h
StartingPoint/private/StartingPoint.cpp
)
set(StartingPointPCH
StartingPoint/StartingPointPCH.h
)

View File

@ -24,8 +24,6 @@ static void IdleMsg()
}
Phanes::Core::Application::PhanesProject::PhanesProject(std::string _ProjectName)
: projectName(_ProjectName)
{

View File

@ -2,6 +2,5 @@
// --- Core -------------------
#include "PhanesEnginePCH.h"
#include "Core/Include.h"

12
MathTestFPU/main.cpp Normal file
View File

@ -0,0 +1,12 @@
#include <iostream>
#include "Core/Math/Include.h"
int main(int argc, char **argv) {
Phanes::Core::Math::Vector3 v1(1.0f, 2.0f, 3.0f);
Phanes::Core::Math::Vector3 v2(1.0f, 2.0f, 3.0f);
Phanes::Core::Math::Vector3 v3 = v1 + v2;
std::cout << "v3: " << Phanes::Core::Math::ToString(v3) << std::endl;
}

View File

@ -1,7 +0,0 @@
//
// pch.cpp
//
#pragma once
#include "pch.h"

2
premake5.lua Normal file
View File

@ -0,0 +1,2 @@
workspace "PhanesEngine"
configurations { "Debug", "Release" }