I'm looking for a library that can generate coherent noise, useful for terrain generation, and ideally also offers facilities for combining and transforming the generated noise.
In my research, I found libnoise to be the most feature-complete library that can generate, modify and combine noise output in a nice, modular architecture. But I'm afraid it looks like it hasn't been actively maintained for a couple of years now.
It also doesn't offer 2D or 1D noise: Although I can clearly just use the 3D facilities to generate 2D/1D noise easily, this seems a bit overkill, and a waste of resources.
Most other libraries that I found have a lower-level aproach, and simply generate Perlin Noise, without offering facilities such as modifiers, combinators and selectors, which all have to be implemented by hand.
Is there such a library? I'm mostly interested in C++, but C libraries are welcome as well.