Cellular Noise

There’s a few types of noise that are missing from Nuke, and this one really bugged me. Worley noise in particular can be quite useful, and there are so many variations of cell noise that can be built from the same core mechanics that it seemed like a good one to begin with.

CellNoise

Installing

Download from here.

Simply place the folder in your plugins directory and include the folder in the init.py using nuke.addPluginPath().

Code Breakdown

Credit goes to this site for the critical code for the noise, it gives a very thorough explanation and breakdown on the mechanics behind it as well as a good implementation. There isn’t much I can break down here that isn’t covered in far more detail there. However, to get this working in blink, we’ll need to make some adjustments however.

It seems blink has an issue with using unsigned integers, so to get values above 231 – 1 we need to declare it as a constant first. We also need to change the random number generator to something we know will work, such as the C++11 values.

Next, we want to be able to manipulate the noise the same we can with the other nuke nodes, all of which can be built into a simple transformation matrix. Simply invert the matrix and multiply the input position to transform our noise how we need it.

Hopefully the nukepedia upload functionality will return soon and the gizmo will be up for download, but if you’re impatient to play around, then just check the installation link above to get it directly from my github. Happy noising!

 

Cellular Noise

One thought on “Cellular Noise

Leave a comment