You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

36 lines
1.1 KiB

cmake_minimum_required(VERSION 3.22)
project(VulkanSimulation)
include(CMakePrintHelpers)
set(CMAKE_CXX_STANDARD 20)
file(GLOB_RECURSE SRC_FILES src/**.cpp)
file(GLOB IMGUI_FILES lib/imgui/*.cpp lib/imgui/*.h lib/imgui/backends/imgui_impl_glfw* lib/imgui/backends/imgui_impl_vulkan*)
cmake_print_variables(IMGUI_FILES)
add_executable(VulkanSimulation ${SRC_FILES} ${IMGUI_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_include_directories(VulkanSimulation PRIVATE include lib/imgui)
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
)