Code related to the publication Correlated Photon Mapping for Interactive Global Illumination of Time-Varying Volumetric Data by Daniel Jönsson and Anders Ynnerman
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
modules
workspaces
README.md

README.md

Correlated Photon Mapping for Interactive Global Illumination of Time-Varying Volumetric Data

Example code for tracing photons in time-varying heterogenous media using a visual importance map as described in the publication "Correlated Photon Mapping for Interactive Global Illumination of Time-Varying Volumetric Data". Note that each folder may have different licenses.

Please cite the article when making use of this code:

@article{JFY16,
author = {J{"o}nsson, Daniel and Ynnerman, Anders},
title = {{Correlated Photon Mapping for Interactive Global Illumination of Time-Varying Volumetric Data}},
journal = {IEEE Transactions on Visualization and Computer Graphics (TVCG)},
number = {X},
volume = {X},
pages = {XX - XX},
year = {In press 2016}
}

Build

  1. Download and setup Inviwo (tested with version 0.9.7):
  1. Download and setup boost (required by the radix sorting library)
  1. Set the directory to this folder in CMake, IVW_EXTERNAL_MODULES path/to/CorrelatedPhotonMapping/modules;
  • Press Configure in CMake
  1. Enable the IVW_MODULE_PROGRESSIVE_PHOTONMAPPING
  • Press Configure/Generate in CMake until no errors appear.
  • Compile and run!
  • Load workspace workspaces/CorrelatedPhotonMappingSingleVolume.inv for and example.
  • Be patient: Optimal OpenCL workgroup sizes are found for sorting the first time loading the workspace.

Build system

  • The project and module configuration/generation is performed through CMake (>= 2.8.11).
  • Inviwo has been compiled in Visual Studio (>= 2015), XCode (>= 5), KDevelop (>= 4), Make.
  • C++11 Required
  • OpenCL Required (For Nvidia: https://developer.nvidia.com/cuda-toolkit)
  • Boost Required

Licenses

Each folder can be under a different license. See license.txt in each folder.

radixsortcl: clogs 1.5.0 is under MIT license

rndgenmwc64x: MWC64X is under BSD license

uniformgridcl: is under MIT license

importancesamplingcl is under Creative Commons Attribution-NonCommercial 4.0 International license

lightcl is under Creative Commons Attribution-NonCommercial 4.0 International license

progressivephotonmapping is under Creative Commons Attribution-NonCommercial 4.0 International license