cmake_minimum_required(VERSION 3.1) project(Graph) list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) add_subdirectory(3rdparty) include(cmake/BuildShaders.cmake) include(cmake/CopyData.cmake) set(CMAKE_CXX_STANDARD 14) find_package(SDL2 REQUIRED) find_package(Vulkan REQUIRED) find_package(assimp REQUIRED) if(CMAKE_BUILD_TYPE STREQUAL "Debug") add_definitions(-DDEBUG) endif() add_executable(Graph src/main.cpp src/renderer.cpp src/worldpass.cpp src/postpass.cpp src/dofpass.cpp) target_link_libraries(Graph PUBLIC SDL2::SDL2 SDL2::SDL2main Vulkan::Vulkan assimp::assimp nlohmann::json stb::stb) target_include_directories(Graph PUBLIC include) add_shaders(Graph shaders/triangle.vert shaders/triangle.frag shaders/post.vert shaders/post.frag shaders/gfield.vert shaders/gfield.frag) add_data(Graph data/suzanne.obj data/test.cim data/bokeh.png data/scene.obj)