The noise module provides easy access to 1d, 2d, 3d and 4d Perlin noise functions and two derived functions : fractional brownian motion (fbm) and turbulence. Exemple of 2d functions :
Perlin noise | Fractional Brownian Motion | Turbulence |
The sample allows to easily modify the different parameters and see their impact on the noise function.
The Perlin noise is often associated with procedural texture generation and one can wonder what's its use in a roguelike. I personnally use intensively the 1d Perlin noise function as a 'smooth' random number generator. Look at the Perlin noise 2d squared picture and imagine you follow a straight path in this picture. The value of the pixel you're walking on randomly moves between 0 (black) and 1 (white), but always in a smooth way.
The Field Of View toolkit is really basic and doesn't restrain you from using any map format you want. It is based on the algorithm described on the TCOD website. The FOV sample is a mini dungeon in which you can wander to see how the fov behaves. There's also an 'eye-candy' mode with a realist torch flickering effect obtained with 1d perlin noise. Since tonight, TCOD actually uses the fov toolkit from the library.
Now, I have to find the time to compile this on every platforms (eventually including VS2008 / Borland C++ 5.5 targets as requested recently on r.g.r.d). If no major issue occurs, libtcod-1.1 should be out this week-end \o/