diff --git a/Dependencies.bat b/Dependencies.bat
index bbce926b..ecbd80b3 100644
--- a/Dependencies.bat
+++ b/Dependencies.bat
@@ -17,10 +17,11 @@ echo "J - imnodes"
echo "K - tracy"
echo "L - RTTR"
echo "M - yamlcpp"
+echo "N - dotnet"
echo ---------------------------------------------------
echo.
-choice /C ABCDEFGHIJKLM /T 10 /D A
+choice /C ABCDEFGHIJKLMN /T 10 /D A
set _e=%ERRORLEVEL%
if %_e%==1 goto VMA
@@ -36,6 +37,7 @@ if %_e%==10 goto imnodes
if %_e%==11 goto tracy
if %_e%==12 goto RTTR
if %_e%==13 goto yamlcpp
+if %_e%==14 goto dotnet
:VMA
echo -----------------------VMA----------------------------
@@ -107,6 +109,20 @@ if %_e%==12 (goto :done) else (goto :yamlcpp)
echo -----------------------yamlcpp----------------------------
rmdir "Dependencies/yamlcpp" /S /Q
git clone https://github.com/SHADE-DP/yaml-cpp.git "Dependencies/yamlcpp"
+if %_e%==13 (goto :done) else (goto :dotnet)
+
+:dotnet
+echo -----------------------dotnet----------------------------
+rmdir "Dependencies/dotnet" /S /Q
+mkdir "Dependencies/dotnet/include"
+mkdir "Dependencies/dotnet/bin"
+powershell -Command "& {wget https://raw.githubusercontent.com/dotnet/runtime/main/src/coreclr/hosts/inc/coreclrhost.h -OutFile "Dependencies/dotnet/include/coreclrhost.h"}"
+powershell -Command "& {wget https://download.visualstudio.microsoft.com/download/pr/8686fa48-b378-424e-908b-afbd66d6e120/2d75d5c3574fb5d917c5a3cd3f624287/dotnet-sdk-6.0.400-win-x64.zip -OutFile "Dependencies/dotnet/dotnet.zip"}"
+powershell -Command "& {Expand-Archive -LiteralPath Dependencies/dotnet/dotnet.zip -DestinationPath Dependencies/dotnet/tmp}"
+robocopy "Dependencies/dotnet/tmp/shared/Microsoft.NETCore.App/6.0.8/" "Dependencies/dotnet/bin/" *.dll /ns /nfl /ndl /nc /njh
+rmdir "Dependencies/dotnet/tmp/" /s /q
+del "Dependencies/dotnet/dotnet.zip"
+powershell -Command "& {Remove-Item "Dependencies/dotnet/dotnet.zip"}"
:done
echo DONE!
diff --git a/Dependencies.lua b/Dependencies.lua
index 32382cf9..7f1281ab 100644
--- a/Dependencies.lua
+++ b/Dependencies.lua
@@ -13,3 +13,4 @@ IncludeDir["RTTR"] = "%{wks.location}/Dependencies/RTTR"
IncludeDir["ktx"] = "%{wks.location}/Dependencies/ktx"
IncludeDir["reactphysics3d"] = "%{wks.location}/Dependencies/reactphysics3d"
IncludeDir["VULKAN"] = "$(VULKAN_SDK)"
+IncludeDir["dotnet"] = "%{wks.location}/Dependencies/dotnet"
diff --git a/SHADE_Engine/SHADE_Engine.vcxproj b/SHADE_Engine/SHADE_Engine.vcxproj
index 07b7eb4a..b7f87645 100644
--- a/SHADE_Engine/SHADE_Engine.vcxproj
+++ b/SHADE_Engine/SHADE_Engine.vcxproj
@@ -19,13 +19,13 @@
- StaticLibrary
+ DynamicLibrary
true
Unicode
v142
- StaticLibrary
+ DynamicLibrary
false
Unicode
v142
@@ -41,16 +41,18 @@
+ true
bin\Debug_x86_64\SHADE_Engine\
bin-int\Debug_x86_64\SHADE_Engine\
SHADE_Engine
- .lib
+ .dll
+ false
bin\Release_x86_64\SHADE_Engine\
bin-int\Release_x86_64\SHADE_Engine\
SHADE_Engine
- .lib
+ .dll
@@ -58,7 +60,7 @@
SHpch.h
Level4
_LIB;_GLFW_INCLUDE_NONE;MSDFGEN_USE_CPP11;NOMINMAX;_DEBUG;%(PreprocessorDefinitions)
- src;..\Dependencies\assimp\include;..\Dependencies\imgui;..\Dependencies\imguizmo;..\Dependencies\imnodes;..\Dependencies\msdf;..\Dependencies\msdf\msdfgen;..\Dependencies\spdlog\include;..\Dependencies\tracy;..\Dependencies\VMA\include;..\Dependencies\yamlcpp\include;..\Dependencies\ktx\include;..\Dependencies\RTTR\include;..\Dependencies\reactphysics3d\include;$(VULKAN_SDK)\include;$(VULKAN_SDK)\Source\SPIRV-Reflect;%(AdditionalIncludeDirectories)
+ src;..\Dependencies\assimp\include;..\Dependencies\imgui;..\Dependencies\imguizmo;..\Dependencies\imnodes;..\Dependencies\msdf;..\Dependencies\msdf\msdfgen;..\Dependencies\spdlog\include;..\Dependencies\tracy;..\Dependencies\VMA\include;..\Dependencies\yamlcpp\include;..\Dependencies\ktx\include;..\Dependencies\RTTR\include;..\Dependencies\reactphysics3d\include;$(VULKAN_SDK)\include;$(VULKAN_SDK)\Source\SPIRV-Reflect;..\Dependencies\dotnet\include;%(AdditionalIncludeDirectories)
EditAndContinue
Disabled
false
@@ -69,11 +71,13 @@
Windows
true
-
-
vulkan-1.lib;assimp-vc142-mtd.lib;ktxd.lib;librttr_core_d.lib;%(AdditionalDependencies)
libs;$(VULKAN_SDK)\Lib;..\Dependencies\assimp\lib\Debug;..\Dependencies\assimp\lib\Release;..\Dependencies\RTTR\lib;..\Dependencies\ktx\lib\Debug;..\Dependencies\ktx\lib\Release;%(AdditionalLibraryDirectories)
-
+ bin\Debug_x86_64\SHADE_Engine\SHADE_Engine.lib
+
+
+ xcopy /s /r /y /q "$(SolutionDir)/Dependencies/dotnet/bin" "$(OutDir)"
+
@@ -81,7 +85,7 @@
SHpch.h
Level4
_LIB;_GLFW_INCLUDE_NONE;MSDFGEN_USE_CPP11;NOMINMAX;_RELEASE;%(PreprocessorDefinitions)
- src;..\Dependencies\assimp\include;..\Dependencies\imgui;..\Dependencies\imguizmo;..\Dependencies\imnodes;..\Dependencies\msdf;..\Dependencies\msdf\msdfgen;..\Dependencies\spdlog\include;..\Dependencies\tracy;..\Dependencies\VMA\include;..\Dependencies\yamlcpp\include;..\Dependencies\ktx\include;..\Dependencies\RTTR\include;..\Dependencies\reactphysics3d\include;$(VULKAN_SDK)\include;$(VULKAN_SDK)\Source\SPIRV-Reflect;%(AdditionalIncludeDirectories)
+ src;..\Dependencies\assimp\include;..\Dependencies\imgui;..\Dependencies\imguizmo;..\Dependencies\imnodes;..\Dependencies\msdf;..\Dependencies\msdf\msdfgen;..\Dependencies\spdlog\include;..\Dependencies\tracy;..\Dependencies\VMA\include;..\Dependencies\yamlcpp\include;..\Dependencies\ktx\include;..\Dependencies\RTTR\include;..\Dependencies\reactphysics3d\include;$(VULKAN_SDK)\include;$(VULKAN_SDK)\Source\SPIRV-Reflect;..\Dependencies\dotnet\include;%(AdditionalIncludeDirectories)
Full
true
true
@@ -95,11 +99,13 @@
Windows
true
true
-
-
vulkan-1.lib;assimp-vc142-mt.lib;ktx.lib;librttr_core.lib;%(AdditionalDependencies)
libs;$(VULKAN_SDK)\Lib;..\Dependencies\assimp\lib\Debug;..\Dependencies\assimp\lib\Release;..\Dependencies\RTTR\lib;..\Dependencies\ktx\lib\Debug;..\Dependencies\ktx\lib\Release;%(AdditionalLibraryDirectories)
-
+ bin\Release_x86_64\SHADE_Engine\SHADE_Engine.lib
+
+
+ xcopy /s /r /y /q "$(SolutionDir)/Dependencies/dotnet/bin" "$(OutDir)"
+
@@ -190,7 +196,6 @@
-
@@ -246,13 +251,13 @@
-
+
Create
@@ -284,4 +289,4 @@
-
+
\ No newline at end of file
diff --git a/SHADE_Engine/SHADE_Engine.vcxproj.filters b/SHADE_Engine/SHADE_Engine.vcxproj.filters
index 8e6cedf2..fd513c56 100644
--- a/SHADE_Engine/SHADE_Engine.vcxproj.filters
+++ b/SHADE_Engine/SHADE_Engine.vcxproj.filters
@@ -94,6 +94,12 @@
{B3B14D12-9FC1-F9E2-087B-5E01F4A9E87B}
+
+ {AFF4887C-9B2B-8A0D-4418-7010302E060F}
+
+
+ {F1B75745-5D6D-D03A-E661-CA115216C73E}
+
{AC05897C-983C-8A0D-4129-70102D3F060F}
@@ -315,6 +321,27 @@
Graphics\Windowing\Surface
+
+ Math
+
+
+ Math
+
+
+ Math
+
+
+ Math
+
+
+ Math\Vector
+
+
+ Math\Vector
+
+
+ Math\Vector
+
Meta
@@ -343,16 +370,9 @@
Tools
-
-
-
-
-
-
-
-
-
-
+
+ Tools
+
@@ -514,6 +534,24 @@
Graphics\Windowing\Surface
+
+ Math
+
+
+ Math
+
+
+ Math
+
+
+ Math\Vector
+
+
+ Math\Vector
+
+
+ Math\Vector
+
Resource
@@ -530,11 +568,5 @@
Tools
-
-
-
-
-
-
\ No newline at end of file
diff --git a/SHADE_Engine/premake5.lua b/SHADE_Engine/premake5.lua
index a94284df..ac128ac5 100644
--- a/SHADE_Engine/premake5.lua
+++ b/SHADE_Engine/premake5.lua
@@ -1,5 +1,5 @@
project "SHADE_Engine"
- kind "StaticLib"
+ kind "SharedLib"
language "C++"
cppdialect "C++latest"
targetdir ("bin/" .. outputdir .. "/%{prj.name}")
@@ -12,6 +12,7 @@ project "SHADE_Engine"
files
{
"%{prj.location}/src/**.h",
+ "%{prj.location}/src/**.hpp",
"%{prj.location}/src/**.c",
"%{prj.location}/src/**.cpp",
"%{prj.location}/src/**.glsl",
@@ -35,7 +36,8 @@ project "SHADE_Engine"
"%{IncludeDir.RTTR}/include",
"%{IncludeDir.reactphysics3d}/include",
"%{IncludeDir.VULKAN}/include",
- "%{IncludeDir.VULKAN}/Source/SPIRV-Reflect"
+ "%{IncludeDir.VULKAN}/Source/SPIRV-Reflect",
+ "%{IncludeDir.dotnet}/include",
}
libdirs
@@ -57,7 +59,7 @@ project "SHADE_Engine"
"reactphysics3d",
"imgui",
"spdlog",
- "vulkan-1.lib"
+ "vulkan-1.lib",
}
defines
@@ -83,6 +85,11 @@ project "SHADE_Engine"
"spdlog",
}
+ postbuildcommands
+ {
+ "xcopy /s /r /y /q \"%{IncludeDir.dotnet}/bin\" \"$(OutDir)\""
+ }
+
warnings 'Extra'
filter "configurations:Debug"