Skip to content

USDChecker Validator Catalog

This page is the reference catalog of usdchecker validators as seen by Preflight’s local OpenUSD toolchain.

  • Generated on: February 11, 2026
  • Source command: usdchecker --dumpRules <input.usd|usdz>
  • Why this page exists: upstream OpenUSD docs are canonical for APIs, and this catalog helps map validator IDs to Preflight diagnostics/fixes.

Preflight app validation now prefers in-process internal strict checks over spawning an external usdchecker process.

  • This catalog remains useful for validator parity analysis and rule-to-fix mapping.
  • App UI, MCP, and preflighttool validate diagnostics are produced by Preflight’s internal shared validation engine.
  • Validator availability can vary by OpenUSD version and installed validator plugins.
  • Validator docs in this output are what users actually get during validation.
  • Preflight can map these validator IDs to surgery actions and user-facing guidance.
Validator IDDocKeywordsSchema TypesisSuite
usdGeomValidators:StageMetadataCheckerAll stages must declare their upAxis and metersPerUnit.UsdGeomValidators-False
usdGeomValidators:SubsetFamiliesValidates all of the geom subset families authored beneath an Imageable prim.UsdGeomValidators, UsdGeomSubsetUsdGeomImageableFalse
usdGeomValidators:SubsetParentIsImageableValidates that GeomSubset prims are direct descendants of an Imageable prim.UsdGeomValidators, UsdGeomSubsetUsdGeomSubsetFalse
usdShadeValidators:EncapsulationRulesValidatorConnectable prims (e.g. Shader, Material, etc) can only be nested inside other Container-like Connectable prims. Container-like prims include Material, NodeGraph, Light, LightFilter. Shader is not a Container-like prim.UsdShadeValidators-False
usdShadeValidators:MaterialBindingApiAppliedValidatorVerify a prim has the MaterialBindingAPI applied if it has a material binding relationship.UsdShadeValidators-False
usdShadeValidators:MaterialBindingCollectionValidatorVerify that a collection defining a material binding is well-formed.UsdShadeValidatorsMaterialBindingAPIFalse
usdShadeValidators:MaterialBindingRelationshipsAll properties named material:binding or in that namespace should be relationships.UsdShadeValidators-False
usdShadeValidators:NormalMapTextureValidatorUsdUVTexture nodes that feed inputs:normals of a UsdPreviewSurface must ensure correct range mapping and color space.UsdShadeValidatorsUsdShadeShaderFalse
usdShadeValidators:ShaderSdrComplianceShader prim input types must conform to expected sdf types in the corresponding SDR shader.UsdShadeValidatorsUsdShadeShaderFalse
usdShadeValidators:SubsetMaterialBindFamilyNameGeom subsets with authored material bindings should have the materialBind family name.UsdShadeValidators, UsdGeomSubsetUsdGeomSubsetFalse
usdShadeValidators:SubsetsMaterialBindFamilyGeom subsets of the materialBind family should have a restricted family type.UsdShadeValidators, UsdGeomSubsetUsdGeomImageableFalse
usdSkelValidators:SkelBindingApiAppliedValidatorVerify a prim has the SkelBindingAPI applied if it has a UsdSkelBinding property.UsdSkelValidators-False
usdSkelValidators:SkelBindingApiValidatorVerify that a prim with SkelBindingAPI applied is either of SkelRoot type or parented by a SkelRoot prim.UsdSkelValidatorsUsdSkelBindingAPIFalse
usdUtilsValidators:MissingReferenceValidatorThe composed USD stage should not contain unresolvable asset dependencies across variants when using the default resolver.UsdUtilsValidators-False
usdValidation:CompositionErrorTestProvides composition errors generated while composing the stage.UsdCoreValidators-False
usdValidation:StageMetadataCheckerStages consumed as referenceable assets must have a valid defaultPrim.UsdCoreValidators-False

Use any representative asset and regenerate:

Terminal window
usdchecker --dumpRules "/absolute/path/to/asset.usdz"

Then update this page when:

  • OpenUSD version changes
  • Preflight validator plugins/rules change
  • Validation behavior differences are observed in production