AF-Plugins

logo

Brief Description and Genesis

Leveller the terrain editor by Ray Gardener has been designed to include a plugin extension modules architecture which let you write software modules which extends the functionality of the application (you can create several purpose modules such as import/export modules and terrain filtering modules).

The modules are C or C++ programs which conforms to the Leveller Plugin API documented in the Leveller Plugin SDK. Since early beta versions (around v.0.5) I missed some features in the main app, so when the plugin system appeared I downloaded the SDK and played with it creating Noise Adder the first plugin of the collection. Some modifications and updates were made to the API after I made some suggestions arising from my experience with Noise Adder. The API which has now reached version 7 and undergone importants functionality additions.

After a period of experiments with smoothing algorithms (I wasn\’t satisfied with the simple average offered by the smooth command of Leveller in versions 1.005 and below) when I created the Soften,Heavy Smooth and Pseudo Gaussian Smooth filters I concentrated on Perlin fractal noise and its variations creating the Fractal Noise Adder plugin (the far more complicated than the others). The Gaussian Hill and Flatten Edges plugins came from a port of some of J.Beale HF-Lab routines in Leveller plugin format (this great program contains other powerful functions and could be considered a tank of potential future plugins).

After the release of Leveller 2.0 some of the previous plugins has become less useful cause their functionality has either been included or superseded by similar functions in the base application. Therefore I planned to trim down the collection to those handful of really useful plugins upon the successive release.
I\’ve recently had a bunch of spare time so I worked a bit more on the Fractal Noise Adder plugin and fixed a small bug in the Flatten Edges one so time for a new releas has come, in the new collection the smoothing plugins and the gaussian hill one have been eliminated. There has been a parameters name change in the new version of the Fractal Noise Adder plugins, the tips below have been updated accordingly.

The Noise Adder and Flatten Edges plugins use some code taken from the source of HF-Lab by J.Beale which is available under the Gnu Public License.

The Fractal Noise Adder plugin uses code from the book “Texturing & Modeling: a procedural approach, 2nd Edition” by D.Ebert, D.Peachey, K.Perlin, F.K.Musgrave, S.Worley.

Plug-ins

Download

Documentation is included in the plugins distribution archive. In order to view the docs as a help file when invoked from the About Plugins dialog in Leveller (pressing the Help button) unzip the archive in the Leveller installation directory preserving the directory structure (set the appropriate switch in your archive extractor).
The sources consist of a Visual C++ 6.0 workspace designed to output the results of the compilation straight in the Leveller plugins subdirectory (of course the path should be changed to match the Leveller installation on your machine) and to use Leveller as the debugging executable (the plugins are infact regular DLLs with a different extension).

  • Plugins (Zip archive - 34 Kb)
  • Sources (VisualC++ 6.0 project - 68 Kb)

Comments are closed.