add_library(ftlrender
	src/normals.cu
	src/mask.cu
	src/screen.cu
	src/clipping.cu
	src/dibr.cu
	src/triangle_render.cu
	src/reprojection.cu
	src/CUDARender.cpp
	src/colouriser.cpp
	src/colour_util.cu
	src/overlay.cpp
	src/gltexture.cpp
	src/touch.cu
	#src/assimp_render.cpp
	#src/assimp_scene.cpp
)

# Various preprocessor definitions have been generated by NanoGUI
add_definitions(${NANOGUI_EXTRA_DEFS})

# On top of adding the path to nanogui/include, you may need extras
include_directories(${NANOGUI_EXTRA_INCS})

target_include_directories(ftlrender PUBLIC
	$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
	$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/ext/nanogui/include>
	$<INSTALL_INTERFACE:include>
	PRIVATE src)
target_link_libraries(ftlrender ftlrgbd ftlcommon Eigen3::Eigen Threads::Threads nanogui ${NANOGUI_EXTRA_LIBS} ${OpenCV_LIBS})

target_precompile_headers(ftlrender REUSE_FROM ftldata)

set_property(TARGET ftlrender PROPERTY CUDA_ARCHITECTURES OFF)

#ADD_SUBDIRECTORY(test)
