Beginnings of Coherent Noise

I have tried to keep to a policy that I will spend no more than a day on something and post it at the end of the day if it is post worthy. This demo took a little longer than my usual half-day to put together. It is also by no means complete. I unsuccessfully ported the accidental noise library from c/c++. There were some minor bugs which made the port < 100% complete and it is a bit confusing to try find the bug. I learnt a lot during that process though.

I have since found a nicer library for noise generation that is cleaner to look at and I have taken some of the design ideas from the accidental noise library and merged them with the ideas from the libnoise library (also c/c++). I have so far only implemented the Gradient signal with Perlin-, Billow-, and RidgedMulti- noise generators (or fractals, still not sure what they are). The demo will restrict you to the parameters relevant for each noise. Click render to see your results.

If you have been reading my blog for a while, you might remember my endevour into the Perlin Noise function a few months ago. That was when I was fiddling with the functionality that as3 provided out of the box. It was just the beginning of the rabbit hole my friends. There are so many other types of coherent noise and I have been reading up on how to generate each one. Things can really get hair raising at times. This demo will hopefully mature to an example where I can show one such example.

What is great about coherent noise is that it is so well suited for shaders. I might get adventurous and put together a pixelbender that generates one of the noise functions. However, I have something else in mind for now (might even look into the terrain viewer with these functions). If you have monster debugger installed, I have left the hook in for the more adventurous (actually I forgot to take it out).

Andrew is a MBA graduate with a Computer Science background. The integration of the two degrees means that he can understand and communicate various concepts effectively. He has a keen interest in programming and is always open to constructive discussion and debate. Creating value motivates him to be successful.