Accidental Noise Library on Google Code
accidental noise library noise perlin
This new reboot is just that: a bit of a reboot. It's a repo now (no featured releases yet) and I'm learning about two things in the process: git repo management and cmake building. I've never really used either, not to any serious extent, but I figure ANL is a small enough project to learn with for now.
I've re-organized the project somewhat. It's now broken down into sub-libraries: Noise (the implicit, or noise-based, modules), RGBA (for the color-based modules), Imaging (for mapping things to 2D buffers for image output and processing), Volume (for mapping noise modules to 3D outputs and generating meshes), Bindings (auto-generated Lua bindings), Builder (obsolete and probably gonna disappear; kinda broken, too) and Framework (to build a Lua-based interpreter environment that includes the bindings and libraries). Additionally, some third party libraries are included in the repo as well, built and statically linked to the Framework exe. These include Lua, Tolua++ and PolyVox.
Given that I don't know CMake at all, outside of blindly using it to build various projects, I've "borrowed" the build structure from the Urho3D project. (Hope you don't mind too much, AgentC) I haven't tested any build except a Mingw-w64 based GCC build, however, so at some point (when I get around to cleaning up the build system) I'll probably need to test and fix things there as well. In particular, I have no effing idea what any of the MSVC, Android, iOS, etc... build flags and requirements do/are. It's likely I don't even need any of that shit, given that this project is nowhere near the complexity of Urho3D. Use at your own risk, and all that. If anyone does try a build different than GCC, and stuff breaks, let me know.
The Framework application builds a Lua interpreter, and borrows the code from the Lua project's built-in interpreter. It links to the ANL libraries and includes bindings to ANL and (currently very rudimentary) proxy stuff for using PolyVox to visualize volumes of noise. (This part is due to be fleshed out at some point, as currently it stands as merely two functions for building a cubic or smooth marching-cubes mesh from a 3D buffer of noise.)
I don't work on this a whole lot, just bits and pieces here and there throughout the day when work is slower, and I am still working on Goblinson Crusoe things as well, so don't expect a too-active development churn here. I am gradually re-working the documentation and examples, but once again I'm not really cut out to be a maintainer given my lack of discipline and my lack of project management skill.