Posts

Showing posts with the label CGA Rules

[065] How to Insert External 3D Objects in CityEngine

Image
Understanding importing and scaling external 3D assets in Esri CityEngine using the CGA i() insert command. This tutorial covers the fundamental syntax and behavior of the CGA i() command in CityEngine, explaining how imported 3D models adapt to point, line, face, and volume scope dimensions across procedural modeling workflows. I am posting this briefly as I have a bit of time during my schedule. I planned to work on CGA coding while looking at building photos, but I realized I missed one critical command. The elements that make up a building—walls, windows, doors, window frames, fences, surrounding ornaments, water tanks, air conditioner outdoor units, signboards, landscape trees, and so on—are far too numerous to list. Implementing all of these directly in CGA??? While not impossible, there is certainly no need to do so. We must use an effective method. Among the various elements of a building, if a component is al...

[064] How to Transform UV Coordinates in CityEngine CGA

Image
Understanding UV transformations in Esri CityEngine to rotate, scale, translate, tile, and delete texture mapping coordinates using CGA rules. This tutorial covers essential UV manipulation commands in CityEngine CGA, including rotateUV, scaleUV, translateUV, normalizeUV, tileUV, and deleteUV, enabling precise texture placement and alignment on 3D procedural geometries. This is the final lesson on texture control. Today, we will learn about commands to control texture rotation, scale, position, and more after applying textures using projectUV() . You might wonder why separate commands exist when size or position can be configured in setupProjection() . However, strictly speaking, the commands used here are not applied directly to the texture itself, but rather to the UV coordinates of the texture. They transform the UV coordinates assigned to the texture. When we generally perform modeling in 3D programs, the ...

[041] How to Precisely Target Faces Using comp.index in CityEngine CGA

Image
Learn how to find and use the comp.index value via the Inspector panel to precisely target and apply rules to individual faces. In procedural modeling, selecting a specific face among hundreds can be challenging with general orientation-based selectors. This tutorial demonstrates how to identify the unique index of a component and utilize it within conditional CGA rules for absolute precision in your 3D urban designs. I previously covered split.index, but as I began creating more complex forms, I realized that comp.index deserved its own explanation, so I’ll briefly cover it here. Why Traditional Selectors Are Sometimes Not Enough As you proceed with rules, the number of faces increases. To pinpoint and select a specific face, you need to use a combination of various selectors. However, selectors such as front selectors, object coordinate selectors, and world coordinate selectors operate within specific spatial conditions ...

[039] Procedural Modeling Practice in Esri CityEngine: Split, Comp, and Extrude

Image
Combine split, comp, and extrude commands to reinforce core CGA concepts through a practical exercise. This tutorial provides a hands-on exercise to practice the core procedural modeling commands in Esri CityEngine. By constructing a specific architectural form step-by-step, you will learn how local coordinate systems shift during extrusion and how to use the Model Hierarchy to track your progress accurately. We have concluded our basic lessons on the split command in the previous sessions. The initial shape for this exercise is a rectangle 30m wide and 10m deep. The bottom edge is designated as the first edge. img 1 : Initial 30m x 10m rectangle We will now tackle the challenge of creating the shape shown below using CGA code. Since we haven't covered scale, translations, or coloring yet, we will focus purely on completing the form. img 2 : CityEngine comp and split practice form Tar...

[034] Using Comp Selectors to Target Specific Faces in CityEngine

Image
Learn to target specific geometry components by defining precise selection conditions in CGA. In this lesson, we transition from component types to selectors within the CityEngine comp command. Selectors act as filters that determine which specific parts of a 3D model (like the front facade, side walls, or roof) are affected by your rules. We will explore the 'all' and 'side' selectors, as well as directional selectors based on coordinate systems. In the last session, we learned about components (v, e, fe, f) and operators ( : , ~ ). From today, we will start looking into selectors. If a component defines the resulting geometry type (point, edge, or face), a selector defines the condition used to filter it. The components that meet the conditions presented by the selector are derived. There are quite a large number of selectors for the comp command. img 1 : https://doc.arcgis.com/en/city...

[014] How to Use First Edge & Street Edge Attributes in Esri CityEngine

Image
Learn how to define shape edges and control procedural building orientations using street attributes. In Esri CityEngine, First Edge and Street Edge attributes are essential for procedural modeling workflows because they define how buildings interact with surrounding streets. In this tutorial, we will explore the core concepts of the Shapes Menu in Esri CityEngine. You will learn how to configure First Edges and Street Edges, which are essential for aligning procedural buildings to street networks and generating highly realistic Digital Twins. The following short demonstration shows how First Edge orientation can be manually changed inside Esri CityEngine using the Set First Edge tool. Video Demonstration: Changing the First Edge orientation manually inside Esri CityEngine using the Set First Edge tool. Introduction to the CityEngine Shapes Menu Shapes are arguably the most important element in City...