What's new in CityEngine 2023.0


Be sure to read the CityEngine 2023.0 release notes for all the details on new features, enhancements, and bug fixes. Visit My Esri to upgrade to CityEngine 2023.0.

Are you new to CityEngine? Try it out with a fully-functional free-trial version.


More basemaps and vector tiles in Get Map Data

Vector tiles in Get Map Data

You now have a much larger selection of basemaps to choose from in Get Map Data. Imagery and vector tile basemaps in ArcGIS Online or the active portal's basemap gallery are available for import (previously, these were limited to Imagery, Streets, Topographic, Light Gray Canvas, or Dark Gray Canvas).

You can customize your import by excluding individual layers of the chosen basemap.


More performance in the Viewport: Adaptive terrain rendering

Adaptive terrain editing

Terrain rendering performance is dramatically increased through adaptive rendering. Terrains are now always rendered at maximum resolution. There is no need anymore to manually set the resolution of elevation maps in order to have rendering at interactive rates.

The resolution field in the Terrain Inspector is removed and high-res elevation maps are not limited to 1K anymore by default.


New brush for terrain editing

Terrain Smooth Brush

In addition to the Terrain Edit Brush and Terrain Reset Brush, there is now a Terrain Smooth Brush that allows the smoothing of hard edges and artifacts in the original elevation data or after manual edits.


Dynamic imports in CGA

Dynamic imports

With CityEngine 2023.0, we introduce a new way to use instances of imported rulesets.

On import, rulesets are “instantiated” once, meaning their attributes are initialized, depending on override parameters in the import statement. The new dynamic imports feature allows you to temporarily instantiate (and therefore parameterize) a ruleset at any place in the code. The temporary ruleset instance can be parameterized with values only available at runtime and allows for using a rule in the ruleset once.

This gives you better flexibility for reusing and customizing rule files and modularizing your CGA code.

Check the new dynamic imports tutorial for an example; the import statement in the CGA reference for more details; and the CGA changelog for more information on improvements in CGA.


ArcGIS Urban Integration: Import scenarios into CityEngine

Get changes from ArcGIS Urban

In CityEngine 2022.1, we introduced a new UI to save changes back to ArcGIS Urban . Now, it’s possible to go the other way around: ArcGIS Urban scenes can now be updated per scenario in CityEngine using the changes made in ArcGIS Urban.

We also made improvements to the search in the Urban tab of the Navigator: You can search for ArcGIS Urban models and plans by their IDs and help you find specific items. Filter options are aligned with those from the start page in ArcGIS Urban allowing you to filter between My Content, My Groups, and My Organization. The filter settings are applied directly to the current search result.


Clipping planes for bookmarks

 Clipping planes

We added clipping planes to the bookmarks. This feature can be activated in the Bookmark Inspector. It allows you to create street section views for example, in which the rendering in the Viewport is limited to a specific range.


New low-poly trees in Esri.lib

Low-poly trees

CityEngine comes with an extensive set of rules and assets free of use in your projects. We added a new set of low-poly trees to Esri.lib. The low-poly trees are stylized versions of the realistic vegetation models and, as the name says, have a reduced polygon count.


New and refurbished tutorials

Revamped tutorial with new textures and colors

We added two new tutorials: Essentials: Build cities with Get Map Data covers topics such as Get Map Data, street networks, and terrain editing; and Tutorial 22: Dynamic imports shows a new way to use instances of imported rulesets.

Furthermore, we updated the tutorials Tutorial 6: Basic shape grammar and Tutorial 15: Publish web scenes.

In this topic