Matt Ebb how had previously played around with using spherical harmonics in Blender decided to port that code over to Houdini VEX. Matt created a couple of VOPs that were used to generate and evaluate spherical harmonics as a part of a VOP network.

For those unfamiliar with VOPs (VEX Operators) in Houdini, it is a method to graphically build code by connecting nodes together, very similar to the way that ICE works in Softimage.

Check out the post and paper for Spherical Harmonics in VOPs on Matt’s page here.

Matt Ebb notes “The common use case for spherical harmonics is caching a slow-to-calculate value that varies by angle, storing it as SH coefficient data, then reproducing an approximated version of that original value later on. What makes spherical harmonics useful is that for certain types of things (like diffuse lighting) the amount of data you have to store is quite small, and the value can be reproduced later quite quickly.”