杰瑞科技汇

CityEngine教程从哪开始学?入门到精通怎么学?

CityEngine 教程:从入门到精通

CityEngine 是 Esri 公司开发的一款专业三维建模软件,它最核心的优势在于程序化建模,这意味着你可以通过编写规则来生成和编辑城市,而不是像传统建模软件那样一个一个地去创建建筑,这使得它尤其适合快速生成大规模、风格统一且可修改的城市景观。

CityEngine教程从哪开始学?入门到精通怎么学?-图1
(图片来源网络,侵删)

第一部分:入门准备与核心概念

在开始建模之前,理解 CityEngine 的核心思想至关重要。

核心概念:规则驱动

  • 规则: 这是 CityEngine 的灵魂,一个规则本质上是脚本的集合(通常使用 CGA Shape Grammar 语言编写),它定义了如何将一个简单的二维图形(如地块、线)转换成一个复杂的三维模型。
  • 工作流:
    1. 输入数据: 通常为二维数据,如 Esri Shapefile (.shp)、OpenStreetMap (OSM) 数据、CAD 文件等,这些数据定义了城市的基本骨架,如地块、道路、建筑轮廓等。
    2. 应用规则: 将你编写的规则或 Esri 提供的预设规则应用到输入数据上。
    3. 生成模型: CityEngine 会自动解析规则,并批量生成三维模型。
    4. 迭代优化: 修改规则参数,重新生成模型,快速迭代设计。

界面概览

熟悉主界面是第一步,CityEngine 的主要窗口包括:

  • 3D 视图: 显示和交互三维模型。
  • 2D 视图: 用于编辑和查看二维数据(如地块)。
  • 规则编辑器: 编写和调试 CGA 代码的核心区域。
  • 图层管理器: 管理场景中的所有图层(数据、规则、模型等)。
  • 属性检查器: 查看和修改选中对象(如一个地块、一个建筑)的属性。

第二部分:官方学习资源(首选)

Esri 提供了世界一流的学习资源,这是学习 CityEngine 最权威、最系统的途径。

Esri 官方教程

这是必须走一遍的路径,尤其是新手,它以项目为导向,手把手教你完成一个完整的城市生成项目。

CityEngine教程从哪开始学?入门到精通怎么学?-图2
(图片来源网络,侵删)
  • 路径: 打开 CityEngine -> Help -> Tutorials
  • 核心教程列表:
    1. Getting Started with Esri CityEngine (入门教程): 介绍基本界面和简单的工作流。
    2. Creating a City (创建城市): 这是最重要的教程! 你将学习如何:
      • 导入地块数据。
      • 应用预设的建筑规则。
      • 调整规则参数来改变建筑风格。
      • 生成街道和道路。
      • 导出模型。
    3. Creating a Street Scene (创建街道场景): 更深入地学习街道、人行道、路灯等元素的生成。
    4. Introduction to CGA (CGA 入门): 学习编写自己的简单规则,理解 CGA 的基本语法。
    5. Creating a Custom Rule (创建自定义规则): 从零开始创建一个建筑规则。

Esri Learn (在线课程)

官方的在线学习平台,提供更灵活、模块化的课程。

官方文档与范例

  • CityEngine Help: Help -> CityEngine Help,这是最全面的参考手册,包含了所有功能的详细说明和 CGA 语法参考。
  • CityEngine Examples: 安装目录下的 samples 文件夹,包含了大量高质量的范例场景和规则文件。强烈建议仔细研究这些范例! 你可以直接打开它们,查看规则代码,理解作者是如何实现复杂效果的。

第三部分:学习路径建议

基础入门 (1-2 周)

  1. 完成官方入门教程: 严格按照 Help -> Tutorials 中的 Creating a City 教程,完整地做一遍,不要跳步,确保每个操作都理解。
  2. 熟悉界面: 知道如何在不同视图间切换,如何使用导航工具(平移、缩放、旋转),如何选择和编辑对象。
  3. 理解基本工作流: 明确“数据 -> 规则 -> 生成”这个核心流程。

规则初探 (2-4 周)

  1. 学习 CGA 基础语法: 阅读 CityEngine Help 中的 CGA 部分,或者完成 Introduction to CGA 教程,重点理解:
    • Attr: 定义属性(如高度、层数)。
    • Lot: 处理地块,分割和操作形状。
    • Shape: 处理几何体,拉伸、挤压、开窗等。
    • Scope: 获取当前生成对象的上下文信息。
  2. 修改预设规则: 找到官方范例中的建筑规则,尝试修改其中的参数(如 BuildingHeightRoofHeight),然后重新生成,观察变化,这是理解规则如何工作的最快方式。
  3. 编写简单规则: 尝试写一个最简单的规则,比如一个长方体,然后给它加上一个屋顶。

项目实践 (1-2 个月)

  1. 获取自己的数据: 找到你所在城市或感兴趣区域的 OpenStreetMap 数据,或者使用 Esri 提供的示例数据。
  2. 搭建完整项目: 尝试从头到尾创建一个项目:导入数据 -> 清理数据 -> 应用规则 -> 生成场景 -> 调整细节 -> 导出模型。
  3. 深入学习范例: 打开 samples 文件夹下的复杂范例(如 BerlinParis),逐行分析它们的规则代码,学习如何实现复杂的建筑细节、街道纹理和城市布局。

高级技巧与精通

  1. 编写复杂规则: 学习如何使用函数、条件判断、随机性等高级 CGA 特性来创建更逼真、更多样化的模型。
  2. 纹理与贴图: 学习如何使用纹理贴图、法线贴图来增加模型的细节和真实感。
  3. Python 脚本: 学习使用 Python 与 CityEngine 交互,实现自动化任务,如批量处理数据、自定义工具等。
  4. 与其他软件集成: 学习如何将 CityEngine 生成的模型导入到 ArcGIS Pro、Unreal Engine、Unity 或 3ds Max 中进行后期渲染和集成。

第四部分:实用技巧与资源

  • 快捷键: 熟练使用快捷键能极大提升效率。
    • F: 聚焦选中对象
    • Shift + F: 框选聚焦
    • L: 切换到线框模式
    • O: 切换到正交/透视视图
  • 调试规则:
    • 在规则编辑器中设置断点,可以一步步查看代码的执行过程。
    • 使用 print() 函数在 Console 窗口输出变量值,是调试最常用的方法。
  • 社区与论坛:

学习 CityEngine 的关键在于“实践”“思考规则”

  1. 从官方教程开始,打好基础。
  2. 不要害怕看代码,多分析范例。
  3. 动手做自己的项目,哪怕很小。
  4. 把规则看作是“设计说明书”,而不是“建模命令”。

祝你学习顺利,早日用 CityEngine 创造出属于自己的虚拟城市!

CityEngine教程从哪开始学?入门到精通怎么学?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇