Friday, April 2, 2010

animated noisy gradient in Houdini

what is a trivial task...in Max, is a bit wierd in Houdini...but not so bad when you see how.
Once this is set up - you can always save this as an asset as well.

I started plaing with the old ramps VOP, and then realised the new ramp generator is
the quickest and easiest way - that I know of.

1. make sure you have a shader view ( like the Material Editor...sort of...) window open, 
otherwise youll have to make a grid with UVs......im busy thesedays :)
2. make a vopsop surface shader ( and apply  it to you geo if you have some)
3. dive into it and add a ...well add these !

click the image to see it bigger

what the hell ! :)
I have to make all these nodes just for this effect !
umm yep  ! Houdini excells at complicated tasks...so simple talks are a little more complicated.
some shortcuts...
the globals is given to you for free in a VOPSOP.
you could add your own paramaters called s and t - if the names are correct - Houdini recognises them and they work as if the were piped directly from the Globals.

the three parm's piping into the Turb Noise - i dont have to create and name them manually of course.
I just MMB on the parm's inputs that i want the user to be able to access on the top level and go with the default names - so the these are quick and easy no brainers.
The rest i have to click a few buttons for as you would in Max :)

the key is the ramp parm - it could be a float (spline) ramp or a vectory ramp - i went for simplicity.
The other tricky thing i found - was to plug s and t (like U and V) into my noise - i couldnt see the noise without giving it s and t.

So the s plugging into the ramp gives me horizontal ramp - t would give me vertical. This is mutiplied by the noise, and piped into a simple mix - note the dotted line here indicates values are being converted - the multiply is outputting a vector - but the mix wants a float as the Bias - so Houdini automatically converts it to read a float.

The animation of the wipe from left to right is done by animating the position from 0 to 1 in the top level of the VOP shaders - in the ramps parameters. Ive animated the position on two points on the ramp.

Another more WYSIWYG way - would be to do this in COPS - houdinis compositor - this would be similar the the gradients in Photoshop or After Effects - but this would likely require 'rendering' out an image sequence to disk - just like the old days !

some other things i thought you can play with:
* using an expression in the point positions to keep them evenly spaced, and to enable only having to animate one - the other is driven by the first eg point 2 pos = point 1 pos + 10%
* mixing several types of noise together
*animating the noise / size of the noise

umm im sure there are more ways - and probably more efficient ways to do this in VOPS, this is what first came to mind.


have fun !






No comments: