HELIX Docs
CLI & AI toolsCommand reference

helix terrain

Author the ground a scene world stands on: generate or import a landform, bake its splats, inspect the result

CLI version 0.1.27-helix3.551. Run helix terrain --help for the text your installed build prints.

helix terrain

Author the ground a scene world stands on: generate or import a landform, bake its splats, inspect the result

helix terrain <command>

helix terrain generate

Generate a deterministic landform and write a terrain source folder (heights, splats, terrain.json)

helix terrain generate [options]
OptionDescription
--out <dir>terrain source folder to write (required)
--preset <id>built-in preset id, or a path to a preset JSON file (required)
--seed <n>landform seed; the same seed and options always produce the same bytes (default "1")
--tiles <WxH>grid size in 256 m tiles, e.g. 4x4 (default 4x4 = 1 km x 1 km)
--size-km <n>square extent in kilometres, rounded to whole 256 m tiles
--sea-level <m>flood the landform to this height in metres
--holes <mask.png>greyscale mask; pixels above mid-grey become holes in the ground

helix terrain import

Import a heightmap into a terrain source folder, resampled onto the authoring grid

helix terrain import [options] <file>
ArgumentRequiredDescription
fileyes16-bit PNG, raw R16, or raw float32 heightmap
OptionDescription
--out <dir>terrain source folder to write (required)
--preset <id>built-in preset id, or a path to a preset JSON file, to paint it with (required)
--metres-per-sample <n>the SOURCE's ground resolution in metres (required)
--height-range <MIN,MAX>metres the darkest and brightest sample stand for, e.g. 0,900; png16 and r16 only
--output-metres-per-sample <n>metres per sample of the authoring grid: 0.5, 1, 2, 4 or 8 (default 1)
--height-offset <m>metres added to every decoded height, e.g. -507 to put that sea level on zero
--origin <X,Z>world metres of sample (0, 0); omitted, the grid is centred on the origin
--samples <W|WxH>samples per row of a raw r16/f32 file; omitted, the file must be square
--tiles <WxH>grid size in 257-sample tiles; omitted, the source extent picks it
--format <format>png16, r16 or f32; omitted, the file extension picks it
--resample <mode>cubic (default: the slope stays continuous across the source samples) or bilinear
--splat <png>RGBA8 splat covering the grid extent; its channels replace the preset rules they are bound to
--splat-roles <map>which role each splat channel carries, e.g. R=base,G=low,B=slope

helix terrain bake

Re-paint an existing terrain source folder in place: same heights, new splats from the preset

helix terrain bake [options] <dir>
ArgumentRequiredDescription
diryesterrain source folder holding terrain.json
OptionDescription
--preset <id-or-path>built-in preset id, or a path to a preset JSON file (required)
--seed <n>seed of the bake's per-role noise, not the landform's

helix terrain inspect

Report what a terrain source folder would ship: extent, tiles, bytes, layer folding and every warning

helix terrain inspect [options] <dir>
ArgumentRequiredDescription
diryesterrain source folder holding terrain.json
OptionDescription
--jsonmachine-readable report

On this page