This is an old revision of the document!
The Editable Terrain Manager is an addon library for OGRE which manages and displays terrain based on heightmap data. It can be used as a replacement for the Terrain Scene Manager, but its main advantage is the edit possibility for the terrain: You can deform and set the terrain heights in real time, as you would need to if you are developing an editor application. In addition, the library also has means to support editable splatting, probably the current standard for detailed terrain texturing.
All of the parts have been designed to be as flexible as possible and do not even depend upon each other. That means you don't need to use splatting if you don't want to - or you can use that part with a different terrain renderer. Unlike OGRE's TSM, it's not a scene manager, either, so you could (in theory) choose whatever scene manager you like. All its headers are light-weight, using the PIMPL idiom to hide costly implementation details.
There are currently no precompiled binaries available. You will have to compile it from code yourself. The library was tested against OGRE v1.4.x. Buildfiles are included for Visual Studio 2005 and CodeBlocks (for MinGW and GCC/Linux). A very basic Makefile for Linux is also included.
Get the source code here: Editable Terrain Manager v2.2 sources
ETM is released under the terms of the GPL v2 with runtime exception. This means that you can use the library free of charge or any other obligation in any of your projects, be they open or closed source, commercial or not. You can link dynamically or statically, whatever you like. Only if you modify the library itself, then you must release those changes under the terms of the GPL.
Included in the source code is a demo application which I suggest you check out. It demonstrates most of the library's features, and from there you should be able to figure the rest out. A function reference is included as well, but you can also find it online here: ETM API reference I've also written on overview over the components of the library, which you can find here: ETM Overview