Friday, 1 March 2013

Speeding up inhomogeneous participating media

The second part of out study group is implementing a paper to speed up the rendering of inhomogeneous participating media. The paper can be found here:

http://nis-lab.is.s.u-tokyo.ac.jp/~egaku/sigasia10/abstsigasia10.html
or
http://dl.acm.org/citation.cfm?id=1866199

The basic method is to partition the participating media into a kd-tree based on the extinction coefficient, and one of the key aspects of the paper is a scheme to find a suitable partition.
Our plan at the moment is to first add the functionality to render the participating media with a kd-tree, and then implement the partition scheme. We will probably just start with a uniform partition to get the rendering working correctly, and then afterwards try to get speed improvements with the good partitioning.
The reason inhomogeneous materials can be slow to render is because of the woodcock tracking used to get  the amount of color absorbed in the material.
Woodcock tracking works by taking smalls steps bases on the maximum extinction coefficient in the material, and then use the extinction coefficient at the current point to determine if a scattering or absorption event occurs. The problem with the method is that if the extinction coefficient varies a lot over the material, a lot of unnecesarry steps can be taken. So the idea is to partition the medium into partitions with similar coefficients and then takes steps according to the maximum extinction coefficient of each particular partition. 

No comments:

Post a Comment