CityEngine 2022.0 Release Notes


New welcome screen and Get Started experience

  • CityEngine introduces the new Get Started screen. This guides new users directly to the CityEngine Tour and helps familiarize them with key CityEngine features.
  • Redesigned the welcome screen to better fit the current UI theme.
  • The welcome screen now features links to the most common CityEngine help resources.
  • CityEngine now installs the ESRI.lib Webstyles assets, such as vegetation, automatically in new workspaces, and they no longer need to be downloaded manually.

Drawing and editing of shapes and streets

New Lasso Selection tool

  • Added the new Lasso Selection tool, which makes the selection of multiple objects in the viewport easier when they do not fit into a rectangle.

Transform tools

  • Added the new Transform Individually tool option. It allows you to rotate or scale multiple objects around their respective center points.
  • Improved the default location of the transform tool handles on a selected shape.
  • Fixed a bug in which transforming faces with holes led to unexpected results.
  • Fixed a bug in which the coloring of the Transform Scale tool handle was incorrect.

Custom reference systems

Custom reference systems were added in 2021.1 and are significantly enhanced for this release:

  • Integrated the custom reference system tool into the transform tools for ease of use; it is no longer a separate tool.
  • Loading a custom reference system no longer affects the position of the transform handle. The position is always defined by the current selection.
  • When using a temporary reference system, switching to another tool doesn't reset the current reference system to the default coordinate system.
  • Renamed the default custom reference systems: World Coordinate System and Object Coordinate System are now named World and Object.
  • Fixed a bug in which an incorrect reference system was displayed in the tool options after the user edited the current one without saving.
  • Fixed a bug in which the orientation of the transform tools was adjusted unexpectedly after a selection change when working with custom reference systems.

Street editing

  • When selecting a street or sidewalk shape, the matching node or segment is now also selected automatically. This allows for quicker selection, attribute control, and editing with the transform tools.
  • You can now add nodes to segments by double-clicking the Freehand Street Creation tool, as with the Polygonal Street Creation tool.
  • Fixed a bug in which curved street segments didn't scale as expected when using the Transform Scale tool.
  • Fixed a bug in which the Transform Move tool was activated unexpectedly when the selection contained only blocks.

Shape drawing

  • To better support typical drawing workflows, manually drawn shapes are selected automatically after creation. This also applies when appending new shapes to existing ones. These changes improve the visual feedback.
  • The Polygonal Shape Creation tool now consistently creates intersection points when drawing edges that intersect with existing ones. The creation of intersection points can be prevented by locking the existing shape or shape layer.
  • In the shape creation tools, the Automatic Closing tool option is now disabled rather than deactivated when the Force New Shape tool option is activated.
  • The Force New Shape tool option is now available for the Circular Shape Creation and Rectangular Shape Creation drawing tools.
  • Drawing a new shape inside another shape adds the new shape as a hole to the other shape independent of the current layer selection.
  • Fixed a bug in which drawing on the inner sides of a volume with holes caused unexpected results.
  • Fixed a bug in which unintended vertices were created with the Polygonal Shape Creation tool when moving the mouse quickly.

Push Pull tool 

  • Improved the undo/redo functionality of the Push Pull tool and Polygonal Shape Creation tool.
  • Fixed a bug in which the Push Pull tool altered the current selection.
  • Fixed a bug in which the Push Pull tool caused unexpected visual artifacts.


  • The Street Inspector has been simplified: different object types are now grouped as Nodes, Segments, Sidewalks, Blocks, and Lots.
  • For each street object type, parameters have been added, rearranged, and renamed.
  • Street object parameters now have more descriptive ToolTips.
  • The Inspector tabs feature new icons for each object type.
  • Fixed a bug in which the window size of the style manager was too small.

Miscellaneous UI improvements

  • Fixed a bug in which the Get Map Data dialog box closed unexpectedly after attempting to retrieve map data based on an extent set that is too small.
  • Improved the support for HiDPI screens. This affects UI elements such as buttons, icons, and dialog boxes across the entire UI.
  • You can now preview CGA material files (*.cgamat) and material definitions for OBJ files (*.mtl) in the Navigator.
  • Optimized the position of the application window on the first start-up.
  • For better visual differentiation of combo boxes, the drop-down arrow is now always visible.
  • Selection updates are now faster when a scene contains large selection sets.
  • Fixed a bug in which the Add/Update Selection set menu item was unavailable.
  • Fixed a bug in which closing and reopening a 3D Viewport caused unexpected rendering artifacts.
  • Improved the rendering of the Terrain Editing tool handle.
  • Linux—Fixed rendering issues in the CGA style manager.
  • Fixed a bug in which closing the Measurement tool sometimes caused an error.
  • Fixed a bug in which switching between tools caused an error in rare cases.
  • Improved translations in the Preferences menu.
  • Added missing translations for various terms in the UI.

Integration with ArcGIS Urban

  • You can now save parcel edits back to ArcGIS Urban.

    Zoning and Overlays are kept unaltered.

  • Sped up the import of ArcGIS Urban plans.
  • In the Navigator, the ArcGIS Urban plans and projects are now grouped under their Urban model.
  • Fixed a bug that caused alignment attributes of plausible buildings not to be applied.
  • Fixed a bug that caused existing buildings not to be masked out for redeveloped building types.

Import and export

Unreal Exporter—Support for Twinmotion

  • The Datasmith exporter gained new options to ensure Twinmotion compatibility and usage of Unreal Base Materials.
  • The .su, .sv, .tu, .tv, and .rw material map attributes (texture transforms) are now exported into Datasmith files and used in the Unreal shader.
  • Improved the alignment of multiple terrains exported at once.
  • The terrain texture no longer repeats at the borders.
  • Fixed an issue in which the Unreal Landscape Actor scale was set incorrectly for terrains with negative altitudes.
  • Fixed a bug that led to undefined behavior when mixing textured and nontextured geometry.
  • Corrected the normal map amount and opacity related attributes for Base Materials.

BIM and CAD formats

  • Improved the quality of the geometry triangulation in the DWG and the IFC importers.
  • Fixed a crash in the IFC Importer when the file contains degenerate polygons.
  • The IFC Exporter now writes application and author information.


  • Fixed a crash that occurred when exporting a shape with some scene coordinate systems.


  • Improved the performance of the importer.
  • Fixed a bug that occurred when reading material values from the MTL file on some localized systems.
  • The OBJ Exporter correctly legalizes non-ASCII characters in texture names. Previously, this could lead to broken MTL definitions.
  • The OBJ Importer is more robust when referenced MTL files contain non-ASCII characters in their path and the OBJ was written with an unknown non-ASCII encoding. These are now resolved with smart heuristics.


  • Implemented a best-effort approach for reading partly unknown assets instead of canceling. CityEngine now reads empty mesh nodes with nonempty child mesh nodes, assets with unknown materials or shaders, and assets with both point instancers and other geometries.
  • Fixed a crash that occurred when materials did not have a shader ID attribute.
  • Fixed a bug in which the wrong version of the TBB dependency was loaded on Linux.


  • CityEngine now supports reading and writing the texture transform extension.
  • The exporter keeps the format of .jpg images on export instead of converting all images to .png.
  • The importer now also loads UV coordinates for untextured faces. This allows you to texture the asset in CGA.


  • The FBX and COLLADA importers now correctly read non-ASCII names of materials, meshes, and textures.
  • The VUE Exporter now supports non-ASCII strings in file names, layer names, and material names.

All importers

  • Fixed a bug in which textures with non-ASCII characters in their path could not be read.

Procedural modeling language (CGA)

  • Added new extension points. They are rules that can be redefined in import statements, in the same way as attributes. They provide a powerful tool to configure the behavior of imported rule files.
  • The new start keyword allows you to mark a rule as the start rule of a ruleset. These rules can be invoked with the start identifier instead of their actual name. This generalizes the usage of imported rule files.
  • Improved the behavior of the setback and shapeLUO operations. The appearance of unwanted gaps is now avoided. The results better reflect how setbacks are applied in urban environments. Additionally, on shapes with holes, incorrect results were fixed and performance was improved.
  • The resetMaterial operation now has an option to reset the material of the geometry. The readMaterial function now correctly reads map entries with empty strings.
  • Improved the numerical precision for assets with very large coordinates on insert.
  • Fixed a crash that occurred working with the alignScopeToGeometry operation for geometries with zero area.
  • Fixed incorrect remainder for innerRectangle operation.
  • The offset operation now better supports shapes with collinear vertices.
  • Fixed various issues in the CGA Compiler.

See the CGA changelog for a comprehensive list of changes and bug fixes.


  • Added the Go to definition functionality to the Python editor.
  • You can now export ArcGIS 360 VR experiences through Python.
  • Added support for setting terrain layer options through the Python API.


  • Windows 11 and RedHat Enterprise Linux 8 (and compatible) are now officially supported.
  • Rekeyed the single and concurrent use licenses. A new license is necessary to run CityEngine 2022.0.
  • Improved the error message when ArcGIS Online users try to authorize CityEngine without a license.
  • New projects by default use UTF-8 encoding for contained files. Improved the handling of file encodings throughout CityEngine.
  • Introduced the new CITYENGINE_LIB_MINIMAL environment variable to control the size of the installed ESRI.lib. This helps project management software, such as Autodesk Shotgun, keep the size of user workspaces small. Set the CITYENGINE_LIB_MINIMAL variable to 1.
  • Fixed a bug that prevented the publishing of scene layer packages named with non-ASCII characters.
  • Linux—Fixed a bug that caused the application to crash when using the toolbar to sign in to a portal.
  • Linux—Fixed bugs in browser views, such as Named User Login, ArcGIS Login, Dashboard, Get Map Data, and others. This includes the no keyboard input possible bug.



  • The Linux installer now checks for glibc 2.17 or later and gtk 3.20 or later. The OpenGL check remains at 4.1 or later.
  • The installer now sets the default license type to Named User instead of Single Use.

Included third-party packages

  • Updated the following third-party packages:

PackageNew version















Open Design Alliance