Here is a full feature list, if you are interested:
ackhmp.dll feature list- create hmp
- from scratch (width/height, rows/cols)
- from bitmap
- from existing terrain ENTITY*
- copy constructor
- from buffer (WRS compatible)
- saving
- save hmp to file
- save modified terrain entity to file, or re-save original file
- heightfield functions
- bicubic resizing of heightfield
- lod generation
- heightfield to zero or variable
- copy heightfield from/to rowmajor/columnmajor matrix
- info functions
- get lowest/highest coordinate
- get vertex coordinate
- get normal for vertex
- skin functions
- create skins for internal/external skins, D3D material, embedded shader
- get/set/add/remove skins
- entity functions
- create terrain entity from hmp during runtime
- transfer terrain entity shape from/to existing hmp
- normals
- recalculate all normals of a deformed terrain entity
- recalculate normal of a specific vertex of a deformed terrain entity
- get/set vertices (heights)
- raise vertices by offset
- brushes (useful for editing terrains)
- create a brush from BMAP* or bitmap file
- read floating point data from brush at local/world position
- hulls - dynamic terrain hull with bicubic interpolation, that is faster than updating the whole terrain in-engine with c_updatehull!
- Create hull from terrain entity
- modify hull vertex-wise
- vertical tracing (super fast)
- 3D trace (very fast)
- adapt entity to hull (origin or lower Bbox position) – useful for placing entities on ground
- bitmap functions
- save BMAP* as rock-solid TGA
- create mip map BMAP*'s from source BMAP*
- merge 4 greyscale bitmaps as R,G,B and A channel into a variable sized blendmap
- materials
- create MATERIAL* from scatch from float* arrays and effect char*'s
- seeding
- generate a list of position on a hmp by a likelihood map to seed a terrain
- uses average & minimum distances and relaxaxtion parameters