diff --git a/projects/CMakeLists.txt b/projects/CMakeLists.txt index 4196d55d99db115641f0a23cf5d7445bc70e52fe..86034ffb07e7c2f40463f711d2027af8aade573f 100644 --- a/projects/CMakeLists.txt +++ b/projects/CMakeLists.txt @@ -5,3 +5,4 @@ add_subdirectory(first_mesh) add_subdirectory(first_scene) add_subdirectory(particle_simulation) add_subdirectory(voxelization) +add_subdirectory(neural_network) \ No newline at end of file diff --git a/projects/neural_network/CMakeLists.txt b/projects/neural_network/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cd0a140aafd59d9eaa23a8060fca784938a57681 --- /dev/null +++ b/projects/neural_network/CMakeLists.txt @@ -0,0 +1,28 @@ +cmake_minimum_required(VERSION 3.16) +project(neural_network) + +# setting c++ standard for the project +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +# this should fix the execution path to load local files from the project +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) + +# adding source files to the project +add_executable(neural_network src/main.cpp) + +# this should fix the execution path to load local files from the project (for MSVC) +if(MSVC) + set_target_properties(neural_network PROPERTIES RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + set_target_properties(neural_network PROPERTIES RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) + + # in addition to setting the output directory, the working directory has to be set + # by default visual studio sets the working directory to the build directory, when using the debugger + set_target_properties(neural_network PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) +endif() + +# including headers of dependencies and the VkCV framework +target_include_directories(neural_network SYSTEM BEFORE PRIVATE ${vkcv_include} ${vkcv_includes} ${vkcv_asset_loader_include} ${vkcv_camera_include} ${vkcv_scene_include} ${vkcv_shader_compiler_include}) + +# linking with libraries from all dependencies and the VkCV framework +target_link_libraries(neural_network vkcv ${vkcv_libraries} vkcv_asset_loader ${vkcv_asset_loader_libraries} vkcv_camera vkcv_scene vkcv_shader_compiler) diff --git a/projects/neural_network/src/main.cpp b/projects/neural_network/src/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..3383bcdba198f40e3d17bc98956c03f4a2bbacae --- /dev/null +++ b/projects/neural_network/src/main.cpp @@ -0,0 +1,15 @@ +#include <iostream> +#include <vkcv/Core.hpp> +#include <GLFW/glfw3.h> +#include <vkcv/camera/CameraManager.hpp> +#include <chrono> +#include <vkcv/asset/asset_loader.hpp> +#include <vkcv/shader/GLSLCompiler.hpp> +#include <vkcv/scene/Scene.hpp> + +int main(int argc, const char** argv) { + + + + return 0; +}