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.
39 lines
1.1 KiB
39 lines
1.1 KiB
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)
|
|
|
|
FetchContent_Declare(assimp
|
|
GIT_REPOSITORY https://github.com/assimp/assimp.git
|
|
GIT_TAG v5.4.3
|
|
)
|
|
FetchContent_MakeAvailable(assimp)
|
|
|
|
FetchContent_Declare(tetgen
|
|
GIT_REPOSITORY https://github.com/ufz/tetgen.git
|
|
GIT_TAG 1.5.1
|
|
)
|
|
FetchContent_MakeAvailable(tetgen)
|
|
|
|
target_link_libraries(VulkanSimulation glm::glm glfw Vulkan::Vulkan GPUOpen::VulkanMemoryAllocator assimp tet)
|
|
target_include_directories(VulkanSimulation PRIVATE include)
|
|
target_compile_definitions(VulkanSimulation PRIVATE
|
|
GLM_FORCE_RADIANS
|
|
GLM_FORCE_DEPTH_ZERO_TO_ONE
|
|
)
|
|
|