rendering-in-cgi/Framework/CMakeLists.txt
2024-04-23 10:14:24 +02:00

55 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.16.0 FATAL_ERROR)
project(CGI-framework C CXX)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/external)
find_package(OpenGL REQUIRED)
set(IMGUI_DIR external/imgui)
set(PROJECT_INCLUDE_DIRS
include
# scenegraph
${CMAKE_CURRENT_SOURCE_DIR}
${EMBREE_INCLUDE_DIRS}
${CMAKE_CURRENT_BINARY_DIR}
${GLFW_INCLUDE}
${GLAD_INCLUDE}
${IMGUI_DIR}
${IMGUI_DIR}/backends)
set(SOURCES_IMGUI
${IMGUI_DIR}/backends/imgui_impl_glfw.cpp
${IMGUI_DIR}/backends/imgui_impl_opengl3.cpp
${IMGUI_DIR}/imgui.cpp
${IMGUI_DIR}/imgui_draw.cpp
${IMGUI_DIR}/imgui_demo.cpp
${IMGUI_DIR}/imgui_tables.cpp
${IMGUI_DIR}/imgui_widgets.cpp)
set(SOURCES_LIGHT
lights/light.cpp
lights/light.h
lights/ambient_light.cpp
lights/ambient_light.h
lights/directional_light.cpp
lights/directional_light.h
lights/point_light.cpp
lights/point_light.h
lights/quad_light.cpp
lights/quad_light.h
lights/spot_light.cpp
lights/spot_light.h
)
set(SOURCES
${SOURCES_IMGUI}
${SOURCES_LIGHT}
scenegraph/scenegraph.cpp
scenegraph/obj_loader.cpp
src/application.cpp
)
add_library(${PROJECT_NAME} ${SOURCES})
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_INCLUDE_DIRS})
target_link_libraries(${PROJECT_NAME} PUBLIC glfw OpenGL::GL glad embree)