RDHR Project

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

This page contains information about the Radiance Decomposition Hierarchical Radiosity (RDHR) research project.

Subversion Repositories

  • C# (as a fork of LightFairy library)
  • C++

Obtaining the Source

Installing Subversion and Tortoise SVN

Please grab Subversion from this page. You may also wish to download Tortoise SVN, which provides a nice integration between Subversion and Windows Explorer, from here.

Creating a Branch

The directory "trunk" is supposed to contain stable code. New code shall be developed independently in different branches private to each member of the team. These branches will be merged into the trunk after members agree on how to integrate their codes. Hence, it's important that you create a branch for yourself.

Suppose you're going to create a branch named "my_branch." Execute the following command:

svn copy http://theory.cpe.ku.ac.th/pramook_rdhr-c++/trunk http://theory.cpe.ku.ac.th/pramook_rdhr-c++/branches/my_branches -m "create my_branch"

Checking Out Your Branch

To download the code from the branch you just created, execute the following common in your shell:

svn checkout http://theory.cpe.ku.ac.th/pramook_rdhr-c++/branches/my_branch <directory>

This will download all the latest version of the files to the directory <directory>.

Checking Out the Trunk

In some case, you might want to download the code from the trunk. The command to execute is:

svn checkout http://theory.cpe.ku.ac.th/pramook_rdhr-c++/trunk <directory>

If you want to commit anything to the trunk, do so VERY CAREFULLY and MAKE SURE THAT EVERYTHING COMPILES.

Notes on Building the C++ Version

Requirements

You need the following software:

It's important that you use VC2005 because CUDA only work with Microsoft C compiler 6.0 or 7.1, which comes with VC2003 or VC2005. I use VC2005 now, and the repository contains VC2005 project files.
This is the newest Windows SDK I could find.

Please install them and DO NOT alter their installation directories. The reason is that the Windows SDK include directory is hard-coded into rdhr-c++ project files.

Cannot open precompiled header file error

When building the "rdhr" project, you might get an error message like this:

C1083: Cannot open precompiled header file: 'Debug/<Project-Name>.pch': No such file or directory.

To make it go away, compile "stdafx.cpp" alone first, then build the project.

UnitTest++.vsnet2005 and TestUnitTest++.vsnet2005

Sometimes these two projects will be unloaded when you open the solution. If you have not built these two projects on your local machines, please load and build them.

Notes on Building the C# Version

You need:

After checking out the code from http://theory.cpe.ku.ac.th/pramook_lightfairy/branches/rdhr/trunk, the program should build without modifications.

UnitTest++

Information on UnitTest++, the unit testing framework I'm using, can be found here.

There's also a nice tutorial on how to write unit tests here.

Readings

Spherical Harmonics

Other Global Illumination Algorithms

Irradiance and Radiance Caching