Commit: 0ef4d5bf1bd23f5a4828c286d9d8ce359a057d36 Author: Sebastian Herholz Date: Thu Jun 23 14:02:22 2022 +0200 Branches: cycles_path_guiding https://developer.blender.org/rB0ef4d5bf1bd23f5a4828c286d9d8ce359a057d36
Cycles-X: Path Guiding: Adding OpenPGL cmake flags and use OpenPGLs cmake config from Blender's dependency =================================================================== M CMakeLists.txt M intern/cycles/CMakeLists.txt M intern/cycles/cmake/external_libs.cmake M intern/cycles/cmake/macros.cmake M intern/cycles/integrator/CMakeLists.txt =================================================================== diff --git a/CMakeLists.txt b/CMakeLists.txt index 31608b0c1ce..4241efd955a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -449,6 +449,9 @@ if(NOT APPLE) mark_as_advanced(CYCLES_HIP_BINARIES_ARCH) endif() +# Intel OpenPGL +option(WITH_CYCLES_PATH_GUIDING "Build Cycles with path guiding support" OFF) + # Apple Metal if(APPLE) option(WITH_CYCLES_DEVICE_METAL "Enable Cycles Apple Metal compute support" ON) diff --git a/intern/cycles/CMakeLists.txt b/intern/cycles/CMakeLists.txt index f5d717e70fc..0af6ebdc021 100644 --- a/intern/cycles/CMakeLists.txt +++ b/intern/cycles/CMakeLists.txt @@ -338,6 +338,19 @@ if(WITH_OPENCOLORIO) ) endif() +if(WITH_CYCLES_PATH_GUIDING) + add_definitions(-DWITH_PATH_GUIDING) + add_definitions(-DWITH_PATH_GUIDING_DEBUG_PRINT) + add_definitions(-DPATH_GUIDING_LEVEL=5) + add_definitions(-DPATH_GUIDING_PHASE_FUNCTION_PRODUCT) + add_definitions(-DPATH_GUIDING_DEBUG_PASS) + add_definitions(-DPATH_GUIDING_DEBUG_VALIDATE) + include_directories( + SYSTEM + ${OPENPGL_INCLUDE_DIR} + ) +endif() + # NaN debugging if(WITH_CYCLES_DEBUG_NAN) add_definitions(-DWITH_CYCLES_DEBUG_NAN) diff --git a/intern/cycles/cmake/external_libs.cmake b/intern/cycles/cmake/external_libs.cmake index d2f30fe764b..e1e06198787 100644 --- a/intern/cycles/cmake/external_libs.cmake +++ b/intern/cycles/cmake/external_libs.cmake @@ -262,6 +262,18 @@ if(CYCLES_STANDALONE_REPOSITORY AND WITH_CYCLES_OSL) endif() endif() + +if(WITH_CYCLES_PATH_GUIDING) + if(NOT openpgl_DIR) + if(LIBDIR) + set(openpgl_DIR ${LIBDIR}/openpgl/lib/cmake/openpgl) + endif() + endif() + find_package(openpgl REQUIRED) + get_target_property(OPENPGL_LIBRARIES openpgl::openpgl LOCATION) + get_target_property(OPENPGL_INCLUDE_DIR openpgl::openpgl INTERFACE_INCLUDE_DIRECTORIES) +endif() + ########################################################################### # OpenColorIO ########################################################################### diff --git a/intern/cycles/cmake/macros.cmake b/intern/cycles/cmake/macros.cmake index abadfc2c1ac..6ee26adb3ff 100644 --- a/intern/cycles/cmake/macros.cmake +++ b/intern/cycles/cmake/macros.cmake @@ -118,6 +118,9 @@ macro(cycles_external_libraries_append libraries) if(WITH_ALEMBIC) list(APPEND ${libraries} ${ALEMBIC_LIBRARIES}) endif() + if(WITH_PATH_GUIDING) + target_link_libraries(${target} ${OPENPGL_LIBRARIES}) + endif() list(APPEND ${libraries} ${OPENIMAGEIO_LIBRARIES} diff --git a/intern/cycles/integrator/CMakeLists.txt b/intern/cycles/integrator/CMakeLists.txt index 9722003083e..ef2a07854ec 100644 --- a/intern/cycles/integrator/CMakeLists.txt +++ b/intern/cycles/integrator/CMakeLists.txt @@ -65,6 +65,12 @@ if(WITH_OPENIMAGEDENOISE) ) endif() +if(WITH_CYCLES_PATH_GUIDING) + list(APPEND LIB + ${OPENPGL_LIBRARIES} + ) +endif() + include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs