CLI Parameter List

Umbra optimization can be configured using various parameters. Parameters generally affect output quality and size, as well as optimization speed. Setting the parameters is discussed in API documentation

All parameters specifying sizes or distances are in meters. The units-to-meters parameter should be specified if the input scene is not using meters.

A parameter may be specified multiple times, with the last time overriding any previous ones.

Some parameters act as shorthand notations for a more complex set of parameters (content-profile in particular). Specifying any of the settings modified by such parameter set individually will override the one specified by the parameter set, regardless of order in which they were specified.

We recommend first-time users to start by specifying content-profile, units-to-meters and feature-size. The parameters are listed roughly in order of importance.

Scene input parameters

Use one to define the location of your scene repository for umbrafication

--input-sha1StringSHA1-identifier of a scene. Use as the input if you have already uploaded your original content to Umbra Cloud.
--input-objStringPath to a single OBJ file or a folder containing multiple OBJ files (including subfolders).
--input-xyzStringPath to a single XYZ file or a folder containing multiple XYZ files (including subfolders).
--input-lasStringPath to a single LAS file or a folder containing multiple LAS files (including subfolders).
--input-geojsonStringPath to a GeoJSON annotation file.
--input-emptyStringEmpty scene.

Scene import parameters

--obj-split-widthFloatnoneSplit .obj on import
--xyz-field-stringString"x y z intensity red green blue"Tells importer how to interpret values in xyz files.
--las-utm-zoneStringSpecify that LAS is georeferenced in some UTM zone
--import-zIsUpBoolfalseEnable if your content has Z as the up-axis.
--import-right-handedBoolfalseEnable if your content is defined in right-handed coordinates
--import-originVec3fnoneDefines custom origin for the imported data. Format is expected to be 3 values, ie. "0 0 0".
--import-rgb-rangeFloat1The highest value RGB color channels can take.

Cloud computation parameters

--api-keyStringYour Umbra API key. Find it from
--scene-nameStringName for the imported scene. Enclose in "".

Generic parameters

--wait-completionBoolfalseHave the command line tool report the umbrafication progress. Otherwise, follow the progress at

Scene properties

--content-profileString"unknown"Sets reasonable default parameters for a specific type of content. Must be one of "dcc" "scanned" or "unknown".
--units-to-metersFloat1.0Ratio for converting input scene units to meters. For example, if your scene is in feet, a value of 0.3048 will work as intended.

Computation properties

Computation controls

--feature-sizefloatnoneThe smallest feature in metric units that should be distinguishable in the umbrafied content.
--geo-transform-helmertdouble[7]noneAdd georeferencing using cx,cx,cy,s,rx,ry,rz Helmert transform, scale is 1 + s / 1000000, rotation is in radians.
--geo-transform-matrixdouble[16]noneAdd georeferencing using 4x4 matrix.
--backface-removalboolfalseAttempt to remove backfacing triangles.
--hdr-outputboolfalseForces 32-bit floating point rgba diffuse texture, overriding any other settings for diffuse format.
--texel-ratiofloat1.0Ratio of texture feature size to geometry feature size.
--vertex-normalsbooltrueToggles output of vertex normals and tangents.

Precomputed ambient occlusion

--aoboolfalseToggles ambient occlusion baking.
--ao-distancefloat0.5Set maximum distance at which ambient occlusion tries to find occluders. Should be small in relation to input scene size.
--ao-intensityfloat1.0Intensity multiplier for ambient occlusion effect. 0 is equivalent to disabling ambient occlusion, while 1.0 is the recommended maximum.

Toggles for texture generation

--texture-diffusebooltrueToggles diffuse texture generation.
--texture-metaindexbooltrueToggles metadata texture generation. Does nothing when no metadata is provided with input.
--texture-metalglossbooltrueToggles metalgloss texture generation.
--texture-normalbooltrueToggles normal texture generation.

Point cloud controls

--point-cloud-compute-featuresboolfalseComputes geometric point features in addition to normals. Used for debug XYZ export.
--point-cloud-connect-radiusfloat0.25Largest distance over which holes in point clouds can be patched. Large values may result in artifacts and are slower to optimize.
--point-cloud-filter-radiusfloat-1.0Normal estimation radius. Point cloud is quantized to 1/16 of this distance. Default: 4 * point-cloud-connect-radius.
--point-cloud-outlier-removal-strengthfloat0.01Aggressiveness of sparse outlier removal. Ranges from 0 to 1, where 0 turns it off. This is dependent on connect radius.
--point-cloud-vertex-normal-radiusfloat-1.0Search distance for vertex normal estimation for point clouds. Default: 4 * point-cloud-connect-radius.