Export USD (Universal Scene Description)

The Universal Scene Description (USD) exporter exports CityEngine scenes into a set of USD files with minimal loss of information, which makes it suitable as an interchange format for further processing of (potentially) large scenes in VFX pipelines. CityEngine layers, object boundaries, and asset instance information are preserved after export. Any PBR materials are exported to the USDPreviewSurface material, which guarantees correct shading in any compatible downstream application without additional material assignment work.

Use cases

  • Focus on compatibility with tools such as SideFX Houdini and its Solaris component, The Foundry Katana, and corresponding USD-compatible renderers.
  • Export of large models with complex rules while retaining shape granularity (no merging of geometry). This allows for edits (for example, move or scale) on individual objects (for example, buildings) in downstream tools without the need to export the whole scene again.
  • Preservation of instances—for example, inserted assets not touched by CGA operations are exported as separate nodes. This allows for limited editing (translate or scale) of these assets in downstream tools.
  • Support for PBR materials via the standard USDPreviewSurface material schema.

Export options

In addition to the general export options, USD has the following option:

File Type

Choose between exporting a hierarchy of USDC files and textures or a single USDZ package.

Layout of exported USD files

For each export session, the USD exporter creates a set of directories and files:

  • <basename>.usdc is the root file with references to the CityEngine layers.
  • The layers directory receives one USD file per involved CityEngine layer. The layer files contain the scene objects (for example, building models), which in turn reference the geometry assets.
  • The assets directory receives one USD file per asset as well as two special files:
    • generated.usdc receives all geometry that is generated by CGA.
    • materials.usdc receives all unique materials.
  • The textures directory receives all texture files referenced by materials.usdc.
USD file layout