cmake_minimum_required(VERSION 4.3) project(VulkanTutorial) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE SOURCE_CODE ./src/**.cpp) add_executable(${PROJECT_NAME} ${SOURCE_CODE} ) file(GLOB SHADER_CODE ./shaders/*.spv) file(COPY ${SHADER_CODE} DESTINATION ${CMAKE_BINARY_DIR}) target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src ) # 1. 查找 Vulkan find_package(Vulkan REQUIRED) if(NOT Vulkan_FOUND) message(FATAL_ERROR "Vulkan not found!") endif() # 设置 GLFW 不构建示例和文档,加快编译 set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE) set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE) set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE) add_subdirectory(Libraries/glfw) # GLFW add_subdirectory(Libraries/glm) # GLM add_subdirectory(Libraries/spdlog) # 链接依赖 target_link_libraries(${PROJECT_NAME} PRIVATE glfw Vulkan::Vulkan spdlog )