# Abstract

Height-Slang is a language for the definition of heightmaps [0]. It is used in mkheightmap, itself being a powerfull tool (a part of the puzzle of picogen [1]) to generate heightmaps on the command-line.

# Height-Slang Reference

The next sections show the currently supported instructions of height-slang, following this convention:

• A greek letter (, , , etc.) indicates an arbitrary expression
• Each item looks like

or

Note that there is only one data type in Height-Slang: real. This means we have to introduce kludges to anyway be able to solve boolean expressions:

A real-value is considered true, if and only if , else it is considered false

This rule applies to the first parameter of the "?"-function, and to any parameter of the logical functions "and", "or", "xor", "not". Additionaly, a value of either 1.0 (true) or 0.0 (false) is returned by the comparison functions, so they can safely be used for the "?"-function as the first parameter, but also as a "on/off"-factor in general expressions (that leads to a kind of branch free code).

## functions with two parameters

• (note that is meant to be "^" on your keyboard)

## configurable functions with two parameters

### LayeredNoise

    ([2 LayeredNoise           seed(<positive integer>)                                <default: 42>          frequency(<positive integer>)                           <default: 2>          layercount(<positive integer>)                          <default: 4>                  noisemapfilter(<nearest|bilinear>)                      <default: bilinear>          persistence(<1-dimensional HS expression>)              <default: 0.5>          levelEvaluationFunction(<1-dimensional HS expression>)) <default: x>     ] parameter_a parameter_b    )            

# references

 0: http://en.wikipedia.org/wiki/Heightmap 1: http://picogen.org