Sh or All frequency Shadows

Started by
2 comments, last by flip_mo_kid 18 years, 9 months ago
Hey everyone, I don't spend enough time coding, so I actually haven't implemented SH for lighting yet, but I was wondering if anyone had taken a real-life shot at implementing SH and/or the method described in the All-Frequency Shadows paper It claims to be a magnitude faster than SH. What's the word? -Michael g.
Advertisement
While I didn't implement the method outlined in that paper, I implemented many different SH systems.

To be honest, I've never been a big friend of spherical harmonics. They have their uses, and they can look nice, but they're just too low frequency to be really usable in a higher quality context. That's an inherent problem of the technique: the more octaves you add in, the higher frequencies you can represent - but the lower is the performance. For largely static geometry, GI generated (possibly directional) lightmaps will both outperform SH and result in better quality.

Now, a different mathematical approximation can alleviate the problem. Wavelets have been a promising candidate pretty much since SH came around, but were never really usable in realtime. The paper you linked to looks interesting though, and it might be worth a try to run some tests on the spectral range of their technique compared to SH.

I'm afraid that the only real way to know, is to implement it and see for yourself :)
Quote:Original post by Thr33d
It claims to be a magnitude faster than SH. What's the word?


doubtful, i think what they mean is for all frequency shadows, wavelets are faster(cuz' in high frequency case, it uses relatively lower number of coefficents, while for low frequency case, SH are faster).
I've implemented both. They're both pretty simple to learn and use. The problem with representing high frequency effects and shadows (and be able to make use of the fact that you can rotate lighting etc with out re-computation) is that you need very detailed meshes to see the effects. Indeed it is true that wavelets are faster methods of rendering over spherical harmonics, but this is only for high frequency signals (as sh would require hundreds of bands to represent the same information).

Check out the pictures of how detailed my mesh had to be for small area lights:

http://www.cs.bath.ac.uk/~cspmsb/waveletlighting/1L_100.jpg

http://www.cs.bath.ac.uk/~cspmsb/waveletlighting/1L_10000.jpg

This noise might have been from my hemicube code however.

http://www.cs.bath.ac.uk/~cspmsb/waveletlighting/Grace_10000.jpg

This topic is closed to new replies.

Advertisement