mitsuba/src/integrators/CMakeLists.txt

49 lines
1.7 KiB
CMake

# Integrators
if (NOT MTS_VERSION)
message(FATAL_ERROR "Use the top level configuration file")
endif()
macro(add_integrator)
add_mts_plugin(${ARGN} TYPE integrator)
endmacro()
macro(add_bidir)
add_integrator(${ARGN} MTS_BIDIR)
endmacro()
add_integrator(ao direct/ao.cpp)
add_integrator(direct direct/direct.cpp)
add_integrator(path path/path.cpp)
add_integrator(volpath path/volpath.cpp)
add_integrator(volpath_simple path/volpath_simple.cpp)
add_integrator(ptracer ptracer/ptracer.cpp
ptracer/ptracer_proc.h ptracer/ptracer_proc.cpp)
# Photon mapping-based techniques
add_integrator(photonmapper photonmapper/photonmapper.cpp photonmapper/bre.cpp)
add_integrator(ppm photonmapper/ppm.cpp)
add_integrator(sppm photonmapper/sppm.cpp)
# Miscellaneous
add_integrator(vpl vpl/vpl.cpp MTS_HW)
add_integrator(adaptive misc/adaptive.cpp)
add_integrator(irrcache misc/irrcache.cpp
misc/irrcache_proc.h misc/irrcache_proc.cpp)
add_integrator(multichannel misc/multichannel.cpp)
add_integrator(field misc/field.cpp)
# Bidirectional techniques
add_bidir(bdpt bdpt/bdpt.h bdpt/bdpt.cpp
bdpt/bdpt_proc.h bdpt/bdpt_proc.cpp
bdpt/bdpt_wr.h bdpt/bdpt_wr.cpp)
add_bidir(pssmlt pssmlt/pssmlt.h pssmlt/pssmlt.cpp
pssmlt/pssmlt_proc.h pssmlt/pssmlt_proc.cpp
pssmlt/pssmlt_sampler.h pssmlt/pssmlt_sampler.cpp)
add_bidir(mlt mlt/mlt.h mlt/mlt.cpp
mlt/mlt_proc.h mlt/mlt_proc.cpp)
add_bidir(erpt erpt/erpt.h erpt/erpt.cpp
erpt/erpt_proc.h erpt/erpt_proc.cpp)