CGA Editor

CGA (Computer Graphic Architecture) is the unique programming language for ArcGIS CityEngine that you can specify to generate 3D content for urban planning. Use the CGA Editor windows to create and modify CGA rules that are applied to shapes to create 3D geometry and architecture.

CGA Editor

In the CGA Editor window CGA Editor, you can write, modify, and save CGA rules. To edit a CGA rule, do the following:

  1. Open the CGA rule file.
    • Double-click the rule file in the Navigator window Navigator.
    • Click Rule File in the Inspector window Inspector if the selected object has a rule file assigned to it.
  2. Make necessary edits.
  3. Press Ctrl+S to save the CGA rule file or click File > Save in the main menu.
  • The CGA Editor window CGA Editor has syntax highlighting for better readability of the code.
  • The CGA Editor window CGA Editor detects syntax errors and highlights them with a white X on a red background. Click Window > Show Problems in the main menu for a list of syntax errors.
  • Press Ctrl+Spacebar when typing to complete a command.

Manage rule errors and warnings

Rule file with syntax error
A rule file with a syntax error is shown.

The syntax error in the CGA code is detected automatically and marked red.


The position of an error is indicated by a small red box next to the scrollbar on the right. More detailed information about the error can be found in the Problems window Problems or by hovering over the red indicators or error markers in the CGA Editor window CGA Editor.

Errors must be resolved before applying the rules. It is not possible to generate models if the assigned rule file contains errors.

The CGA Editor window CGA Editor also issues warnings:

Rule file not defined
An undefined rule file warning is shown.

In this case, the rule NewRule is not defined. This is not necessarily a problem. Warnings indicate potential problems but still allow generation.

Problems view

You can open the Problems window Problems using Window > Show Problems. On top of Rule Errors (static compile errors), the Problems window Problems also shows Model Errors (dynamic runtime errors), in other words, problems encountered during generation of a model. Such errors and warnings depend on the rule as well as on the initial shape (in other words, its geometry and attributes such as the seed, and so on). The Problems view allows you to find and resolve such problems. In the example below, a number of buildings were generated and an "asset not found" error was returned.

Model error
A model error is shown.

To find the according model or shape, double-click the error, and the model plus shape will be selected and framed. The picture below shows the initial shape and the generated model in which the generation resulted in the "asset not found" error.

Asset not found error
An asset not found error is shown.


The Problems window Problems can be configured according to your taste and needs. Here are the recommended settings:

  • Right-click in the Problems window Problems and select Group By > Type to group the errors by their type (in other words, separate Rule Errors and Model Errors):
  • Click Location to sort the errors by Location (in other words, by their initial shape).
  • Right-click and select Configure Contents.
    • Deselect Use item limits to disable the default limit of 100 markers.

Code completion

The CGA Editor window CGA Editor features automatic code completion. At any position in the CGA code, you can press Ctrl+Spacebar and a pop-up appears with a suggestions that match the current context. Use the cursor keys or the mouse to choose one.

Keyboard shortcuts

Keyboard shortcuts for working with the CGA Editor window CGA Editor include the following:

  • Ctrl+S—Save the file (changes must be saved before generation; files with changes are marked with an asterisk (*) on the tab).
  • Ctrl+G—Generate (the selected objects, in other words, shapes or models).
  • Ctrl+F5—Re-generate all models.
  • Ctrl+F—Opens the Find / search-replace dialog box.
  • Ctrl+L —Opens the Go to line dialog box.
  • Ctrl+Shift+L—Shows all shortcuts.

These shortcuts only work if the CGA Editor window CGA Editor is the current view (in other words, its tab is highlighted).