User Interface

This page gives a quick overview of the user interface of the CityEngine. On the one hand the main types of windows are described, and on the other hand basic functionalities like project management and navigation are shortly explained.

The CityEngine Main Window

The user interface revolves around a main window, which consists of several sub-window components. The screenshot below shows a typical CityEngine modeling session.

The CityEngine User Interface with a scene opened.1: Navigator with preview; 2: Scene Editor; 3: CGA rule editor; 4: Viewport;
5: Second Viewport; 6: Inspector; 7: Console; 8: Log for Errors

Individual sub-windows can be opened in the menu Window. Each window can have multiple tabs, which can be freely arranged via drag'n'drop. By dragging a tab into the corresponding half of another window, the tab becomes a single window. Most windows (except the editors) can also be detached. The window layout configuration (a "perspective") can be stored and loaded via Window → Layout → .... For example for grammar editing we recommend the corresponding default perspective.

In the following the different sub-window types and their main functions are described.


The Navigator represents the workspace which is used for project and scene management. Hence the window shows the projects in or linked into the workspace. A new CityEngine project can be created via File → New → CityEngine → CityEngine Project → ....

A standard CityEngine project consists of the following folders:

Besides project management, other main functions done in this window are the opening of a scene via double-click, assigning CGA shape grammar rules to the selection via corresponding right-mouse-button, investigating assets via left-click (they appear in the Inspector window then), or refreshing folders via F5 (useful when assets are modified or for collaborative working environments i.e. a project is shared on the network and rules, scenes etc. have been added/modified).

In addition, the file navigator can inspect selected files. In the case of CGA rule files, the functions and rules are listed. Clicking on entries in the CGA file inspector will let CGA Shape Editor scroll to the corresponding entry in the rule file. Hence the file navigator inspector is a powerful tool to navigate in a rule file.

Scene Editor

This window is the central place where you manage your scene. A CityEngine scene is organized in layers.

The Scene Editor with different layer types.

The layers tree allows you to navigate, delete or duplicate the layers and its objects as well as control the visibility of objects in the tree through the search field. The visibility of each layer in the viewport can be toggled by clicking on the "eye" symbol left to the layer name.

In the case where building lots or mass models have been already modeled with an external program, these can be imported as shape layers. First, you have to convert your shapes into a grouped obj file (each group corresponds one shape). Afterwards copy it into the data folder of your project and import it via File → Import → CityEngine Layers → OBJ Import → ... or via right-mouse-button on the .obj file in the Navigator. Afterwards, CGA rules can be applied in the typical way on these imported meshes.

CGA rule editor

By double clicking on a .cga file in the Navigator window, the corresponding file is opened in the CGA rule editor. Another possibility to open a .cga file for editing is to click on Rule File in the Inspector window if the selected object already has a rule file assigned. The typical efficient workflow with the CGA rule editor is:

  1. Assign a rule to the selected objects either via the RMB-menu on the rule file in the Navigator, or via RMB-menu in the Viewport, or via Shapes → Assign Rule File .... In the latter two cases the rule has to be selected in the opened dialog.
  2. Open the rule file in the CGA rule editor and edit the rules.
  3. Press Ctrl-s for saving the rule file.
  4. Press Ctrl-g for (re-)generating the model.

The CGA rule editor has syntax highlighting and shows syntax errors (the latter are described in more detail in the CGA Problems window where you can double click on each entry). Furthermore, during typing, command completion can be invoked via Ctrl-Space.


The Viewport is the main view to interact with the 3D scene. As many Viewport windows can be opened as required by the user (usually with other cameras or a different render mode). The 3D scene can be rendered as wireframe, shaded, with textures and/or lighted. The default navigation works as follows:

As a consequence, the typical navigation works by selecting an object via LMB or via drag-LMB and then pressing f to frame the camera. Afterwards the selection can be explored via tumble, track and dolly.

Other practical functions include the isolation of the selection (toggle it via short-key i), framing all content (via short-key a), superimposing an information display (toggle via short-key d followed by another d). or the bookmarks which store camera positions. New bookmarks can be simply created by clicking on the bookmark icon.

Furthermore, in the corresponding drop-down icons of the Viewport, zooming (changing the focal length) can be done either via camera preferences or the by setting the focal length directly to one of the presets.

Note: The CityEngine preferences (Edit → Preferences → General → Navigation Devices → Mouse) allow you change the mouse navigation schemes according to the schemes of other 3D applications. Linux users might want to change the modifier key mapping for navigation to CTRL since some window managers catch the ALT key.


The "Inspector" is the main tool for viewing and modifying CityEngine objects. Depending on the type of object selected, the inspector adapts its user interface to provide full access to the object's attributes. The inspector is invoked via Window→Inspector in the main-menu, or by pressing ALT+I.

For CityEngine layer objects such as shapes, the inspector shows all attributes and parameters of the object. If the object is associated with a rule file, the rule file is parsed and all rule parameters are available for modification.

Shape inspector showing the relevant attributes and parameters.

The start rule where generation will start can be entered in the "Start Rule" field. If this value does not match any rule in the rules file, no generation will take place.

The inspector not only supports editing of single objects but also a collection of objects. Attributes that are unique across all objects are shown as-is. If some attribute has different values in the object collection, the attribute is marked as non-unique with the ? sign. Regardless of the uniqueness of attribute values, changing a value will apply this value to all objects in the collection. This allows for easy editing of large collection of objects.

In addition, the inspector automatically groups object collections by type so that even for heterogeneous collection multi-edit is possible.

Copyright ©2008-2016 Esri R&D Center Zurich. All rights reserved.