• entries
    436
  • comments
    1179
  • views
    764046

libnoise

Sign in to follow this  

1117 views

Somewhere (I can't remember where) I came across a McLinkerson to the library libnoise, a noise-related library I hadn't seen before despite my extensive googling. It's actually pretty decent, and I like the way the library chains various classes to create a sort of noise cascade. You attach sources and modifiers together in sequence, then simply call GetValue() from the last in the sequence to get the final noise value for a 3-tuple input coordinate. Modifiers include blending and selecting, scaling, clamping, etc... Pretty nifty. The library includes a demo application that procedurally generates an entire planet from chained noise sequences, which is by anybody's standard way cool. It's got oceans, rivers, badlands, plains... you name it. They've got a sequence diagram showing how the modules are chained together that is pretty informative. Some really cool stuff. Check it out

So, I've sort of retired my current (fairly crude) perlin noise generation stuff to the background, and have written code to expose the libnoise modules to Lua. Works pretty well, I just need to write the final simple glue code to build heightmap and tilemap buffers from final noise outputs. Easy as caek. Or pi, whichever you prefer. I like the way the library was designed specifically with this chaining method in mind; it makes some of the stuff I do quite a bit simpler.
Sign in to follow this  


5 Comments


Recommended Comments

ooo that looks pretty cool, once i'm done with my current manic writing I'm going too look into this, damn good find that man!

Share this comment


Link to comment
The png that shows the chained sequence of noise modules they used for that planet is here. Pretty cool.

Share this comment


Link to comment
Wow, libnoise is seriously impressive. Its (kinda) similar to something I was tinkering with a while ago, but their method for combining different layers of noise is much more flexible than the (rather hardcoded) methods I was using.

Share this comment


Link to comment

Hi I know you posted this 3,287 days ago but would you consider releasing your lua bindings?

Share this comment


Link to comment

I could try to find a backup somewhere, but it's been many years and many harddrive replacements since I last used libnoise.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now