Skip to content

LittleCVR/MaoPPM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

================================================================================
Build the Project
================================================================================

In order to build the project, you will need nVIDIA's OptiX. Install OptiX
first if you don't have it. Then put the project's root directory into OptiX's
SDK directory, e.g.

    PathToOptiX/SDK/MaoPPM

and add the project to OptiX SDK's CMakeList.txt, e.g.

    add_subdirectory(MaoPPM)

After that, you have to generate the parser yourself. cd to the project's root
directory and type the following commands:

    $ bison -d -v -t -p pbrt -o parsers/pbrtParser.cc parsers/pbrtParser.y
    $ flex -P pbrt -o parsers/pbrtScanner.cc parsers/pbrtScanner.l

Now you can use cmake to generate the Makefile and build the project.


If your compiler complains that it cannot find the "atomicAdd(...)" function,
you have to specify the "-arch" option for nvcc. When configuring using CMake,
find the "CUDA_NVCC_FLAGS" option and append "-arch=compute_20" to the value.

Note that you cannot simply separate the arguments by space, you must separate
them by colon. But for other options like "CMAKE_CXX_FLAGS_RELEASE" you should
separate them by space, this should be the OptiX's problem.

So on my machine the value looks like this:

    --use_fast_math;-arch=compute_20;-code=sm_21



================================================================================
Run the Program
================================================================================

The program takes stdin as input, so use the following syntax to run the
program:

    $ ./MaoPPM < scene.pbrt

About

Mao's new progressive photon mapping.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published