cmake_minimum_required(VERSION 3.22) project(VulkanSimulation) set(CMAKE_CXX_STANDARD 20) file(GLOB_RECURSE SRC_FILES src/**.cpp) add_executable(VulkanSimulation ${SRC_FILES}) find_package(Vulkan REQUIRED) find_package(OpenMP REQUIRED) include(deps.cmake) if (WIN32) FetchContent_MakeAvailable(glfw) endif () FetchContent_MakeAvailable(glm) FetchContent_MakeAvailable(vma) FetchContent_MakeAvailable(tetgen) FetchContent_MakeAvailable(assimp) target_compile_options(assimp PRIVATE -Wno-unknown-pragmas) target_link_libraries(VulkanSimulation glm glfw Vulkan::Vulkan GPUOpen::VulkanMemoryAllocator assimp tet OpenMP::OpenMP_CXX) target_include_directories(VulkanSimulation PRIVATE include lib) target_compile_definitions(VulkanSimulation PRIVATE GLM_FORCE_RADIANS GLM_FORCE_DEPTH_ZERO_TO_ONE BLOCK_SIZE_GRAB=32 BLOCK_SIZE_PBD=32 BLOCK_SIZE_NORMAL=32 )