Command Line Interface Tool#
Usd Optimize provides a command line interface (CLI) tool under
bin/usdOptimize that allows you to run optimization operations on USD files
without writing any code.
Note
On Windows, run bin\usdOptimize.bat, not usdOptimize.exe.
The .bat sets up the library path; the bare .exe exits
-1073741515 (STATUS_DLL_NOT_FOUND). Name it explicitly, since
PATHEXT resolves .exe first.
CLI usage is as follows:
Note
The native CLI runs the built-in (C++) operations only, which is why
the operation list below is a subset of the full Operations catalog.
The Python-plugin operations (pythonScript, deleteHiddenPrims,
removeUntypedPrims, moveMaterials) are unavailable here because the
CLI binary does not initialize a Python interpreter; use the usd-optimize
Python wheel / bindings to run them.
Usage: usdOptimize [OPTIONS] input-stage
Required Args:
-i [ --input ] arg The input stage to read
Optional Args:
-h [ --help ] Print this help
-h [ --help ] operation Print help specific to an operation
-a [ --argument ] argument=value Specify an argument for an operation, along with its value. Any arguments apply
to the most recent operation that was specified. Array values can be specified by
using a comma separated list.
-an [ --analysis ] Run in analysis mode (unsupported operations will be skipped)
-c [ --config ] arg JSON commands file
-fl [ --flatten ] If enabled, flattens the stage before outputting, otherwise only exports the root
layer.
-j [ --json ] filename Write any operation configuration to the specified JSON file
-o [ --operation ] operation Add an operation. Multiple operations can be specified, and will execute in the
order they are provided. Adding arguments will apply to the most recently
specified operation
-r [ --report ] If enabled, generate a report describing what was done, warnings, etc
-s [ --stats ] Capture stage stats before/after operations
-rp [ --relativePaths ] After exporting a stage, check for any asset paths that can be made relative
-st [ --singleThreaded ] Disable multi-threading in operations that support this option
-v [ --verbose ] Enables verbose mode (extra stats, more logging, etc)
-w [ --write ] filename The output stage to write
Available Operations:
boxClip computeExtents countVertices decimateMeshes
deduplicateGeometry deduplicateHierarchies deletePrims diceMeshes
editStageMetrics findCoincidingGeometry findFlatHierarchies findOccludedMeshes
findOverlappingMeshes fitPrimitives flattenHierarchy generateAtlasUVs
generateNormals generateProjectionUVs generateScene manifoldMeshes
merge mergeVertices meshCleanup optimizeMaterials
optimizePrimvars optimizeSkelRoots optimizeTimeSamples organizePrototypes
pivot primitivesToMeshes printStats pruneLeaves
remeshMeshes removeAttributes removePrims removeSmallGeometry
removeUnusedUVs rtxMeshCount shrinkwrap sparseMeshes
splitMeshes subdivideMeshes triangulateMeshes utilityFunction