--mtcpp
<count>Cap the per-plate model-part triangle count at the supplied limit, aborting the entire process with a distinct error code before slicing begins if any plate exceeds it; omitting the flag or passing 0 disables the check entirely, and the built-in config default of one million is never applied automatically.
Details
--mtcpp sets a per-plate triangle (facet) ceiling that the slicer enforces before slicing begins. After loading the 3MF and resolving which instances fall fully inside the build volume, the slicer accumulates the raw facet count from every mesh volume flagged as a model part on that plate, doing so per-instance: each fully-inside instance independently contributes the triangle counts of all model-part volumes belonging to its parent object. Modifier volumes, support enforcers, support blockers, and negative volumes are excluded from the tally. If the accumulated total exceeds the supplied <count>, the process logs an error and exits immediately with a distinct error code, without producing output for any plate.
The default value baked into the config definition is 1000000 (one million triangles). The ceiling check is disabled by default because the internal guard starts at zero and is only armed when the flag is explicitly supplied on the command line. Omitting --mtcpp entirely therefore disables the check — the config-level default of one million is never applied automatically. Any positive integer activates the ceiling; passing 0 explicitly also disables it. The value is unitless — it is a raw triangle count, not a file-size or memory measure.
The flag pairs naturally with --mstpp (maximum slicing time per plate in seconds), which applies an analogous ceiling based on actual elapsed wall time measured after slicing completes. --mtcpp acts before slicing begins and can prevent committing compute resources to an oversized job; --mstpp acts after slicing and aborts if actual duration exceeded the limit. Both record a distinct exit reason that lets a calling process identify the cause without inspecting the 3MF geometry or timing logs directly.
Watch out for
- ▲ The triangle count accumulates per-instance, not per-object. Multiple copies (instances) of the same mesh each contribute their full model-part triangle count to the plate total, so a plate with several duplicates of a moderately complex object can trip the limit even if no single mesh is large.
- ▲ Omitting `--mtcpp` entirely disables the check; `--mtcpp 0` also disables it. The one-million default lives only in the config definition and is not applied to the internal guard unless the flag is explicitly passed.
- ▲ Instances that are partly outside the build volume cause an earlier hard exit before the triangle count step is reached. Only instances the slicer classifies as fully inside contribute to the tally.
Sign up for free today
No credit card required. Connect unlimited printers and get production automation running in minutes.