Export USD (Universal Scene Description)

You can export CityEngine scenes into a set of Universal Scene Description (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

The following are use cases for exporting USD data:

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

Export options

In addition to some of the general export options, the following options are available for USD export:

Mesh Merging

Choose between creating one mesh per material per object, or one mesh per object with materials being mapped to polygon groups.

File Type

Choose between exporting a hierarchy of .usdc files and textures or a single .usdz package.

Exported file layout

For each USD export session, a set of directories and files is created:

  • <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 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