Jump to content


My implementation of Fourier Opacity Mapping


2 replies to this topic

#1 sebh

    New Member

  • Members
  • PipPip
  • 17 posts

Posted 19 February 2010 - 03:00 PM

Posted Image


Description
The up-coming I3D conference on interactive 3D Graphics and Games will feature several interesting papers. I have found one of these paper called "Fourier Opacity Mapping", proposed by Jon Jansen and Louis Bavoil, very interesting. I could not resist implementing this nice paper.

Fourier Opacity Mapping (FOM) is about approximating light attenuation through a volume made of particles for the purpose of volumetric shadow. Let's consider a spot light: the authors propose to reconstruct the light transmittance function along each ray using a Fourier series. The coefficients of the Fourier series are stored in the fourier opacity map in light view space. This map is generated using usual particles rendering with transformation in the Fourier basis of absorption coefficients in the fragment program. Then, when rendering the particles from the camera view, the correcte light attenuation can be recovered for each particle. I will not go into the details here. You can read this nice paper here or my report on my personal webpage. You can also find open a demo with source code. (You will need a recent video card to run the demo since it uses GLSL 1.5 and render data into 6 buffers in one pass)

This method is really efficient to simulate colored light attenuation when passing through a volume of particles. Furthermore, if you want an exemple of good use by skilled artists, just have a look at the game Batman Arkham Asylum which features this method.

#2 roel

    Senior Member

  • Members
  • PipPipPipPip
  • 698 posts

Posted 19 February 2010 - 05:24 PM

I saw it on your blog, great job!

#3 sebh

    New Member

  • Members
  • PipPip
  • 17 posts

Posted 21 February 2010 - 08:29 PM

Thank you very much! :)





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users