Skip to main content

mtlx render

mtlx render​

Render a .mtlx or .mtlx.zip file to an image (png, jpg, webp or avif) using a local headless browser

Usage​

mtlx render <input> --output <output> [--format <format>] [--view <view>]... [--geometry <geometry>] [--material <material>] [--background <background>] [--size <size>] [--ibl <ibl>] [--exposure <exposure>] [--zoom <zoom>] [--elevation <elevation>] [--center <center>] [--supersample] [--channel <channel>] [--uv-scale <uv-scale>] [--grid <grid>] [--crop <crop>] [--mirror <mirror>] [--range <range>] [--browser <browser>] [--timeout <timeout>]
ArgumentTypeRequiredDescription
inputstringYesPath to .mtlx or .mtlx.zip file
FlagTypeRequiredDescription
--outputstringYesImage file to write; .png, .jpg, .webp or .avif picks the format. With several --view, an image path gets a contact sheet; any other path (or an existing directory, or one ending in /) gets . files; Aliases: o
--formatstringNoFormat of the files when --output is a directory (an image --output uses its extension); Choices: png, jpg, webp, avif; Default: png
--viewstringNoNamed views rendered in one browser session: plane, closeup, detail, grazing, sphere, totem, cube, or plane: for a head-on plane of that width (1 UV = 1 m); Variadic
--geometrystringNoPreview geometry; Aliases: g; Choices: totem, sphere, cube, plane; Default: totem
--materialstringNoMaterial name (default: last material in the document); Aliases: m
--backgroundstringNoBackdrop behind the model; none keeps the IBL lighting but leaves the PNG transparent; Aliases: b; Choices: none, environment; Default: none
--sizenumberNoImage width and height in pixels; Aliases: s; Default: 800
--iblstringNoLighting: studio (generated neutral HDR room), bridge (outdoor, shows relief, green-yellow cast), sun (hard midday sun, strongest relief), overcast (soft medium daylight, near neutral), neutral (colorless grey studio, for judging albedo), strips (dark room with sharp softbox strips, for judging gloss and roughness breakup), dusk (warm, medium-dark street), night (very dark); Choices: studio, bridge, sun, overcast, neutral, strips, dusk, night; Default: studio
--exposurenumberNoExposure in stops (-2..2); Aliases: e; Default: 0
--zoomnumberNoCamera zoom factor for close-ups (1 = default framing); Aliases: z
--elevationnumberNoCamera elevation in degrees (default 35; 0 = head-on to the plane)
--centerstringNoUV point the plane view aims at, e.g. 0.25,0.7
--supersamplebooleanNoRender at 2x and downsample (smoother thin features); Default: false
--channelstringNoShow one nodegraph node unlit (floats grey, vectors as rgb) and print its value statistics
--uv-scalenumberNoMultiply every texcoord by N, so the 1 m plane shows N × N m (layout checks over several meters)
--gridnumberNoOverlay UV grid lines every N meters (with labels) on head-on plane views, e.g. 0.1
--cropstringNoCrop x,y,size pixels of each view and enlarge it to --size (nearest neighbour) for pixel-level inspection
--mirrorstringNoPrint how symmetric each head-on plane view is about a UV line, e.g. u=0.15 or v=0.5 (book-match checks)
--rangestringNoValue range mapped to black..white for --channel, e.g. -0.003,0.002 (default 0,1)
--browserstringNoChromium-based browser executable (default: installed Chrome, Edge, or Playwright Chromium)
--timeoutnumberNoSeconds to wait for the material to compile and each view to render; Default: 60