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(glfw3 REQUIRED) find_package(glm REQUIRED) include(FetchContent) FetchContent_Declare(vma GIT_REPOSITORY https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git GIT_TAG v3.1.0 GIT_PROGRESS ON FIND_PACKAGE_ARGS 3.1.0) FetchContent_MakeAvailable(vma) target_link_libraries(VulkanSimulation glm::glm glfw Vulkan::Vulkan GPUOpen::VulkanMemoryAllocator) target_include_directories(VulkanSimulation PRIVATE include) target_compile_definitions(VulkanSimulation PRIVATE GLM_FORCE_RADIANS GLM_FORCE_DEPTH_ZERO_TO_ONE )